• Главная
  • Контакты
Подписаться:
  • Twitter
  • Facebook
  • RSS
  • VK
  • PushAll
logo

logo

  • Все
    • Положительные
    • Отрицательные
  • За сегодня
    • Положительные
    • Отрицательные
  • За вчера
    • Положительные
    • Отрицательные
  • За 3 дня
    • Положительные
    • Отрицательные
  • За неделю
    • Положительные
    • Отрицательные
  • За месяц
    • Положительные
    • Отрицательные
  • За год
    • Положительные
    • Отрицательные
  • Сортировка
    • По дате (возр)
    • По дате (убыв)
    • По рейтингу (возр)
    • По рейтингу (убыв)
    • По комментам (возр)
    • По комментам (убыв)
    • По просмотрам (возр)
    • По просмотрам (убыв)
Главная
  • Все
    • Положительные
    • Отрицательные
  • За сегодня
    • Положительные
    • Отрицательные
  • За вчера
    • Положительные
    • Отрицательные
  • За 3 дня
    • Положительные
    • Отрицательные
  • За неделю
    • Положительные
    • Отрицательные
  • За месяц
    • Положительные
    • Отрицательные
  • Главная
  • Базы данных с открытым исходным кодом на больших машинах: скорость диска и innodb_io_capacity. Часть 2

Базы данных с открытым исходным кодом на больших машинах: скорость диска и innodb_io_capacity. Часть 2 +12

24.04.2017 10:24
rdruzyagin 0 2000 Источник
Хранение данных*, Администрирование баз данных*, DevOps*, Блог компании PG Day'17 Russia
Сегодня предлагаем вашему вниманию вторую часть статьи Светы Смирновой и Анастасии Распопиной о повышении производительности InnoDB.

Очень подробно этот вопрос также разберет Петр Зайцев, основатель компании Percona на своем мастер-классе 5 июля. Петр расскажет о том, как правильно использовать возможности MySQL 5.7 для того, чтобы обеспечить максимальную производительность, а также даст конкретные рекомендации относительно конфигурации сервера, схемы базы данных, архитектуры приложения и выбора оборудования. Не упустите возможность посетить этот уникальный мастер-класс, специально для PG Day Петр впервые в России подготовит его на русском языке!




В этой статье я расскажу, как искала узкое место, которое препятствовало повышению производительности в моём предыдущем посте.

Мощная машина, которую я использовала в тестах в своей предыдущей статье, имеет относительно медленный диск, и поэтому я ожидала, что мои тесты достигнут такого уровня, когда я не смогу больше увеличивать производительность из-за скорости диска.

Конфигурация аппаратных средств:
Процессоры: физические = 4, ядра = 72, виртуальные = 144, hyperthreading = да
Память: 3.0T
Скорость диска: около 3K IOPS
ОС: CentOS 7.1.1503
Файловая система: XFS

Протестированные версии и конфигурация: такие же, как в первой статье этой серии (почитайте её, чтобы узнать детали).

Хоть я и ожидала, что мои тесты перестанут расти в производительности из-за скорости диска, высоких значений IO в результатах iostat замечено не было. Я уже проводила тестирование с полным набором данных, помещающихся в память. В этом случае производительность записи влияла только на сброс данных на диск и запись в журнал. Но мы все равно должны увидеть заметное снижение скорости. Поэтому я решила попробовать RW-тесты полностью в памяти. Я создала ramdisk и установила на нем MySQL datadir. Удивительно, но результаты на SSD и ramdisk не отличались.


Я попросила моих коллег из Postgres Professional протестировать PostgreSQL с помощью ramdisk. Они получили похожие результаты:


Интересно, что значение innodb_io_capacity никак не влияет на эту ситуацию. Данные для графика ниже были взяты, когда я запускала тесты на ramdisk. Я хотела посмотреть, могу ли я, используя эту переменную, контролировать активность IO на диске, который по умолчанию очень быстр.


Это полностью противоречит всему моему прошлому опыту с менее производительными машинами. Percona переназначила машину с более быстрым диском (которую я использовала ранее в этой статье), поэтому я использовала аналогичную с меньшей скоростью диска.

Конфигурация аппаратных средств:
Процессоры: физические = 2, ядра = 12, виртуальные = 24, hyperthreading = да
Память: 47.2G
Скорость диска: около 3K IOPS
ОС: Ubuntu 14.04.5 LTS (trusty)
Файловая система: ext4

Опять же, в этом случае тесты innodb_io_capacity с меньшим количеством ядер процессора показали более предсказуемые результаты.

Заключение:

Как MySQL, так и PostgreSQL на машине с большим количеством процессорных ядер достигают пределов ресурсов CPU прежде, чем скорость диска может начать влиять на производительность. Однако мы протестировали только один сценарий. В других случаях результаты могут отличаться.

Свои вопросы Светлане вы можете оставить в комментариях, а также задать лично на ее мастер-классе в рамках PG Day'17 об отладке производительности MySQL.
Поделиться с друзьями
-->

Комментарии (0)

МЕТКИ

  • Хабы
  • Теги

Хранение данных

Администрирование баз данных

DevOps

Блог компании PG Day'17 Russia

mysql

SQL

databases

СЕРВИСЫ
  • logo

    CloudLogs.ru - Облачное логирование

    • Храните логи вашего сервиса или приложения в облаке. Удобно просматривайте и анализируйте их.
Все публикации автора
  • Обучение на PG Day'17 Russia +2

    • 30.06.2017 10:17

    «Технологический центр Дойче Банка — это структура для IT-поддержки глобального бизнеса банка» — Александр Халухин +3

    • 29.06.2017 08:56

    Обзор основных секций конференции PG Day'17 Russia +5

    • 28.06.2017 06:41

    «В Тарантуле нет такой проблемы как сильная деградация со временем и под нагрузкой» – Василий Сошников +14

    • 26.06.2017 09:09

    Возможности PostgreSQL для тех, кто перешел с MySQL +57

    • 23.06.2017 06:27

    «Я не могу просто ходить с флагом «Postgres – наше всё». Нужно руками доказывать, что это работает» – Алексей Лустин +10

    • 22.06.2017 13:48

    Жизнь Oracle I/O: трассировка логического и физического ввода-вывода с помощью SystemTap +5

    • 21.06.2017 09:38

    «Мое самое главное испытание – не сломать драйвер» — Dave Cramer о разработке драйвера JDBC для PostgreSQL +8

    • 20.06.2017 06:49

    11 вопросов к администраторам баз данных PostgreSQL, часть 2 +6

    • 19.06.2017 14:51

    11 вопросов к администраторам баз данных PostgreSQL +4

    • 16.06.2017 11:02

Подписка


ЛУЧШЕЕ

  • Сегодня
  • Вчера
  • Позавчера
12:38

Зарплаты IT-специалистов в первой половине 2026 года: рост ниже инфляции +50

08:05

Ни одного ложноотрицательного: пишем Фильтр Блума на C +42

08:05

От зефира до фаллоса: как Ридли Скотт спас «Чужого» +36

09:01

Подключаем к Raspberry Pi Pico MIDI-клавиатуру и делаем музыкальный синтезатор +26

07:05

Про альтернативы переменным резисторам +25

08:35

Дальняя связь на модулях LoRa: принимаем сигнал ниже уровня шума +24

09:55

ClickHouse: сценарии, сильные стороны, лучшие практики работы в 2026 году +23

09:55

ClickHouse: сценарии, сильные стороны, лучшие практики работы в 2026 году +22

08:39

От JTAG к IJTAG: зачем понадобился новый стандарт аппаратного тестирования +22

07:01

15 лет спустя: как я модернизировал умный дом на базе PLC и написал свой OPC-сервер для перехода от SCADA к ioBroker +22

13:01

Почему Docker не всегда лучший выбор и чем его заменить +20

11:07

Лучшие российские VPS/VDS-хостинги в 2026 году: сравниваем популярные конфиги. Часть 2 +19

08:00

Инференс с дешевой памятью, 128-ядерные RISC-V и другие новинки из мира железа: дайджест июня +19

08:53

Почему в Linux /bin, /usr/bin, /usr/local/bin… +18

09:16

VEGMAN R220 G3 и YADRO G4208P G3: что показали стресс-тесты серверов +17

12:28

Превращаем виртуальный индикатор кислорода Subnautica в реальное устройство. Часть 1 +16

05:40

Довайбкодились. ИИ-инструменты экономят время, но убивают понимание кода? +16

05:24

Башня солнца и дерево с трилобитами: как японская EXPO ‘70 сформировала наше будущее +15

06:36

Apple Intelligence в Python для агента Hermes +14

12:00

Краткая история футбольных симуляторов +13

07:08

Как я потерял 45 миллионов рублей на китайском импортозамещении железа для боулинга +236

11:42

Крупнейшие российские регистраторы доменов не отвечают на тикеты. Что происходит и как спасти инфраструктуру? +82

19:56

Dirty Coding Tricks, part 3 +55

08:00

История создания самодельной видеокарты на 8 192 ядра RISC-V из тысяч дешевых микроконтроллеров +46

20:33

Бегство Солнца +45

13:01

Как я получал степень бакалавра по Computer Science на Coursera +45

20:29

Как рой ИИ-агентов Cursor создал SQLite с нуля за $1339 +41

05:44

Компилятор в 16 лет +41

20:19

Карта странствующих слов +36

09:01

Langflow. Самый удобный визуальный редактор для оркестрации ИИ агентов +33

07:05

const fn в 2026: ваш компилятор втихаря исполняет Rust +32

07:01

Ненависть к ИИ +32

14:50

Как загрузить любой шрифт Google Fonts на дисплей ESP32 — без Processing и ручной конвертации +31

12:00

Как бы мы закрывали уязвимости в SELECTOS, если бы у нас были спринты +28

03:13

Как звучал 1990-й: разбираем AdLib и синтезатор OPL2 – от одной ноты до виртуальной машины музыки +20

11:38

Claude опроверг знаменитую гипотезу якобиана. Она держалась 87 лет, а проверка занимает минуту +19

11:39

Т9 за сотню долларов, ассистент за миллиард: сколько на самом деле стоит обучить LLM с нуля +18

07:03

Собрать прошлое: как архивировать весь трафик сборки SONiC +18

07:03

Собрать прошлое: как архивировать весь трафик сборки SONiC +18

08:10

Как фильтровать GPS‑треки от ложных точек: спуфинг, заморозка координат, подмена времени +17

ОБСУЖДАЕМОЕ

  • Как я потерял 45 миллионов рублей на китайском импортозамещении железа для боулинга +236

    • 273   31000

    Ненависть к ИИ +32

    • 139   15000

    Крупнейшие российские регистраторы доменов не отвечают на тикеты. Что происходит и как спасти инфраструктуру? +82

    • 115   37000

    Как рой ИИ-агентов Cursor создал SQLite с нуля за $1339 +41

    • 55   25000

    Компилятор в 16 лет +41

    • 53   16000

    Следующий «момент Бэкуса»: почему программирование снова готово подняться на уровень выше +15

    • 49   24000

    Бегство Солнца +45

    • 40   15000

    Гравитация и квантовая физика фундаментально несовместимы +10

    • 38   13000

    FFmpeg в браузере: как мы сделали медиа-конвертер, который ни разу не обращается к серверу +15

    • 32   11000

    Карта странствующих слов +36

    • 25   14000

    Claude Code, Cursor, Codex: что выбрать для команды в 2026 +2

    • 24   7800

    Как фильтровать GPS‑треки от ложных точек: спуфинг, заморозка координат, подмена времени +17

    • 24   9200

    История создания самодельной видеокарты на 8 192 ядра RISC-V из тысяч дешевых микроконтроллеров +46

    • 21   17000
  • Главная
  • Контакты
© 2026. Все публикации принадлежат авторам.