Тесты mnesia (в задаче обработки котировок)

Dec 19, 2007 14:27

Модельная задача следующая: обрабатываем пакеты котировок по разным инструментам, формируем из них агрегаты OHLC, пишем их на диск раз в минуту.

дальше )

erlang, mnesia, тесты

Leave a comment

dbg December 19 2007, 12:04:17 UTC
Попробуй еще хэш поверх функциональных массивов, которые появились в R12, - помнишь, мы с тобой говорили по телефону об этом.

Reply

gaperton December 19 2007, 12:16:04 UTC
Интересная идея. Только надо разработать стратегию динамического увеличения диапазона хэша. Как это сделать эффективно, чтобы не налетель на однократный O(N) при очередной вставке, не вполне понятно.

Reply

dbg December 19 2007, 12:23:40 UTC
Они там sparse.

Reply

gaperton December 19 2007, 12:40:53 UTC
Это не решит проблемы. Если они сделаны по типу b-tree, то чтобы не жрать в недецких количествах память индексы должны быть кучными, что хрен обеспечишь. Во-вторых, нефигово было бы ограничить длину целого ключа, иначе сильно распухнет индекс. Плюс пойдут тормоза из-за long-int.

Хотя... В моем случае у меня как раз таки есть возможность раздать индексы всем инструментам так, чтобы они были кучными. Надо попробовать.

Reply

gaperton December 19 2007, 14:39:40 UTC
Нет, черт возьми. Так нельзя. Даже если массив будет быстрым (в чем я лично сомневаюсь), это вынудит выполнять преобразование из имени инструмента в номер на парсинге, а это полная задница. Потому, что этот маппинг придется хранить в mnesia. Получим тормоза в парсере котировок.

Можно конечно извратнутся и закэшировать таблицу mnesia в словаре процесса подписавшись на уведомления об изменениях от mnesia (гы! прикольное решение!). Надо подумать об этом изврате, это в принципе вполне себе вариант для реплик таблиц, которые только читаются.

Reply


Leave a comment

Up