MySQL против скорости двоичных файлов

Какой лучший способ сохранить данные в C++?Двоичный файл (.dat) или Mysql. Wil двоичные файлы выполняют быстрее выполнения или Mysql?

2 ответа

Решение

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

Таким образом, технически, если вы храните данные в MySQL, вы сохраняете их в двоичном файле. Однако это не означает, что двоичные файлы всегда обеспечивают более быстрый доступ к данным, чем базы данных.

Система управления базой данных - это абстракция базовых данных (например, двоичный файл). Как таковой, он может обеспечить дополнительные преимущества, включая (но не ограничиваясь):

  • Кэширование часто используемых данных (чтение из памяти намного быстрее, чем чтение из двоичного файла)
  • Поддержка более точных моделей безопасности (например, позволяя определенным пользователям читать данные, а другим изменять их)
  • Упрощенное представление данных (не нужно беспокоиться о том, как данные действительно сохраняются)

В конечном счете, MySQL и бинарные файлы просто выполняют разные роли, с некоторым перекрытием.

Если вы просто хотите сохранить данные приложения (например, пользовательские настройки) для последующего использования, вам следует использовать двоичный файл. База данных будет работать, но будет излишним.

Если вы храните большие объемы данных или данные с внутренними связями, вам следует рассмотреть возможность использования системы управления базами данных (например, MySQL). Бинарный файл будет работать, но с ним будет сложно работать.

Зависит от того, что вы делаете. Двоичные файлы будут самыми быстрыми (mmap их для максимальной скорости) для чистой скорости чтения / записи. Mysql проще в использовании, если вы собираетесь что-то делать с базами данных.

Другие вопросы по тегам