SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » MySQL, MariaDB » Разбираемся что MySQL пишет на диск и зачем
Разбираемся что MySQL пишет на диск и зачем [сообщение #987] Tue, 15 November 2022 13:53
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 82
Зарегистрирован: June 2022
Member
Не плохая статья на хабре в 2-х частях, приоткрывающая внутреннюю кухню MySQL.

Разбираемся что MySQL пишет на диск и зачем

Разбираемся что MySQL пишет на диск и зачем [часть 2]

Цитата:

Часть 0: Размышления о хранении данных
Разработчики предъявляют высокие требования к базам данных: максимальная надежность (ничего из того, что было записано не должно быть утеряно ни при каких обстоятельствах), и, одновременно, максимальная производительность при различных видах нагрузки (Запись/Чтение или OLTP/OLAP). Достичь этих требований может быть не просто. Давайте попробуем разобраться, как это делает MySQL.

Размышляя о базе данных, легко представить таблицу базы данных как HashMap/BinaryTree, отображающие первичный ключ (primary key) в структурированные записи с данными. Такое хранилище может работать in memory. Но, как только мы захотим записать данные на диск, придется использовать какие-то алгоритмы во внешней памяти. Просто положить наш HashMap на диск не получится, потому что память и диски слишком разные: чтение/запись диска производится блоками, latency диска больше чем у RAM, а еще нельзя будет воспользоваться обычными указателями и аллокаторами памяти — все это придется заменить самостоятельно.
Переход к форуму:
  


Текущее время: Wed Nov 30 01:06:01 MSK 2022

Общее время, затраченное на создание страницы: 0.01248 секунд