Denis
или еще как.
Alex
в нашей сеточки по 10 млрд в месяц показов кртуилось
Alex
как-то всё считали...
yopp
я ещё раз вопрос повторю: почему возникла ситуация при которой надо табличку на табличку накатывать
Alex
с преагрегацией и прочими прелстеями
Alex
это имхо монго мышление табличку на табличку
yopp
в монге нет табличек
Denis
в нашей сеточки по 10 млрд в месяц показов кртуилось
чувак успакойся ) это не ртб\ссп\дсп\дмп етц, я 8 месяцев назад ушел из рекламы, мы откручивали 300млрд в месяц с монгами и не плакали.
Denis
вторая коллекция это по факту вектор изменений.
Denis
мы можем его формировать на основании различных данных входных, и это позволяет нам знать о том, что необходимо пересчитать сегодня, тоесть то у чего сегодня как то поменяются данные.
Denis
это удобно, и позволяет нам не сканить 30м объектов и всех их чекать.
yopp
почему нельзя это хранить сразу в одном документе?
yopp
и сразу принимать решение?
Denis
какое ?
yopp
или решение только ретроспективно может быть принято?
yopp
«это позволяет нам знать о том, что необходимо пересчитать сегодня»
Denis
ну смотри, у тебя фильм скажем, написано "доступен для просмотра с 25авг до 1сент" а первоого числа нам скажут что он теперь доступен с 1сен до 31дек.
Denis
мне нет смысла каждый день для него чекать все его права информация о том что нада пересчитать 30дек попадет во вторую коллекцию и мы пересчитаем все это.
Alex
а вообще это забавная штука такие данные в базе считать
yopp
эм
yopp
а что мешает просто обновлять поле valid_before?
yopp
и фильтровать по этому полю?
yopp
30м объектов при правильной упаковке это мало индексов
yopp
я когда делал рисёрч для нашей штуки, у меня получилось для нашего кейса сделать штуку, которая хранит 10м событий в 360мб (210мб в snappy) + 50мб индексов
yopp
ой
yopp
простите, я вас наебал
yopp
500мб (240мб snappy) + 88 метров индексов
yopp
там 4 индекса
Denis
а что мешает просто обновлять поле valid_before?
я не уверен что 500к объектов обновятся быстро.
Denis
я расчитываю где то на 2к апдейтов/сек это будет 250сек.
Alex
Ну... есть разные методы...
Denis
говори, тока без постгри )
Alex
почему бы не держать горячие данные в каком нить erlang/scala и на акторах это все считать ? или включать выключать ?
Alex
думаю даже вполне себе реалтайм получиться
Denis
почему бы не держать горячие данные в каком нить erlang/scala и на акторах это все считать ? или включать выключать ?
и зачем ? это разовый процесс. раз в сутки, обновить каких то там 500к записей. а ты тут про скалу, эрланги, акторы хуе мое
Denis
и как они помогут я тож не понимаю рили.
Denis
проблема в том чтобы диф вмерджить максимально быстро
Alex
они будут по факту обновлять
Alex
не будет дифа
Denis
по факту мы и так можем
yopp
у тебя все 500к объектов обновляются _постоянно_?
Denis
когда заполняем коллекцию вторую.
Denis
ох.
yopp
я не понимаю зачем делать всё раз в сутки
Denis
500к это то что накапливается во второй табличке, и подлежит обновлению.
Alex
+1
Alex
это 3 апдейта в секунду
Alex
что вообщем то немного
Denis
потому что такие условия
yopp
условия внутренние или внешние?
Denis
типа вырубить доступ в 00:00 такого то числа
Denis
внешние
yopp
данные поступают снаружи строго раз в сутки?
Denis
нет,
Denis
они поступают снаружи в течении суток из различных источников
Denis
и раз в сутки их применить нужно.
Alex
и в чем проблема их процессить ?
yopp
и что мешает обновлять по мере поступления?
Denis
ох.
Denis
потому что в первой табличке у меня не даты. а флаг true \ false
Alex
чтот напутано с проектированием
yopp
короче, я пойду дальше работать
Alex
кажется... имхо
Alex
да
Alex
вот
yopp
а ты подумай чо не так
yopp
потому что у тебя там бардак походу
Denis
да все так ) просто вы не можете решить бзадачу )
yopp
потому что ты проблему ставишь неправильно
yopp
вместо того чтоб разобраться почему тебе надо костыли
Denis
я ее не ставлю. она такая есть
Denis
я не вижу никаких костылей
Denis
я вижу источник данных, вижу место назначения этих данных
Denis
вижу трансформацию этих данных из даты во флаг
yopp
я вижу проблему в том что где-то флаги, а не даты :)
Denis
типа если время наступило мне нужно переключателем щелкнуть
yopp
идея «переключателя» очень плохая