Что дороже для оперативной памяти, понимания списка запросов или мнезии index_read? - PullRequest
4 голосов
/ 18 июля 2011

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

Какой из двух вариантов является более эффективным?Понимание списка запросов или чтение индекса мнезии?

1 Ответ

5 голосов
/ 18 июля 2011

Ну, для индексов потребуется больше дискового пространства.Для каждого фрагмента таблицы mnesia создаст отдельный индексный файл.Однако чтение по индексу более эффективно из опыта.

QLC будет потреблять больше памяти во время выполнения, особенно когда результатов запроса так много.Это потребует от вас использования Query Cursors.Я советую вам использовать Index read.Чтение индексов совсем не дорого для ОЗУ, потому что это нормальное чтение, хотя mnesia сначала должна обратиться к файлу индекса.QLC хорош, когда речь идет о сложных табличных связях и оценке возвращаемых значений в пакете.Тем не менее, это приводит к затратам на обработку и памяти, когда результаты слишком много.Обратите внимание, что QLC использует mnesia: select / 1,2 и 4 (какой именно, я не уверен), но я знаю, что select - это операция, которая заставляет mnesia обойти всю таблицу в поисках записей.чтение лучше, чем понимание списка запросов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...