Я пытаюсь сравнить Mnesia с более традиционными базами данных.
Насколько я понимаю, таблицы в Mnesia могут быть расположены по адресу (см. Потребление памяти в Mnesia ):
ram_copies
- таблицы хранятся в ets
, поэтому срок службы не такой, как в ACID.
disc_copies
- таблицы расположены на ets
и dets
, поэтому таблица не может быть больше доступной памяти? А если таблица фрагментирована, база данных не может быть больше доступной памяти?
disc_only_copies
- таблицы расположены dets
, поэтому нет кеширования в памяти и хуже производительность. И размер таблицы ограничен размером dets
или таблица должна быть фрагментирована.
Поэтому, если я хочу, чтобы производительность чтения из ОЗУ была выше, а продолжительность записи на диск была длительной, то размер таблиц очень ограничен по сравнению с традиционной СУБД, такой как MySQL или PostgreSQL.
Я знаю, что Mnesia не предназначена для замены традиционных СУБД, но может ли она использоваться как большая СУБД или мне нужно искать другую базу данных?
Сервер, который я буду использовать, представляет собой VPS с ограниченным объемом памяти, около 512 МБ , но мне нужна хорошая производительность базы данных.
Являются ли disc_copies
и другие типы таблиц в Mnesia настолько ограниченными, насколько я понял? Разве база данных не может быть частично в памяти и полная копия на диске?