SlideShare uma empresa Scribd logo
1 de 78
Baixar para ler offline
© 2017 Percona1
Света Смирнова, ведущий инженер технической поддержки (Percona)
Анастасия Распопина, специалист по маркетингу (Percona)
MySQL:
чек-лист для новичка в highload
Кейсы, списки настроек, must have, полезные ссылки
Профессиональный фестиваль «Российские интернет-технологии» (РИТ++),
конференция HighLoad Junior
5 июня 2017 г.
© 2017 Percona2
Кто мы и откуда?
Кратко о нас и нашей компании
▪Света Смирнова
• Ведущий инженер службы технической поддержки
• 10+ лет работы в поддержке MySQL, автор книги “MySQL Troubleshooting” и
UDF-функций для MySQL (дизайн-прототип встроенных JSON-функций).
© 2017 Percona3
Кто мы и откуда?
Кратко о нас и нашей компании
▪Света Смирнова
▪Анастасия Распопина
• Специалист по маркетингу
• Работала в GameDev, организовывала HL++, РИТ++, сейчас в Percona Events
Team.
© 2017 Percona4
Кто мы и откуда?
Кратко о нас и нашей компании
▪Света Смирнова, ведущий инженер службы технической
поддержки
▪Анастасия Распопина, специалист по маркетингу
▪Компания Percona
• Поставщик 100% Open Source ПО для MySQL и MongoDB, а также услуг
поддержки, консалтинга и удалённого администрирования для этих
СУБД
© 2017 Percona5
Что такое highload сейчас?
Даём определение высокой нагрузке на 2017 г.
▪Не цифры: предельные нагрузки
• Сколько записей в секунду выдержит диск?
• Запросов на чтение?
• Пользовательских соединений?
© 2017 Percona6
Что такое highload сейчас?
Даём определение высокой нагрузке на 2017 г.
▪Не цифры: предельные нагрузки
▪Железо имеет значение
• t2.micro или “Машины Баз Данных” (WS, 6 июня, 16.00)
• Много читаем: память
• Много пишем: быстрый диск
• Много активных соединений: CPU
• Неоптимизированные запросы: CPU
© 2017 Percona7
Что такое highload сейчас?
Даём определение высокой нагрузке на 2017 г.
▪Не цифры: предельные нагрузки
▪Железо имеет значение
▪Цифры
• Стандартные бенчмарки всегда синтетические
• Реальность обычно разнообразнее
© 2017 Percona8
Что такое highload сейчас?
Цифры: рост производительности MySQL
https://www.slideshare.net/geirhoydalsvik/whats-new-in-mysql-57
© 2017 Percona9
Что такое highload сейчас?
Цифры: рост интернета
© 2017 Percona10
Что такое highload сейчас?
Даём определение высокой нагрузке на 2017 г.
▪Highload
• Та нагрузка, с которой СУБД не справляется
• Нельзя раз и навсегда оптимизироваться «под highload», это
непрерывный процесс
© 2017 Percona11
Обзор форков MySQL
Oracle MySQL, Percona Server для MySQL, MariaDB,
форки внутри компаний
© 2017 Percona12
Современные варианты MySQL
Какие форки MySQL выжили и активно развиваются?
▪MySQL от Oracle
• Оригинальный MySQL, над которым работают инженеры Oracle
• “Сотни человек” (https://www.percona.com/blog/2014/02/18/oracles-morgan-tocker-opens-up-about-mysql-development-mysql-5-7/)
© 2017 Percona13
Современные варианты MySQL
Какие форки MySQL выжили и активно развиваются?
▪MySQL от Oracle
▪Percona Server для MySQL
• Полностью совместимая расширенная версия
• Около 30 человек (Engineering Team)
© 2017 Percona14
Современные варианты MySQL
Какие форки MySQL выжили и активно развиваются?
▪MySQL от Oracle
▪Percona Server для MySQL
▪MariaDB
• Частично совместимая расширенная версия
• Свои: оптимизатор запросов, GTID, движки, ...
© 2017 Percona15
Современные варианты MySQL
Какие форки выжили и активно развиваются?
▪MySQL от Oracle
▪Percona Server для MySQL
▪MariaDB
▪Форки компаний – открытые и закрытые
• Facebook: MyRocks, DocStore, статистика, производительность
• Alibaba: Sequence, Backup, SQL, статистика, производительность
• Amazon (Amazon Aurora): физическая репликация, производительность,
масштабирование, закрытая
© 2017 Percona16
Где что загрузить: ссылки
▪MySQL от Oracle
• Документация: https://dev.mysql.com/doc/refman/5.7/en/
• Полный список фич для 5.7: http://www.thecompletelistoffeatures.com/
© 2017 Percona17
Где что загрузить: ссылки
▪MySQL от Oracle
▪Percona Server для MySQL
• Документация: https://www.percona.com/doc/percona-server/LATEST/index.html
• Percona Database Performance Blog: http://percona.com/blog/
© 2017 Percona18
Где что загрузить: ссылки
▪MySQL от Oracle
▪Percona Server для MySQL
▪MariaDB
• Документация: https://mariadb.com/kb/en/
• Foundation: http://mariadb.org/
© 2017 Percona19
Где что загрузить: ссылки
▪MySQL от Oracle
▪Percona Server для MySQL
▪MariaDB
▪Открытые разработки Facebook
• Документация: https://github.com/facebook/mysql-5.6/wiki
• 8.0: https://github.com/facebook/mysql-8.0
© 2017 Percona20
Где что загрузить: ссылки
▪MySQL от Oracle
▪Percona Server для MySQL
▪MariaDB
▪Открытые разработки Facebook
▪AliSQL
• https://github.com/alibaba/AliSQL
© 2017 Percona21
Что стоит хранить в памяти,
а что – на диске?
© 2017 Percona22
MySQL: что мы храним в памяти
▪Три вида буферов в памяти
• Глобальные
▪ InnoDB Buffer Pool: активный набор данных
▪ Query Cache (http://mysqlserverteam.com/mysql-8-0-retiring-support-for-the-query-cache/)
• Сессионные
▪ Sort buffer: маленькие!
▪ Всего не более, чем (Свободная память - глобальные) / max_connections
• Под операцию
▪ Временные таблицы: может быть создано много!
© 2017 Percona23
MySQL: что мы храним на диске
▪MySQL лучше всего работает с данными в памяти
▪Для лучшей скорости
• Быстрые диски: SSD, Fusion IO
• innodb_io_capacity - рекомендуемое, реальное количество IOPS
• innodb_flush_method - O_DIRECT, тестируйте!
▪Скорость или надёжность?
• Операция fsync - дорогая
• Реже fsync - лучше производительность и ниже надёжность
© 2017 Percona24
Почитать про память и диск
▪Оптимизация IO для InnoDB
• https://dev.mysql.com/doc/refman/5.7/en/innodb-disk-management.html
• https://www.percona.com/blog/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/
▪Оптимальный размер InnoDB Buffer Pool
• https://www.percona.com/blog/2007/11/03/choosing-innodb_buffer_pool_size/
© 2017 Percona25
Как правильно кэшировать?
© 2017 Percona26
Кэширование в МySQL
▪Полезное кэширование: сервер
• binlog_[stmt_]cache_size
• table_definition_cache
• table_open_cache
• table_open_cache_instances - много не всегда хорошо
• thread_cache_size
© 2017 Percona27
Кэширование в МySQL
▪Полезное кэширование: сервер
▪Полезное кэширование: InnoDB
• Buffer Pool: innodb_buffer_pool_size
• Log buffer: innodb_log_buffer_size
© 2017 Percona28
Кэширование в МySQL
▪Полезное кэширование: сервер
▪Полезное кэширование: InnoDB
▪Чем плоха Query Cache
• Один mutex
• Знаменитые баги
▪ Bug #21074: Large query_cache freezes mysql server sporadically under heavy load
▪ Bug #47529: query cache performance is bad on multi-core servers
▪ Bug #37844: Fix SMP performance for the query cache
▪ Bug #60696: invalidating query cache entries (table) hangs replication
© 2017 Percona29
Почитать про кэширование
https://dom.as/tech/query-cache-tuner/
© 2017 Percona30
Кластеризация, шардинг, репликация –
когда и как?
© 2017 Percona31
Репликация в МySQL
▪Встроенная
▪Простая в использовании
▪Требует настройки
▪Гибкая
© 2017 Percona32
Рекомендуемая репликация
© 2017 Percona33
Репликация: highload
▪Мастер
• Синхронизация
▪ sync_binlog
• 0 - самый быстрый
• 1 - самый надёжный
• >1 - компромисс между надёжностью и скоростью
▪Слейв
• Меньше потоков, чем на мастере
• Один relay log на channel
© 2017 Percona34
Круговая
© 2017 Percona35
Круговая репликация: highload
▪Те же проблемы, что и на “рекомендуемой”
▪Умножайте на 2 для каждого сервера
© 2017 Percona36
Креативная
© 2017 Percona37
Креативная: highload
© 2017 Percona38
Кластеризация в МySQL
▪NDB Cluster
• Старейшее кластерное решение
• Рабочий набор данных в памяти
• Как минимум две копии данных
• Специфические требования к приложению
• Популярен среди европейских телекомов
© 2017 Percona39
Кластеризация в МySQL
▪NDB Cluster
▪Percona XtraDB Cluster, Galera Cluster
• Синхронная репликация
• Собственный лог изменений
▪ innodb_flush_log_at_trx_commit=2 - безопасно и рекомендуется!
• Чтение: масштабируемое
• Запись: чем больше серверов в кластере, тем медленнее
© 2017 Percona40
Percona XtraDB Cluster
© 2017 Percona41
Кластеризация в МySQL
▪NDB Cluster
▪Percona XtraDB Cluster, Galera
▪InnoDB Cluster
• Архитектурно то же самое, что и Percona XtraDB Cluster/Galera
• Синхронная репликация
• Использует бинарный лог
• Чтение: масштабируемое
• Запись: чем больше серверов в кластере, тем медленнее
• Новый продукт
© 2017 Percona42
Шардинг в МySQL
▪Встроенного не существует
© 2017 Percona43
Шардинг в МySQL
▪Встроенного не существует
▪Shard Query
• Независимый продукт на PHP и Gearman
• https://github.com/greenlion/swanhart-tools/wiki/Shard-Query-Manual
© 2017 Percona44
Шардинг в МySQL
▪Встроенного не существует
▪Shard Query
▪MySQL Fabric
• Продукт от Oracle
• Новый и, похоже, неподдерживаемый
• https://dev.mysql.com/doc/mysql-utilities/1.5/en/fabric.htm
© 2017 Percona45
Шардинг в МySQL
▪Встроенного не существует
▪Shard Query
▪MySQL Fabric
▪ProxySQL
• Больше, чем шардинг
• Proxy, query rewrite, кэширование
• Стремительно набирает популярность
• https://www.percona.com/blog/2016/08/30/mysql-sharding-with-proxysql/
© 2017 Percona46
Полезные ссылки
▪To Shard or Not to Shard (Peter Zaitsev, CEO, Percona) - in English
• https://www.youtube.com/watch?v=2MyyH-bH8Bw
▪Презентация о сценариях использования ProxySQL от его
разработчиков (на английском языке):
• http:/bit.ly/2qHmR4A
© 2017 Percona47
Какие индексы нужны MySQL?
© 2017 Percona48
Индексы MySQL и highload
На что влияют неуникальные ключи
▪SELECT
• Правильные улучшают скорость выполнения
• Если слишком много подходящих
▪ Оптимизатор может дольше “думать” над планом
© 2017 Percona49
Индексы MySQL и highload
На что влияют неуникальные ключи
▪SELECT
▪INSERT
• Замедляют запись
• Требуется обновление не только данных, но и индекса
© 2017 Percona50
Индексы MySQL и highload
На что влияют неуникальные ключи
▪SELECT
▪INSERT
▪UPDATE/DELETE
• Замедляют запись
• Правильные ускоряют поиск строк, удовлетворяющих WHERE
© 2017 Percona51
Индексы MySQL и highload
На что влияют неуникальные ключи
▪SELECT
▪INSERT
▪UPDATE/DELETE
▪Внешние ключи
• При доступе к одной таблице строка в дочерней/родительской будет
заблокирована
© 2017 Percona52
Индексы MySQL и highload
На что влияют неуникальные ключи
▪SELECT
▪INSERT
▪UPDATE/DELETE
▪Внешние ключи
▪Полнотекстовые индексы
• Поддерживаются с первых версий, InnoDB - 5.6+
• Для простых сценариев
• У специализированного ПО больше возможностей
© 2017 Percona53
Что посмотреть про индексы
▪Мастер-класс "Работа с индексами: лучшие практики MySQL"
(Пётр Зайцев, CEO, Percona)
• https://www.youtube.com/watch?v=39e1vAGD3hg
▪MySQL 5.6 Full Text Search Throwdown
• https://www.percona.com/resources/mysql-webinars/mysql-56-full-text-search-throwdown
© 2017 Percona54
Как работать с медленными запросами
MySQL?
Байка: нельзя оптимизировать запросы раз и навсегда
© 2017 Percona55
Анализируем медленные запросы
▪Где найти
• Slow query log
▪ pt-query-digest
© 2017 Percona56
Анализируем медленные запросы
▪Где найти
• Slow query log
• Performance Schema events_statements_*
▪ CREATED TMP DISK TABLES
▪ CREATED TMP TABLES
▪ SELECT FULL JOIN
▪ SELECT RANGE CHECK
▪ SELECT SCAN
▪ SORT MERGE PASSES
▪ SORT SCAN
© 2017 Percona57
Анализируем медленные запросы
▪Где найти
• Slow query log
• Performance Schema events_statements_*
• sys schema
▪ statement analysis
▪ statements with full table scans
▪ statements with runtimes in 95th percentile
▪ statements with sorting
▪ statements with temp tables
▪ statements with errors or warnings
© 2017 Percona58
Анализируем медленные запросы
▪Где найти
• Slow query log
• Performance Schema events_statements_*
• sys schema
• PMM и другие графические инструменты
© 2017 Percona59
Query Analytics в PMM
© 2017 Percona60
Анализируем медленные запросы
▪Где найти
▪Как чинить
• EXPLAIN
• EXPLAIN FORMAT=JSON
• INFORMATION_SCHEMA.OPTIMIZER_TRACE
• Анализ использования индексов
• Статистика
▪ SHOW STATUS LIKE ‘Handler_%’
© 2017 Percona61
Что и где почитать
▪EXPLAIN: http://dev.mysql.com/doc/refman/5.7/en/explain.html
▪EXPLAIN FORMAT=JSON is Cool!
• https://www.percona.com/blog/2016/04/06/explain-format-json-wrap-up/
▪Optimizer Hints
• http://dev.mysql.com/doc/refman/5.7/en/optimizer-hints.html
▪PMM: https://pmmdemo.percona.com/
▪pt-query-digest
• https://www.percona.com/doc/percona-toolkit/LATEST/pt-query-digest.html
© 2017 Percona62
Как настроить MySQL под нагрузку?
Байка: про какие опции всегда забывают
© 2017 Percona63
Настраиваем MySQL для highload
▪table_open_cache, table_definition_cache
• Opened_tables, Opened_table_definitions не растёт
▪table_open_cache_instances
• Большое не нужно, обычно 2-4 достаточно
▪sort_buffer_size, сессионные буферы
• Маленький, можно увеличить для конкретной сессии
▪max_connections, max_allowed_packet
• Разумное
© 2017 Percona64
Настраиваем InnoDB для highload
▪innodb_buffer_pool_size
• Чтобы вмещал рабочий набор данных
▪innodb_log_file_size
• Как минимум: изменения за час
▪innodb_io_capacity
• Реальное количество IOPS
▪innodb_thread_concurrency
• Количество процессоров
▪innodb_flush_method
© 2017 Percona65
Что почитать про настройку
▪Опции MySQL
• http://dev.mysql.com/doc/refman/5.7/en/mysqld-option-tables.html
▪Опции Percona Server
• https://www.percona.com/doc/percona-server/5.7/ps-variables.html
▪Опции Galera Cluster
• https://mariadb.com/kb/en/mariadb/galera-cluster-system-variables/
▪Блог Дмитрия Кравчука
• http://dimitrik.free.fr/blog/
© 2017 Percona66
Как понять, что «тупит» не MySQL?
Байка: не ругай «плохой» MySQL – посмотри, что у тебя за машины
© 2017 Percona67
Что ещё может «тормозить»?
▪Другие приложения
• Выделенный сервер под базу
© 2017 Percona68
Что ещё может «тормозить»?
▪Другие приложения
▪Диск
• Network storage
▪ NFS: никогда
▪ SAN: с осторожностью
• Не гарантирует точного ответа, записались ли данные
• Тестируйте innodb_flush_method
• Переносите работу в память
• Жертвуйте надёжностью
• Покупайте лучшие
© 2017 Percona69
Что ещё может «тормозить»?
▪Другие приложения
▪Диск
▪CPU
• Агрессивные опции, отвечающие за параллельное выполнение
• Лимиты операционной системы
© 2017 Percona70
Что ещё может «тормозить»?
▪Другие приложения
▪Диск
▪CPU
▪И всегда проверяйте, даёт ли нагрузку приложение!
© 2017 Percona71
Что и где почитать по теме?
▪Linux Performance by Brendan Gregg
• http://brendangregg.com/linuxperf.html
© 2017 Percona72
Вопросы?
Отвечает Света Смирнова
© 2017 Percona73
P.S. Все материалы Percona о MySQL на
русском языке в открытом доступе
Собрала Анастасия Распопина
© 2017 Percona74
Что ещё посмотреть по MySQL?
▪Анализ производительности и оптимизация MySQL, Пётр Зайцев
(Percona) - HighLoad++ 2013
▪Архитектура приложений с использованием MySQL, Пётр Зайцев
(Percona) - HighLoad++ 2014
▪SSD для вашей базы данных, Пётр Зайцев (Percona) - HighLoad++
2014
© 2017 Percona75
Что ещё посмотреть по MySQL?
▪Troubleshooting MySQL Performance, Света Смирнова (Percona) -
LinuxPiter 2015
▪Ужимай и властвуй: алгоритмы компрессии в базах данных, Пётр
Зайцев (Percona) - HighLoad++ 2015
▪Практическая оптимизация MySQL: измерять, чтобы ускорять,
Пётр Зайцев (Percona) - HighLoad++ 2015
▪Обзор программных решений компании Percona, Пётр Зайцев
(Percona) - Технозавтрак 1С-Битрикс 2016
© 2017 Percona76
Что ещё посмотреть по MySQL?
▪Методы и инструменты повышения производительности
5.6 и 5.7 - Николай Ихалайнен (Percona) - Стачка 2016
▪ MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store, Пётр Зайцев
(Percona) - HighLoad++ 2016
▪MySQL® и MongoDB® - когда что лучше использовать? Пётр Зайцев
(Percona) - HighLoad++ 2016
▪Open Source SQL-базы данных вступили в эру млн. запросов в сек. /
Ф.Сигаев, С.Смирнова, А.Распопина - HighLoad++ 2016
© 2017 Percona77
Что ещё посмотреть по MySQL?
▪Pquery - открытый бесплатный инструмент тестирования
Percona, Алексей Бычко (Percona) - HighLoad++ 2016
▪Эффективная отладка репликации MySQL, Света Смирнова
(Percona) - HighLoad++ 2016
▪СПАСИБО!
DATABASE PERFORMANCE
MATTERS
Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters

Mais conteúdo relacionado

Mais procurados

Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Ontico
 
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)Ontico
 
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)Ontico
 
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)Ontico
 
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)Ontico
 
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...Ontico
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Ontico
 
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)Ontico
 
LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...
LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...
LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...Ontico
 
RTB DSP на языке Go укрощение buzzwords / Даниил Подольский (Qmobi.Com)
RTB DSP на языке Go укрощение buzzwords /  Даниил Подольский (Qmobi.Com)RTB DSP на языке Go укрощение buzzwords /  Даниил Подольский (Qmobi.Com)
RTB DSP на языке Go укрощение buzzwords / Даниил Подольский (Qmobi.Com)Ontico
 
Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)Ontico
 
Архитектура HAWQ / Алексей Грищенко (Pivotal)
Архитектура HAWQ / Алексей Грищенко (Pivotal)Архитектура HAWQ / Алексей Грищенко (Pivotal)
Архитектура HAWQ / Алексей Грищенко (Pivotal)Ontico
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Ontico
 
Безопасность Node.js / Илья Вербицкий (Независимый консультант)
Безопасность Node.js / Илья Вербицкий (Независимый консультант)Безопасность Node.js / Илья Вербицкий (Независимый консультант)
Безопасность Node.js / Илья Вербицкий (Независимый консультант)Ontico
 
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)Ontico
 
Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...
Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...
Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...Ontico
 
Мониторинг и отладка MySQL: максимум информации при минимальных потерях
Мониторинг и отладка MySQL: максимум информации при минимальных потеряхМониторинг и отладка MySQL: максимум информации при минимальных потерях
Мониторинг и отладка MySQL: максимум информации при минимальных потеряхSveta Smirnova
 
Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...
Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...
Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...Ontico
 
Javascript-фреймворки:
 должен остаться только один
Javascript-фреймворки:
 должен остаться только одинJavascript-фреймворки:
 должен остаться только один
Javascript-фреймворки:
 должен остаться только одинSergey Xek
 

Mais procurados (19)

Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...Как не положить тысячи серверов с помощью системы централизованного управлени...
Как не положить тысячи серверов с помощью системы централизованного управлени...
 
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
NodeJS в HighLoad проекте / Акрицкий Владимир (iAge Engineering)
 
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
NAS, Predictions, Preloading, Presudo-Isomorphism / Охрименко Алексей (Acronis)
 
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
Архитектура поиска в Booking.com / Иван Круглов (Booking.com)
 
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
smart balancing with nginx+lua / Андрей Кононов (IPONWEB)
 
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...
Хайлоад и безопасность в мире DevOps: совместимы ли? / Юрий Колесов (security...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
ТОП ошибок в инфраструктуре, мешающих высоким нагрузкам / Андрей Половов (Флант)
 
LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...
LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...
LuaJIT как основа для сервера приложений - проблемы и решения / Игорь Эрлих (...
 
RTB DSP на языке Go укрощение buzzwords / Даниил Подольский (Qmobi.Com)
RTB DSP на языке Go укрощение buzzwords /  Даниил Подольский (Qmobi.Com)RTB DSP на языке Go укрощение buzzwords /  Даниил Подольский (Qmobi.Com)
RTB DSP на языке Go укрощение buzzwords / Даниил Подольский (Qmobi.Com)
 
Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)Всему своё время / Роман Ивлиев (Банки.ру)
Всему своё время / Роман Ивлиев (Банки.ру)
 
Архитектура HAWQ / Алексей Грищенко (Pivotal)
Архитектура HAWQ / Алексей Грищенко (Pivotal)Архитектура HAWQ / Алексей Грищенко (Pivotal)
Архитектура HAWQ / Алексей Грищенко (Pivotal)
 
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
Мониторинг в высоконагруженных (и не только) проектах: сравнительный анализ с...
 
Безопасность Node.js / Илья Вербицкий (Независимый консультант)
Безопасность Node.js / Илья Вербицкий (Независимый консультант)Безопасность Node.js / Илья Вербицкий (Независимый консультант)
Безопасность Node.js / Илья Вербицкий (Независимый консультант)
 
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
Пайплайн машинного обучения на Apache Spark / Павел Клеменков (Rambler&Co)
 
Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...
Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...
Docker в работе: взгляд на его использование в Badoo через год / Турецкий Ант...
 
Мониторинг и отладка MySQL: максимум информации при минимальных потерях
Мониторинг и отладка MySQL: максимум информации при минимальных потеряхМониторинг и отладка MySQL: максимум информации при минимальных потерях
Мониторинг и отладка MySQL: максимум информации при минимальных потерях
 
Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...
Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...
Выбираем СУБД для хранения временных рядов / Павел Филонов (Лаборатория Каспе...
 
Javascript-фреймворки:
 должен остаться только один
Javascript-фреймворки:
 должен остаться только одинJavascript-фреймворки:
 должен остаться только один
Javascript-фреймворки:
 должен остаться только один
 

Semelhante a MySQL: чек-лист для новичка в highload / Анастасия Распопина, Света Смирнова (Percona)

Checklistfinal perconaconf
Checklistfinal perconaconfChecklistfinal perconaconf
Checklistfinal perconaconfDeveloperua
 
MySQL InnoDB Cluster
MySQL InnoDB ClusterMySQL InnoDB Cluster
MySQL InnoDB ClusterVittorio Cioe
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrusAlex Chistyakov
 
20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...
20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...
20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...IT-Portfolio
 
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновОбзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновOntico
 
Hosting for forbes.ru_
Hosting for forbes.ru_Hosting for forbes.ru_
Hosting for forbes.ru_drupalconf
 
ekbpy'2012 - Данила Штань - Распределенное хранилище
ekbpy'2012 - Данила Штань - Распределенное хранилищеekbpy'2012 - Данила Штань - Распределенное хранилище
ekbpy'2012 - Данила Штань - Распределенное хранилищеit-people
 
Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.
Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.
Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.Tech Talks @NSU
 
Что такое Highload? Секреты высокой нагрузки
Что такое Highload? Секреты высокой нагрузкиЧто такое Highload? Секреты высокой нагрузки
Что такое Highload? Секреты высокой нагрузкиTech Talks @NSU
 
AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012Roman Pavlushko
 
Tarantool, .net, newsql
Tarantool, .net, newsqlTarantool, .net, newsql
Tarantool, .net, newsqlAnatoly Popov
 
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими рукамиАндрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими рукамиIBS
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)Ontico
 
Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...
Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...
Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...Ontico
 
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...Ontico
 
Isilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSDIsilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSDAndrew Pantyukhin
 
кри 2014 elastic search рациональный подход к созданию собственной системы а...
кри 2014 elastic search  рациональный подход к созданию собственной системы а...кри 2014 elastic search  рациональный подход к созданию собственной системы а...
кри 2014 elastic search рациональный подход к созданию собственной системы а...Vyacheslav Nikulin
 
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектурFlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектурCisco Russia
 
Сергей Аверин "Распространенные ошибки применения баз данных"
Сергей Аверин "Распространенные ошибки применения баз данных"Сергей Аверин "Распространенные ошибки применения баз данных"
Сергей Аверин "Распространенные ошибки применения баз данных"Tanya Denisyuk
 

Semelhante a MySQL: чек-лист для новичка в highload / Анастасия Распопина, Света Смирнова (Percona) (20)

Checklistfinal perconaconf
Checklistfinal perconaconfChecklistfinal perconaconf
Checklistfinal perconaconf
 
MySQL InnoDB Cluster
MySQL InnoDB ClusterMySQL InnoDB Cluster
MySQL InnoDB Cluster
 
Daemons In Web on #devrus
Daemons In Web on #devrusDaemons In Web on #devrus
Daemons In Web on #devrus
 
MySQL NDB Cluster
MySQL NDB ClusterMySQL NDB Cluster
MySQL NDB Cluster
 
20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...
20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...
20 апреля, DEV {highload}, "Демоны в большом проекте – проблемы и их решения ...
 
Обзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий НасретдиновОбзор перспективных баз данных для highload / Юрий Насретдинов
Обзор перспективных баз данных для highload / Юрий Насретдинов
 
Hosting for forbes.ru_
Hosting for forbes.ru_Hosting for forbes.ru_
Hosting for forbes.ru_
 
ekbpy'2012 - Данила Штань - Распределенное хранилище
ekbpy'2012 - Данила Штань - Распределенное хранилищеekbpy'2012 - Данила Штань - Распределенное хранилище
ekbpy'2012 - Данила Штань - Распределенное хранилище
 
Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.
Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.
Tech Talks @NSU: Что такое Highload? Секреты высокой нагрузки.
 
Что такое Highload? Секреты высокой нагрузки
Что такое Highload? Секреты высокой нагрузкиЧто такое Highload? Секреты высокой нагрузки
Что такое Highload? Секреты высокой нагрузки
 
AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012AVITO. Решардинг Redis без даунтайма. DevConf 2012
AVITO. Решардинг Redis без даунтайма. DevConf 2012
 
Tarantool, .net, newsql
Tarantool, .net, newsqlTarantool, .net, newsql
Tarantool, .net, newsql
 
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими рукамиАндрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
Андрей Николаенко, IBS. NVMf: 5 млн IOPS по сети своими руками
 
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
NVMf: 5 млн IOPS по сети своими руками / Андрей Николаенко (IBS)
 
Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...
Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...
Как мы храним и анализируем большой социальный граф, Максим Бартенев (Норси-т...
 
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
Ускоряем и разгружаем веб-сервер, прозрачно кэшируя на SSD, Станислав Николов...
 
Isilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSDIsilapp — Extreme Cloud Storage on FreeBSD
Isilapp — Extreme Cloud Storage on FreeBSD
 
кри 2014 elastic search рациональный подход к созданию собственной системы а...
кри 2014 elastic search  рациональный подход к созданию собственной системы а...кри 2014 elastic search  рациональный подход к созданию собственной системы а...
кри 2014 elastic search рациональный подход к созданию собственной системы а...
 
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектурFlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
FlexPod для machine learning, 3D, контейнеров и еще сотня проверенных архитектур
 
Сергей Аверин "Распространенные ошибки применения баз данных"
Сергей Аверин "Распространенные ошибки применения баз данных"Сергей Аверин "Распространенные ошибки применения баз данных"
Сергей Аверин "Распространенные ошибки применения баз данных"
 

Mais de Ontico

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...Ontico
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Ontico
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Ontico
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Ontico
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Ontico
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)Ontico
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Ontico
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)Ontico
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)Ontico
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Ontico
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Ontico
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Ontico
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Ontico
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)Ontico
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Ontico
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Ontico
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...Ontico
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Ontico
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Ontico
 
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)Ontico
 

Mais de Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
Как мы учились чинить самолеты в воздухе / Евгений Коломеец (Virtuozzo)
 

MySQL: чек-лист для новичка в highload / Анастасия Распопина, Света Смирнова (Percona)

  • 1. © 2017 Percona1 Света Смирнова, ведущий инженер технической поддержки (Percona) Анастасия Распопина, специалист по маркетингу (Percona) MySQL: чек-лист для новичка в highload Кейсы, списки настроек, must have, полезные ссылки Профессиональный фестиваль «Российские интернет-технологии» (РИТ++), конференция HighLoad Junior 5 июня 2017 г.
  • 2. © 2017 Percona2 Кто мы и откуда? Кратко о нас и нашей компании ▪Света Смирнова • Ведущий инженер службы технической поддержки • 10+ лет работы в поддержке MySQL, автор книги “MySQL Troubleshooting” и UDF-функций для MySQL (дизайн-прототип встроенных JSON-функций).
  • 3. © 2017 Percona3 Кто мы и откуда? Кратко о нас и нашей компании ▪Света Смирнова ▪Анастасия Распопина • Специалист по маркетингу • Работала в GameDev, организовывала HL++, РИТ++, сейчас в Percona Events Team.
  • 4. © 2017 Percona4 Кто мы и откуда? Кратко о нас и нашей компании ▪Света Смирнова, ведущий инженер службы технической поддержки ▪Анастасия Распопина, специалист по маркетингу ▪Компания Percona • Поставщик 100% Open Source ПО для MySQL и MongoDB, а также услуг поддержки, консалтинга и удалённого администрирования для этих СУБД
  • 5. © 2017 Percona5 Что такое highload сейчас? Даём определение высокой нагрузке на 2017 г. ▪Не цифры: предельные нагрузки • Сколько записей в секунду выдержит диск? • Запросов на чтение? • Пользовательских соединений?
  • 6. © 2017 Percona6 Что такое highload сейчас? Даём определение высокой нагрузке на 2017 г. ▪Не цифры: предельные нагрузки ▪Железо имеет значение • t2.micro или “Машины Баз Данных” (WS, 6 июня, 16.00) • Много читаем: память • Много пишем: быстрый диск • Много активных соединений: CPU • Неоптимизированные запросы: CPU
  • 7. © 2017 Percona7 Что такое highload сейчас? Даём определение высокой нагрузке на 2017 г. ▪Не цифры: предельные нагрузки ▪Железо имеет значение ▪Цифры • Стандартные бенчмарки всегда синтетические • Реальность обычно разнообразнее
  • 8. © 2017 Percona8 Что такое highload сейчас? Цифры: рост производительности MySQL https://www.slideshare.net/geirhoydalsvik/whats-new-in-mysql-57
  • 9. © 2017 Percona9 Что такое highload сейчас? Цифры: рост интернета
  • 10. © 2017 Percona10 Что такое highload сейчас? Даём определение высокой нагрузке на 2017 г. ▪Highload • Та нагрузка, с которой СУБД не справляется • Нельзя раз и навсегда оптимизироваться «под highload», это непрерывный процесс
  • 11. © 2017 Percona11 Обзор форков MySQL Oracle MySQL, Percona Server для MySQL, MariaDB, форки внутри компаний
  • 12. © 2017 Percona12 Современные варианты MySQL Какие форки MySQL выжили и активно развиваются? ▪MySQL от Oracle • Оригинальный MySQL, над которым работают инженеры Oracle • “Сотни человек” (https://www.percona.com/blog/2014/02/18/oracles-morgan-tocker-opens-up-about-mysql-development-mysql-5-7/)
  • 13. © 2017 Percona13 Современные варианты MySQL Какие форки MySQL выжили и активно развиваются? ▪MySQL от Oracle ▪Percona Server для MySQL • Полностью совместимая расширенная версия • Около 30 человек (Engineering Team)
  • 14. © 2017 Percona14 Современные варианты MySQL Какие форки MySQL выжили и активно развиваются? ▪MySQL от Oracle ▪Percona Server для MySQL ▪MariaDB • Частично совместимая расширенная версия • Свои: оптимизатор запросов, GTID, движки, ...
  • 15. © 2017 Percona15 Современные варианты MySQL Какие форки выжили и активно развиваются? ▪MySQL от Oracle ▪Percona Server для MySQL ▪MariaDB ▪Форки компаний – открытые и закрытые • Facebook: MyRocks, DocStore, статистика, производительность • Alibaba: Sequence, Backup, SQL, статистика, производительность • Amazon (Amazon Aurora): физическая репликация, производительность, масштабирование, закрытая
  • 16. © 2017 Percona16 Где что загрузить: ссылки ▪MySQL от Oracle • Документация: https://dev.mysql.com/doc/refman/5.7/en/ • Полный список фич для 5.7: http://www.thecompletelistoffeatures.com/
  • 17. © 2017 Percona17 Где что загрузить: ссылки ▪MySQL от Oracle ▪Percona Server для MySQL • Документация: https://www.percona.com/doc/percona-server/LATEST/index.html • Percona Database Performance Blog: http://percona.com/blog/
  • 18. © 2017 Percona18 Где что загрузить: ссылки ▪MySQL от Oracle ▪Percona Server для MySQL ▪MariaDB • Документация: https://mariadb.com/kb/en/ • Foundation: http://mariadb.org/
  • 19. © 2017 Percona19 Где что загрузить: ссылки ▪MySQL от Oracle ▪Percona Server для MySQL ▪MariaDB ▪Открытые разработки Facebook • Документация: https://github.com/facebook/mysql-5.6/wiki • 8.0: https://github.com/facebook/mysql-8.0
  • 20. © 2017 Percona20 Где что загрузить: ссылки ▪MySQL от Oracle ▪Percona Server для MySQL ▪MariaDB ▪Открытые разработки Facebook ▪AliSQL • https://github.com/alibaba/AliSQL
  • 21. © 2017 Percona21 Что стоит хранить в памяти, а что – на диске?
  • 22. © 2017 Percona22 MySQL: что мы храним в памяти ▪Три вида буферов в памяти • Глобальные ▪ InnoDB Buffer Pool: активный набор данных ▪ Query Cache (http://mysqlserverteam.com/mysql-8-0-retiring-support-for-the-query-cache/) • Сессионные ▪ Sort buffer: маленькие! ▪ Всего не более, чем (Свободная память - глобальные) / max_connections • Под операцию ▪ Временные таблицы: может быть создано много!
  • 23. © 2017 Percona23 MySQL: что мы храним на диске ▪MySQL лучше всего работает с данными в памяти ▪Для лучшей скорости • Быстрые диски: SSD, Fusion IO • innodb_io_capacity - рекомендуемое, реальное количество IOPS • innodb_flush_method - O_DIRECT, тестируйте! ▪Скорость или надёжность? • Операция fsync - дорогая • Реже fsync - лучше производительность и ниже надёжность
  • 24. © 2017 Percona24 Почитать про память и диск ▪Оптимизация IO для InnoDB • https://dev.mysql.com/doc/refman/5.7/en/innodb-disk-management.html • https://www.percona.com/blog/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/ ▪Оптимальный размер InnoDB Buffer Pool • https://www.percona.com/blog/2007/11/03/choosing-innodb_buffer_pool_size/
  • 25. © 2017 Percona25 Как правильно кэшировать?
  • 26. © 2017 Percona26 Кэширование в МySQL ▪Полезное кэширование: сервер • binlog_[stmt_]cache_size • table_definition_cache • table_open_cache • table_open_cache_instances - много не всегда хорошо • thread_cache_size
  • 27. © 2017 Percona27 Кэширование в МySQL ▪Полезное кэширование: сервер ▪Полезное кэширование: InnoDB • Buffer Pool: innodb_buffer_pool_size • Log buffer: innodb_log_buffer_size
  • 28. © 2017 Percona28 Кэширование в МySQL ▪Полезное кэширование: сервер ▪Полезное кэширование: InnoDB ▪Чем плоха Query Cache • Один mutex • Знаменитые баги ▪ Bug #21074: Large query_cache freezes mysql server sporadically under heavy load ▪ Bug #47529: query cache performance is bad on multi-core servers ▪ Bug #37844: Fix SMP performance for the query cache ▪ Bug #60696: invalidating query cache entries (table) hangs replication
  • 29. © 2017 Percona29 Почитать про кэширование https://dom.as/tech/query-cache-tuner/
  • 30. © 2017 Percona30 Кластеризация, шардинг, репликация – когда и как?
  • 31. © 2017 Percona31 Репликация в МySQL ▪Встроенная ▪Простая в использовании ▪Требует настройки ▪Гибкая
  • 33. © 2017 Percona33 Репликация: highload ▪Мастер • Синхронизация ▪ sync_binlog • 0 - самый быстрый • 1 - самый надёжный • >1 - компромисс между надёжностью и скоростью ▪Слейв • Меньше потоков, чем на мастере • Один relay log на channel
  • 35. © 2017 Percona35 Круговая репликация: highload ▪Те же проблемы, что и на “рекомендуемой” ▪Умножайте на 2 для каждого сервера
  • 38. © 2017 Percona38 Кластеризация в МySQL ▪NDB Cluster • Старейшее кластерное решение • Рабочий набор данных в памяти • Как минимум две копии данных • Специфические требования к приложению • Популярен среди европейских телекомов
  • 39. © 2017 Percona39 Кластеризация в МySQL ▪NDB Cluster ▪Percona XtraDB Cluster, Galera Cluster • Синхронная репликация • Собственный лог изменений ▪ innodb_flush_log_at_trx_commit=2 - безопасно и рекомендуется! • Чтение: масштабируемое • Запись: чем больше серверов в кластере, тем медленнее
  • 40. © 2017 Percona40 Percona XtraDB Cluster
  • 41. © 2017 Percona41 Кластеризация в МySQL ▪NDB Cluster ▪Percona XtraDB Cluster, Galera ▪InnoDB Cluster • Архитектурно то же самое, что и Percona XtraDB Cluster/Galera • Синхронная репликация • Использует бинарный лог • Чтение: масштабируемое • Запись: чем больше серверов в кластере, тем медленнее • Новый продукт
  • 42. © 2017 Percona42 Шардинг в МySQL ▪Встроенного не существует
  • 43. © 2017 Percona43 Шардинг в МySQL ▪Встроенного не существует ▪Shard Query • Независимый продукт на PHP и Gearman • https://github.com/greenlion/swanhart-tools/wiki/Shard-Query-Manual
  • 44. © 2017 Percona44 Шардинг в МySQL ▪Встроенного не существует ▪Shard Query ▪MySQL Fabric • Продукт от Oracle • Новый и, похоже, неподдерживаемый • https://dev.mysql.com/doc/mysql-utilities/1.5/en/fabric.htm
  • 45. © 2017 Percona45 Шардинг в МySQL ▪Встроенного не существует ▪Shard Query ▪MySQL Fabric ▪ProxySQL • Больше, чем шардинг • Proxy, query rewrite, кэширование • Стремительно набирает популярность • https://www.percona.com/blog/2016/08/30/mysql-sharding-with-proxysql/
  • 46. © 2017 Percona46 Полезные ссылки ▪To Shard or Not to Shard (Peter Zaitsev, CEO, Percona) - in English • https://www.youtube.com/watch?v=2MyyH-bH8Bw ▪Презентация о сценариях использования ProxySQL от его разработчиков (на английском языке): • http:/bit.ly/2qHmR4A
  • 47. © 2017 Percona47 Какие индексы нужны MySQL?
  • 48. © 2017 Percona48 Индексы MySQL и highload На что влияют неуникальные ключи ▪SELECT • Правильные улучшают скорость выполнения • Если слишком много подходящих ▪ Оптимизатор может дольше “думать” над планом
  • 49. © 2017 Percona49 Индексы MySQL и highload На что влияют неуникальные ключи ▪SELECT ▪INSERT • Замедляют запись • Требуется обновление не только данных, но и индекса
  • 50. © 2017 Percona50 Индексы MySQL и highload На что влияют неуникальные ключи ▪SELECT ▪INSERT ▪UPDATE/DELETE • Замедляют запись • Правильные ускоряют поиск строк, удовлетворяющих WHERE
  • 51. © 2017 Percona51 Индексы MySQL и highload На что влияют неуникальные ключи ▪SELECT ▪INSERT ▪UPDATE/DELETE ▪Внешние ключи • При доступе к одной таблице строка в дочерней/родительской будет заблокирована
  • 52. © 2017 Percona52 Индексы MySQL и highload На что влияют неуникальные ключи ▪SELECT ▪INSERT ▪UPDATE/DELETE ▪Внешние ключи ▪Полнотекстовые индексы • Поддерживаются с первых версий, InnoDB - 5.6+ • Для простых сценариев • У специализированного ПО больше возможностей
  • 53. © 2017 Percona53 Что посмотреть про индексы ▪Мастер-класс "Работа с индексами: лучшие практики MySQL" (Пётр Зайцев, CEO, Percona) • https://www.youtube.com/watch?v=39e1vAGD3hg ▪MySQL 5.6 Full Text Search Throwdown • https://www.percona.com/resources/mysql-webinars/mysql-56-full-text-search-throwdown
  • 54. © 2017 Percona54 Как работать с медленными запросами MySQL? Байка: нельзя оптимизировать запросы раз и навсегда
  • 55. © 2017 Percona55 Анализируем медленные запросы ▪Где найти • Slow query log ▪ pt-query-digest
  • 56. © 2017 Percona56 Анализируем медленные запросы ▪Где найти • Slow query log • Performance Schema events_statements_* ▪ CREATED TMP DISK TABLES ▪ CREATED TMP TABLES ▪ SELECT FULL JOIN ▪ SELECT RANGE CHECK ▪ SELECT SCAN ▪ SORT MERGE PASSES ▪ SORT SCAN
  • 57. © 2017 Percona57 Анализируем медленные запросы ▪Где найти • Slow query log • Performance Schema events_statements_* • sys schema ▪ statement analysis ▪ statements with full table scans ▪ statements with runtimes in 95th percentile ▪ statements with sorting ▪ statements with temp tables ▪ statements with errors or warnings
  • 58. © 2017 Percona58 Анализируем медленные запросы ▪Где найти • Slow query log • Performance Schema events_statements_* • sys schema • PMM и другие графические инструменты
  • 59. © 2017 Percona59 Query Analytics в PMM
  • 60. © 2017 Percona60 Анализируем медленные запросы ▪Где найти ▪Как чинить • EXPLAIN • EXPLAIN FORMAT=JSON • INFORMATION_SCHEMA.OPTIMIZER_TRACE • Анализ использования индексов • Статистика ▪ SHOW STATUS LIKE ‘Handler_%’
  • 61. © 2017 Percona61 Что и где почитать ▪EXPLAIN: http://dev.mysql.com/doc/refman/5.7/en/explain.html ▪EXPLAIN FORMAT=JSON is Cool! • https://www.percona.com/blog/2016/04/06/explain-format-json-wrap-up/ ▪Optimizer Hints • http://dev.mysql.com/doc/refman/5.7/en/optimizer-hints.html ▪PMM: https://pmmdemo.percona.com/ ▪pt-query-digest • https://www.percona.com/doc/percona-toolkit/LATEST/pt-query-digest.html
  • 62. © 2017 Percona62 Как настроить MySQL под нагрузку? Байка: про какие опции всегда забывают
  • 63. © 2017 Percona63 Настраиваем MySQL для highload ▪table_open_cache, table_definition_cache • Opened_tables, Opened_table_definitions не растёт ▪table_open_cache_instances • Большое не нужно, обычно 2-4 достаточно ▪sort_buffer_size, сессионные буферы • Маленький, можно увеличить для конкретной сессии ▪max_connections, max_allowed_packet • Разумное
  • 64. © 2017 Percona64 Настраиваем InnoDB для highload ▪innodb_buffer_pool_size • Чтобы вмещал рабочий набор данных ▪innodb_log_file_size • Как минимум: изменения за час ▪innodb_io_capacity • Реальное количество IOPS ▪innodb_thread_concurrency • Количество процессоров ▪innodb_flush_method
  • 65. © 2017 Percona65 Что почитать про настройку ▪Опции MySQL • http://dev.mysql.com/doc/refman/5.7/en/mysqld-option-tables.html ▪Опции Percona Server • https://www.percona.com/doc/percona-server/5.7/ps-variables.html ▪Опции Galera Cluster • https://mariadb.com/kb/en/mariadb/galera-cluster-system-variables/ ▪Блог Дмитрия Кравчука • http://dimitrik.free.fr/blog/
  • 66. © 2017 Percona66 Как понять, что «тупит» не MySQL? Байка: не ругай «плохой» MySQL – посмотри, что у тебя за машины
  • 67. © 2017 Percona67 Что ещё может «тормозить»? ▪Другие приложения • Выделенный сервер под базу
  • 68. © 2017 Percona68 Что ещё может «тормозить»? ▪Другие приложения ▪Диск • Network storage ▪ NFS: никогда ▪ SAN: с осторожностью • Не гарантирует точного ответа, записались ли данные • Тестируйте innodb_flush_method • Переносите работу в память • Жертвуйте надёжностью • Покупайте лучшие
  • 69. © 2017 Percona69 Что ещё может «тормозить»? ▪Другие приложения ▪Диск ▪CPU • Агрессивные опции, отвечающие за параллельное выполнение • Лимиты операционной системы
  • 70. © 2017 Percona70 Что ещё может «тормозить»? ▪Другие приложения ▪Диск ▪CPU ▪И всегда проверяйте, даёт ли нагрузку приложение!
  • 71. © 2017 Percona71 Что и где почитать по теме? ▪Linux Performance by Brendan Gregg • http://brendangregg.com/linuxperf.html
  • 73. © 2017 Percona73 P.S. Все материалы Percona о MySQL на русском языке в открытом доступе Собрала Анастасия Распопина
  • 74. © 2017 Percona74 Что ещё посмотреть по MySQL? ▪Анализ производительности и оптимизация MySQL, Пётр Зайцев (Percona) - HighLoad++ 2013 ▪Архитектура приложений с использованием MySQL, Пётр Зайцев (Percona) - HighLoad++ 2014 ▪SSD для вашей базы данных, Пётр Зайцев (Percona) - HighLoad++ 2014
  • 75. © 2017 Percona75 Что ещё посмотреть по MySQL? ▪Troubleshooting MySQL Performance, Света Смирнова (Percona) - LinuxPiter 2015 ▪Ужимай и властвуй: алгоритмы компрессии в базах данных, Пётр Зайцев (Percona) - HighLoad++ 2015 ▪Практическая оптимизация MySQL: измерять, чтобы ускорять, Пётр Зайцев (Percona) - HighLoad++ 2015 ▪Обзор программных решений компании Percona, Пётр Зайцев (Percona) - Технозавтрак 1С-Битрикс 2016
  • 76. © 2017 Percona76 Что ещё посмотреть по MySQL? ▪Методы и инструменты повышения производительности 5.6 и 5.7 - Николай Ихалайнен (Percona) - Стачка 2016 ▪ MySQL 5.7 - NoSQL - JSON, Protocol X, Document Store, Пётр Зайцев (Percona) - HighLoad++ 2016 ▪MySQL® и MongoDB® - когда что лучше использовать? Пётр Зайцев (Percona) - HighLoad++ 2016 ▪Open Source SQL-базы данных вступили в эру млн. запросов в сек. / Ф.Сигаев, С.Смирнова, А.Распопина - HighLoad++ 2016
  • 77. © 2017 Percona77 Что ещё посмотреть по MySQL? ▪Pquery - открытый бесплатный инструмент тестирования Percona, Алексей Бычко (Percona) - HighLoad++ 2016 ▪Эффективная отладка репликации MySQL, Света Смирнова (Percona) - HighLoad++ 2016 ▪СПАСИБО!
  • 78. DATABASE PERFORMANCE MATTERS Database Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance MattersDatabase Performance Matters