База данных в памяти

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

база данных в памяти (IMDB, также система базы данных в основной памяти или MMDB или резидентная база данных в памяти ) - это система управления базами данных, которая в основном полагается на оперативную память для компьютерного хранилища данных. Это контрастирует с системами управления базами данных, в которых используется механизм дискового хранилища. Базы данных в памяти работают быстрее, чем базы данных, оптимизированные для диска, потому что доступ к диску медленнее, чем доступ к памяти, внутренние алгоритмы оптимизации проще и выполняют меньше инструкций ЦП. Доступ к данным в памяти устраняет время поиска при запросе данных, что обеспечивает более высокую и более предсказуемую производительность, чем диск.

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

Потенциальным техническим препятствием для хранения данных в памяти является непостоянство RAM. В частности, в случае отключения питания, преднамеренного или иного, данные, хранящиеся в энергозависимом ОЗУ, теряются. С внедрением технологии энергонезависимой памяти с произвольным доступом базы данных в памяти смогут работать на полной скорости и сохранять данные в случае сбоя питания.

Содержание
  • 1 ACID поддержка
  • 2 Гибриды с базами данных на диске
  • 3 Память для хранения
  • 4 См. также
  • 5 Примечания
  • 6 Ссылки
  • 7 Внешние ссылки
Поддержка ACID

В своей простейшей форме базы данных основной памяти хранят данные на устройствах энергозависимой памяти. Эти устройства теряют всю сохраненную информацию, когда устройство теряет питание или перезагружается. В этом случае можно сказать, что IMDB не поддерживают «долговечность» свойства ACID (атомарность, согласованность, изоляция, долговечность). IMDB на основе энергозависимой памяти могут поддерживать и часто поддерживают три других свойства ACID: атомарность, согласованность и изоляцию.

Многие IMDB увеличили надежность с помощью следующих механизмов:

  • файлы моментальных снимков или изображения контрольных точек, которые записывают состояние базы данных в данный момент времени. Система обычно генерирует их периодически или, по крайней мере, когда IMDB выполняет контролируемое отключение. Хотя они обеспечивают определенную устойчивость данных (в том смысле, что база данных не теряет все в случае сбоя системы), они предлагают только частичную долговечность (поскольку «недавние» изменения будут потеряны). Для полной долговечности они нуждаются в дополнении с одним из следующих вариантов:
  • Журнал транзакций, который записывает изменения в базу данных в файл журнала и облегчает автоматическое восстановление базы данных в памяти.
  • Энергонезависимый модуль DIMM (NVDIMM ), модуль памяти с интерфейсом DRAM, часто в сочетании с флэш-памятью NAND для энергонезависимой защиты данных. Первые решения NVDIMM были разработаны с использованием суперконденсаторов вместо батарей для резервного источника питания..С этим хранилищем IMDB может безопасно выйти из своего состояния после перезагрузки.
  • Энергонезависимая память с произвольным доступом (NVRAM), обычно в виде статической RAM с резервным питанием от батареи (батарея RAM), или электрически стираемое программируемое ПЗУ (EEPROM ). С этим хранилищем перезагружающаяся система IMDB может восстановить хранилище данных из его последнего согласованного состояния.
  • Реализации высокой доступности, которые полагаются на базу данных репликация, с автоматическим переключением на идентичную резервную базу данных в случае сбой первичной базы данных. Для защиты от потери данных в случае полного сбоя системы репликация IMDB обычно используется в дополнение к одному или нескольким механизмам, перечисленным выше.

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

Гибриды с базами данных на диске

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

Гибкость гибридных подходов позволяет найти баланс между:

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

в облачные вычисления отрасль термины «температура данных» или «горячие данные» и «холодные данные» появились для описания того, как данные хранятся в этом отношении. Горячие данные используются для описания критически важных данных, к которым требуется частый доступ, в то время как холодные данные описывают данные, которые требуются реже и менее срочно, например данные, хранящиеся для целей архивирования или аудита. Горячие данные должны храниться таким образом, чтобы предлагать быстрое извлечение и модификацию, часто выполняемое хранением в памяти, но не всегда. С другой стороны, холодные данные можно хранить более экономичным способом, и считается, что доступ к данным, вероятно, будет медленнее по сравнению с горячими данными. Хотя эти описания полезны, нет конкретного определения для «горячего» и «холодного».

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

Первый механизм базы данных, поддерживающий таблицы как в памяти, так и на диске в одной базе данных, WebDNA, был выпущен в 1995 году.

Память для хранения

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

См. Также
Примечания
Ссылки
  • Джек Белзер. Энциклопедия компьютерных наук и технологий - Том 14: Системы очень больших баз данных с нулевой памятью и марковским источником информации. Marcel Dekker Inc. ISBN 978-0-8247-2214-2.
Внешние ссылки
Последняя правка сделана 2021-05-23 12:36:10
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте