Определение In-Memory базы данных
Базы данных типа "in-memory" хранят данные в оперативной памяти компьютера, а не на дисковом носителе, что позволяет ускорить время отклика. Доступ к данным, хранящимся в памяти, исключает время, необходимое для запроса данных с диска. Базы данных in-memory используются в приложениях, которым требуется быстрое время отклика и управление данными в реальном времени. К отраслям, в которых используются базы данных in-memory, относятся телекоммуникации, банковское дело, туризм. Базы данных in-memory также называются базами данных основной памяти (MMDB), базами данных реального времени (RTDB) или системами баз данных in-memory (IMDS).
Вопросы и ответы
Что такое база данных в памяти?
База данных in-memory хранит все свои данные в оперативной памяти (RAM). При запросе данных доступ осуществляется только к основной памяти. Это позволяет ускорить доступ к данным по сравнению с дисковой системой.
Недостатком является нестабильность оперативной памяти. Данные теряются при сбое такой базы данных. Разработка энергонезависимой оперативной памяти может помочь in-memory базам данных сохранить данные после потери питания или сбоя. Одним из примеров является флэш-память, но ее существенным недостатком является ограничение на количество перезаписи данных. В настоящее время разрабатываются микросхемы NVRAM, которые обеспечивают более устойчивую память, чем флэш-память.
Как работает база данных “в памяти”?
Для хранения данных в in-memory БД вместо традиционных дисковых накопителей используется оперативная память компьютера (RAM). Данные загружаются в базу данных in-memory в сжатом нереляционном формате. А далее представляются в формате, пригодном для непосредственного использования, без барьеров, связанных со сжатием или же шифрованием. Это позволяет осуществлять прямую навигацию от индекса к строке или столбцу и является системой, доступной только для чтения.
Скорость работы базы данных in-memory обеспечивается за счет отсутствия трансляции и кэширования. Данные используются в том же виде, что и содержащее их приложение. Управление доступом к данным осуществляется специальной системой управления in-memory базами данных.
Система баз данных in-memory может также выступать в качестве аналитической базы данных, хранящей исторические данные по метрикам для приложений бизнес-аналитики, подразумевающей только чтение информации. При этом исключается индексирование данных, что позволяет снизить затраты на обслуживание. Мощные серверы, 64-разрядные вычисления и снижение цен на оперативную память сделали аналитику in-memory более распространенной и доступной.
Зачем использовать базу данных In-Memory?
Приложения, управляющие огромными объемами данных и требующие быстрого отклика, могут получить преимущества от архитектуры баз данных in-memory. Индустрия анализа данных все больше полагается на системы баз данных in-memory.
Преимущества баз данных in-memory включают:
- Ускоренный отклик
- Отсутствие трансляции
- Многопользовательский параллелизм
Базы данных in-memory широко используются для решения следующих задач:
- Оказание банковских услуг в реальном времени, розничная торговля, реклама, аналитика медицинских устройств, машинное обучение и приложения для выставления счетов
- Поддержка интерактивных онлайн-игр
- Обработка геопространственных данных
- Обработка потоковых данных с различных датчиков
- Разработка встраиваемых программных систем
- Выполнение требований приложений электронной коммерции
Базы данных In-Memory по сравнению с традиционными базами данных?
Сравнение базы данных in-memory с традиционной дисковой базой данных включает в себя следующие параметры: скорость, объем и надежность.
Базы данных in-memory быстрее традиционных баз данных, поскольку требуют меньшего ресурсов процессора. Кроме того, они исключают время, необходимое для доступа к данным с диска.
Базы данных in-memory менее надежны, чем традиционные базы данных, поскольку данные теряются при отключении питания или сбое оперативной памяти компьютера. Данные с дисков традиционных баз данных легче восстановить.
Традиционные базы данных формируются из дисковых накопителей, использующиеся для чтения и записи данных. Когда один сегмент традиционной базы данных ссылается на другой, запускается процесс перехода из сегмента в сегмент. В in-memory БД управление различными сегментами базы данных осуществляется с помощью прямых указателей.
Базы данных in-memory позволяют проводить анализ и создавать отчеты в реальном времени.
Традиционные базы данных хранят избыточные данные, поскольку для каждого компонента, добавляемого в систему, создается своя копия данных.
Как обезопасить базу данных In-Memory?
Чтобы избежать риска потери данных при отключении электричества или сбое компьютера, следует усовершенствовать базу данных in-memory с помощью энергонезависимой оперативной памяти(NVRAM). Также, несмотря на высокую стоимость и ограничение по количеству перезаписей, все еще часто используется флэш-память.