Как это обычно бывает, у этого термина нет устойчивого русского перевода, это что-то вроде «базы данных в оперативной памяти».
Мы все помним известное сокращение ACID, обозначающее требования к транзакционной системе: атомарность, согласованность, изолированность, надежность. Но в мире больших данных, где постоянно растут требования к объему и скорости обрабатываемых данных, часто жертвуют одним из этих требований, чтобы обеспечить необходимую производительность. In-memory базы данных – типичный пример такого подхода.
Базы данных in-memory хранятся в оперативной памяти сервера. Очевидно, что это обеспечивает большие преимущества в скорости, поскольку операции с данными в памяти выполняются меньшим числом инструкций процессора, а время доступа к данным операциями типа seek вообще несравнимо – оперативная память глобально выигрывает у жесткого диска.
В терминах ACID базы данных in-memory конечно жертвуют надежностью, ведь при обесточивании или перезагрузке в них пропадают все данные. Существуют ряд методов, которые позволяют снизить этот риск: