@rubylang

Страница 431 из 1684
Mikhail
23.09.2016
17:09:31
это расписание на дни

каждый день разное время

Сергей
23.09.2016
17:09:43
старые архивировать

ojab
23.09.2016
17:10:15
зачем что-то архивировать?

Google
Антон
23.09.2016
17:10:30
10к записей с учетом что все пришли днем это всего 833 записи в час

Сергей
23.09.2016
17:10:35
чтобы не хранить в базе уже не нужные записи

Антон
23.09.2016
17:10:36
я не понимаю в чем паника

Mikhail
23.09.2016
17:10:38
Проблема не в час

Да не, проблема же, что в бд в которой например 50 миллионов записей выборку сделать

будет тормозить нет?

ojab
23.09.2016
17:11:20
хз

Mikhail
23.09.2016
17:11:24
Просто с ростом клиентов будет табличка timetable заполняться быстрее

ojab
23.09.2016
17:11:28
зависит от множества факторов

timetable фиксированные для каждого клиента?

Сергей
23.09.2016
17:11:42
если будет тормозить тогда делать архивацию старых

но для постгреса 50М записей это норм Если индексы правильные

Mikhail
23.09.2016
17:11:59
timetable на каждое кафе например каждого клиента

Google
Mikhail
23.09.2016
17:12:08
на каждое время

да 50 миллионов реально набрать за 3-6 месяцев

если писать каждое время как запись в бд

надо обходить

ojab
23.09.2016
17:12:42
хранишь timetable для клиентов в одной таблице и занятые слоты в другой

Mikhail
23.09.2016
17:12:47
надо писать только где бронь прошла

ну я про слоты и говорю

Антон
23.09.2016
17:13:05
я предлагаю дорости хотябы до 5м записей, а потом уже решать проблему

Антон
23.09.2016
17:13:22
у меня 4,7м записей, я подумываю, но пока забиваю

Mikhail
23.09.2016
17:13:27
у меня подобную штуку люди за неделю 10к набили

а они еще не начали работать

Антон
23.09.2016
17:13:44
будет 5м поговорим

Mikhail
23.09.2016
17:13:47
и это только тестовые свои забили

Антон
23.09.2016
17:13:54
ок

Mikhail
23.09.2016
17:13:56
Да я не спрашиваю как оптимизировать запрос

Антон
23.09.2016
17:13:59
у меня тестовые сделали 200к

Сергей
23.09.2016
17:14:08
я просто не понимаю, зачем хранить старые записи, которые не актуальны?

ojab
23.09.2016
17:14:22
50_000_000 / (24*4) = 520_000 клиентодней

Google
Mikhail
23.09.2016
17:14:25
Я спрашиваю сильно ли я потеряю если буду сравнивать дефолтный календарь с бронями на неделю и мержить их находу

ojab
23.09.2016
17:14:37
(я не думаю что гранулярность будет меньше 15 минут

нет, не сильно

Антон
23.09.2016
17:15:05
а что такое гранулярность?

ojab
23.09.2016
17:15:20
минимальная длина брони

Антон
23.09.2016
17:15:37
это отраслевая какая-то фигня?

ojab
23.09.2016
17:16:13
нет, это здравый смысл. Я думаю что вряд ли где-то нужно записываться для действа, которое занимает меньше 15 минут

Антон
23.09.2016
17:17:04
ну наверное

да влюбом случае, преждевременная оптимизация плохо

постфактум тоже плохо

Mikhail
23.09.2016
17:17:29
Антон
23.09.2016
17:17:36
надо вовремя оптимизировать

Mikhail
23.09.2016
17:17:49
да влюбом случае, преждевременная оптимизация плохо
это да. Но вопрос в архитектурном решение а не оптимизации

я же не спрашиваю как быстрее отрендерить хелло ворлд

через реакт компонент или js.erb паршиал

Антон
23.09.2016
17:18:28
я бы делал через erb

erb переверстать в реакт проще когда бизнес готов

я бы не нанимал фронта пока бизнес не перейдет на самоокупаемость вообще

Сергей
23.09.2016
17:19:21
скинь доки по архивированию записей
ну ты просто берешь тонну записей и экспортишь из бд а при надобности заносишь обратно

Mikhail
23.09.2016
17:19:42
вот тут или я создам табличку и буду генерить на неделю вперед слоты под время или я сделаю календарь и на его основе буду мержить в него брони и выдавать юзеру

Google
Антон
23.09.2016
17:20:10
давай созвонимся в понедельник, я протрезвею

ojab
23.09.2016
17:20:19
ну ты просто берешь тонну записей и экспортишь из бд а при надобности заносишь обратно
но вообще это нафиг не нужно и не пригодится, потому что проще сделать partitioning

Mikhail
23.09.2016
17:20:24
я теряю секунду примерно на sypex геолокации

а там только определие гео и я на сторону не звоню, на ходу из файла читаю

вот и 2 запроса плюс возня с массива не отнимет ли время

ojab
23.09.2016
17:21:42
тут большая проблема — как версионирование расписаний прикрутить

Mikhail
23.09.2016
17:21:44
не будет ли дольше чем простая выбора в миллионой бд

Антон
23.09.2016
17:21:49
сколько клиентов, сколько секунд потерь на клиента?

ojab
23.09.2016
17:21:57
потому что при смене расписания будет геморрой

Mikhail
23.09.2016
17:22:13
это да

Admin
ERROR: S client not available

Mikhail
23.09.2016
17:22:20
расписание будет изначально дефолтное

на 1 неделю

далее 1-2-3-4 неделя месяца

из расписания беру время, дату и прайс

и по умолчанию она is_free: true

вот я ее получаю и рендерю

Если юзер выбрал время и записался

то я планирую получать это расписание

получать на неделю вперед бронь для текущего «кафе»

Google
Mikhail
23.09.2016
17:24:20
и рендерить расписание и если время занято то is_free: false

придется повозится с массивами на ходу, но тогда у меня не будет кучи ненужных записей

решить только версионность расписания

можно версию раздавать какое сейчас включено и такая же версия расписания на брони

и в итоге если мой клиент работает с версией 2 например то для нее тянуться в2 брони

я вчера весь вечер гуглил и таймслот это боль еще та

ojab
23.09.2016
17:26:38
time_table "version, client_id, day_of_week(0-6), time (interval), price" timetable_version "client_id, start_time, finish_time" bookings "time_table_id customer_id date"

Mikhail
23.09.2016
17:27:10
Это канает в гостинице, там нету расписания. Там юзер их создает.

ojab
23.09.2016
17:27:26
джойнишь time_table с bookings за дату — получаешь все данные для расписания

единственная проблема — в дату перехода с версию на версию нужно будет что-то костылить

Mikhail
23.09.2016
17:28:03
да

ojab
23.09.2016
17:28:11
но если время перехода с начала суток — никаких проблем

Mikhail
23.09.2016
17:28:21
время перехода сначало суток

ojab
23.09.2016
17:28:29
таймзона одна?

Mikhail
23.09.2016
17:28:45
Нет

ojab
23.09.2016
17:28:53
тогда с начала часа

но тоже ок

Mikhail
23.09.2016
17:29:08
Но это не важно. Мы пишем и понимаем все относительно города в котором бронь

Поэтому если кафе создается для екб например

то и время брони ЕКБ понимают

ojab
23.09.2016
17:30:10
лучше так не делать, ибо у регионов бывает изменение таймзон, например

о переходе на летнее/зимнее время, благо, беспокоится не стоит если только РФ

Mikhail
23.09.2016
17:31:52
ну я нахожусь в екб и когда забиваю я пишу в 10 утра например

Страница 431 из 1684