Работа MySQL с экстремально большими таблицами Григорий Рубцов, SQLinfo.ru rgbeast@sqlinfo.ru.

Презентация:



Advertisements
Похожие презентации
1 Особенности работы MySQL 5.0 и перспективы развития СУБД Михаил Серов (1234ru), инструктор авторизованного учебного центра MySQL в Москве Григорий Рубцов.
Advertisements

Создание Web страниц Урок 12: PHP & MySQL Павел Бочаров.
1 Основы SQL: MySQL Будем использовать MySQL СУБД с открытым кодом Бесплатная версия (Community Edition) – на В Linux-дистрибутивах.
История развития языка SQL Structured Query Language ɛ skju ɛ l ɛ skju ɛ l или si:kwəlsi:kwəl DML (Data Manipulation Language) DDL (Data Definition Language)
CREATE TABLE Ident_table ( ID int IDENTITY(1, 1), some_values varchar(50)); IDENTITY [ ( seed, increment ) ]
Архитектура MySQL Cluster Григорий Рубцов MySQL AB / Sun Microsystems.
Администрирование и безопасность MySQL. Создание и удаление пользователей Под учетной записью пользователя MySQL подразумевается строка в таблице user.
Технические аспекты проекта в ТД «Копейка» Наталья Яковлева консультант по программным продуктам Oracle Центра технической поддержки Компании РДТЕХ.
Лекция 3 Домены Ограничения на значения столбцов Создание, изменение и удаление таблиц Ключи и ссылочная целостность Защита таблиц.
Реляционные базы данных N-арное отношение – подмножество декартова произведения N множеств возможных значений (доменов, типов данных, атрибутов) Изображение.
1 TRANSACT-SQL. Лекция 3. © Куркурин Николай Дмитриевич. (906) Microsoft SQL Server 2000.
БАЗЫ ДАННЫХ ЛЕКЦИЯ 12. тема: ОСНОВЫ ЯЗЫКА SQL Общие сведения SQL структурированный язык запросов (Structured Query Language)
Бланк запроса. Создание списка специальностей Вид при конструирования запросов.
Создание таблицы CREATE TABLE имя_таблицы (имя_столбца тип_данных [NULL | NOT NULL ] [,...n])
Технология создания сценариев управляющих информационных систем Тема 5.
Базы данных Проектирование базы данных Выполнил: Волкова Н.М. гр. С-55 Руководитель: Шурупов Д.В.
Основы SQL Запросы к базе данных. Что такое база данных SQL? SQL (Structured Query Language - «Структурированный язык запросов») - универсальный компьютерный.
1. СУБД MySQL 2. Язык обработки данных SQL. Сервер данных MySQL и его возможности MySQL это популярный сервер данных, применяемый при создании Web-сайтов.
Лекция 16 Лекция 16 Основы SQL. Описание отношений, доменов, ограничений целостности, представлений данных. Реализация операций реляционной алгебры в SQL.
1 Copyright 2006 MySQL AB The Worlds Most Popular Open Source Database Полнотекстовый поиск в MySQL 5.1 Новые возможности Александр Рубин Senior Consultant,
Транксрипт:

Работа MySQL с экстремально большими таблицами Григорий Рубцов, SQLinfo.ru

MySQL может работать с миллиардами записей в таблице Полезные алгоритмы: – пакетная вставка – построение индекса Григорий Рубцов,

CREATE TABLE `l18_45_1` ( `lev` tinyint(4) NOT NULL, `x` smallint(6) NOT NULL, `y` smallint(6) NOT NULL, `t` smallint(6) NOT NULL, `i` tinyint(3) unsigned NOT NULL, `e` smallint(5) unsigned NOT NULL, `c` smallint(6) NOT NULL ) ENGINE=MyISAM; Григорий Рубцов,

В csv-файле 2.8 млрд. строк (81 Gb) mysql> LOAD DATA LOCAL INFILE 'l18_45_1.csv' INTO TABLE `l18_45_1`; Query OK, rows affected (48 min sec) Records: Deleted:0 Skipped:0 Warnings:0 mysql> ALTER TABLE `l18_45_1` ADD KEY (lev,x,y); Query OK, rows affected (2 hours 52 min) Records: Duplicates:0 Warnings:0 Григорий Рубцов,

Cоздание индекса требует свободного места в tmpdir, иначе будет использован неэффективный алгоритмRepair with keycache ALTER TABLE сначала копирует всю таблицу во временную; Григорий Рубцов,

mysql> SELECT t,i,e,c FROM l18_45_1 WHERE lev=7 AND x=1211 AND y=-19; | t | i | e | c | | 4999 | 1 | 3193 | | | 5097 | 1 | 2839 | | | 5015 | 1 | 3681 | | | 5021 | 1 | 3283 | 9422 | | 5023 | 1 | 3836 | | | 4991 | 1 | 4033 | | rows in set (0.11 sec) Григорий Рубцов,

Число строкВремя загрузки Построение индекса Выборка по индексу 0.03x мин0.8 мин0.01 сек 0.31x мин10.1 мин0.07 сек 2.85x мин172.0 мин0.15 сек Григорий Рубцов,

Большие таблицы работают Построение индексов масштабируется как O(N 1.2 ), что недалеко от оптимального O(N log N) Использование PARTITIONING улучшает масштабируемость Григорий Рубцов,