Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемДанила Петюшкин
1 Работа MySQL с экстремально большими таблицами Григорий Рубцов, SQLinfo.ru
2 MySQL может работать с миллиардами записей в таблице Полезные алгоритмы: – пакетная вставка – построение индекса Григорий Рубцов,
3 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; Григорий Рубцов,
4 В 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 Григорий Рубцов,
5 Cоздание индекса требует свободного места в tmpdir, иначе будет использован неэффективный алгоритмRepair with keycache ALTER TABLE сначала копирует всю таблицу во временную; Григорий Рубцов,
6 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) Григорий Рубцов,
7 Число строкВремя загрузки Построение индекса Выборка по индексу 0.03x мин0.8 мин0.01 сек 0.31x мин10.1 мин0.07 сек 2.85x мин172.0 мин0.15 сек Григорий Рубцов,
8 Большие таблицы работают Построение индексов масштабируется как O(N 1.2 ), что недалеко от оптимального O(N log N) Использование PARTITIONING улучшает масштабируемость Григорий Рубцов,
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.