Как я могу найти спецификации формата хранилища базы данных без просмотра исходного кода? - PullRequest
0 голосов
/ 02 мая 2018

Я пишу свою собственную базу данных для моего резюме и из-за разочарования по поводу всех сложностей других баз данных (у меня есть только 4 операции: push, pull, drop и find). Это хранилище значений ключей, которое хэширует ключ, а затем создает дерево папок для сохранения файла.

Допустим, я нажимаю {"Bob": {"password": "Duck"}} в моей базе данных. Скажем, хэш SHA для Боба: AABBCCDD

Боб хранится в файле DD в каталоге AA / BB / CC /.

Я сделал это, чтобы постоянный доступ к файлам базы данных не повредил всю базу данных. Проблема в том, что сейчас я беспокоюсь о скорости.

Я хотел бы пересмотреть методы хранения других баз данных, но не могу найти их спецификации. Все, что я могу найти, это преимущества их базы данных, такой как MongoDB, которая сжимает данные и сохраняет их в BSON. Всякий раз, когда я ищу в Google спецификации, это то, что обычно появляется.

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

1 Ответ

0 голосов
/ 02 мая 2018

Для SQLite, единственные RDBM, которые вы пометили, тогда формат файла базы данных можно найти здесь Формат файла базы данных

Здесь есть кое-что о доступе к файлам, которое может представлять интерес Как повредить файл базы данных SQLite , а также здесь Запись в журнал для записи

Но когда все сводится к этому, существует множество факторов, которые могут повлиять на производительность, помимо того, как файлы записываются, например, в базовую файловую систему, устройства хранения, индексацию, кеширование (возможно, см. Заявления PRAGMA ), использование транзакций, оптимизация запросов Обзор оптимизатора запросов SQLite и Планирование запросов

...