Где таблицы в Mnesia расположены?

Я пытаюсь сравнить Mnesia с более традиционными базами данных.

Насколько я понимаю таблицы в Mnesia могут быть расположены к (см. Потребление памяти в Mnesia):

  • ram_copies - таблицы хранятся в ets, так никакая длительность как в ACID.
  • disc_copies - таблицы расположены к ets и dets, таким образом, таблица не может быть больше, чем доступная память? И если таблица фрагментируется, база данных не может быть больше, чем доступная память?
  • disc_only_copies - таблицы расположены dets, так никакое кэширование в памяти и худшая производительность. И размер таблицы ограничен размером dets или таблица должна быть фрагментирована.

Таким образом, если я хочу выполнение выполнения чтений от RAM и длительности записей к диску, затем размер таблиц очень ограничен по сравнению с традиционным RDBMS как MySQL или PostgreSQL.

Я знаю, что Mnesia не предназначены для замены традиционного RDBMS:s, но он может использоваться в качестве большого RDBMS, или я должен искать другую базу данных?

Сервер, который я буду использовать, является VPS с ограниченным объемом памяти, приблизительно 512 МБ, но я хочу хорошую производительность базы данных.

disc_copies и другие типы таблиц в Mnesia так ограничили, как я понял? Разве база данных не может быть частично на памяти и полной копии на диске?

6
задан Jonas 4 September 2013 в 15:37
поделиться

1 ответ

Емкость хранилища базы данных Mnesia для различных типов таблиц обсуждалась в предыдущем вопросе SO:

Какова емкость хранилища базы данных Mnesia?

где уже есть отличный ответ.

Очевидно (но я думаю, вы уже видели это) официальный документ доступен по адресу:

http://www.erlang.org/doc/man/mnesia.html

Кроме того, чтение из Mnesia FAQ :

11.5 Сколько данных может храниться в Mnesia?

Dets использует 32-битные целые числа для смещения файлов , поэтому максимально возможная таблица мнезии (на данный момент) составляет 4 Гб.

На практике ваша машина замедлится до сканирования, прежде чем вы достигнете этого предела .

Наконец, таблицы Mnesia могут быть фрагментированы . Это обсуждается здесь и там .

Это мои 2р.

2
ответ дан 17 December 2019 в 20:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: