@dba_ru

Страница 492 из 718
Dmitrii
28.04.2018
13:45:18
Юзер жмет кнопку "старт", я кладу запись с отметкой времени и типом, пока видится как оптимальная структура, но не совсем ясно как теперь вычислять удобно результаты

Хотя вот кажется lead/lag должно помочь наверное

Хотя вот не совсем понятно до конца, если у меня есть тип "пауза", исключить такие записи из выборки я не могу, тогда таймлайн разломается, а временные интервалы пауз мне суммировать не надо

Al
28.04.2018
14:00:01
Атрибуты бывают разных типов. Для них и нужно.
я видимо чего то не знаю о электронных компонентах

Google
Dmitrii
28.04.2018
14:01:42
а причем тут БД?
Предлагаете отправиться чатик по постгресу с этим вопросом?)

Al
28.04.2018
14:03:10
Предлагаете отправиться чатик по постгресу с этим вопросом?)
а зачем вообще в этом процессе база данных?

Dmitrii
28.04.2018
14:03:39
Потому что я не фанат лопатить данные в приложении.

Когда такие вещи можно "спросить" у базы данных, которая и собственно хранит (ближе всего) к этим самым данным

Al
28.04.2018
14:09:55
Потому что я не фанат лопатить данные в приложении.
ну тогда я бы предложил подумать как это хранить... и главное зачем

Ilia
28.04.2018
14:16:42
я видимо чего то не знаю о электронных компонентах
Ты про EAV видимо не знаешь/догоняешь. Там это типичная проблема. При чём независимо от предметной области.

Al
28.04.2018
14:17:20
Dmitrii
28.04.2018
14:19:52
ну тогда я бы предложил подумать как это хранить... и главное зачем
Ну сейчас это хранится построчно — id, timestamp, action

Dmitrii
28.04.2018
14:20:44
подумай еще
Это типа саркастическая подсказка или серьезный совет?)

Al
28.04.2018
14:20:46
представь что ты хранишь сессию. у которой есть начало, конец, продолжительность

Google
Dmitrii
28.04.2018
14:21:19
Хранение просто одной отметки избавляет меня от проблем с вычислением дюрейшена

Что я сильно не хотел бы делать

Al
28.04.2018
14:21:56
Хранение просто одной отметки избавляет меня от проблем с вычислением дюрейшена
а ну да. зато потом ты сидишь и такой чешешь репу как же мне это посчитать когда все это свалено как попало. ГЕНИАЛЬНО!

Dmitrii
28.04.2018
14:22:26
У всего есть свои плюсы и минусы ) Осталось понять насколько велики минусы текущие

Потму что вычисление дюрейшена это дополнительные запросы в базу из приложения, потенциальные баги + потенциальные сбои по секундам в дюрейшене

В кино же тоже снимаю по несколько концовок / вариаций. Вот и я так же ) Хочу понять на сколько "убог" будет вариант с селектингом на уровне базы, потому что минусы с вариантом на уровне приложения чист и понятен

Ilia
28.04.2018
14:25:39
Потму что вычисление дюрейшена это дополнительные запросы в базу из приложения, потенциальные баги + потенциальные сбои по секундам в дюрейшене
Я думаю тебе надо разделить БД на две части, одну оперативную, с фиксацией событий, другую историческую, где события будут предобработаны и выложены в удобном для поиска/обработки виде

Dmitrii
28.04.2018
14:26:00
У меня тут MVP ребят, какие две базы, вы что )

Ilia
28.04.2018
14:26:39
и запрашивать ДВЕ БАЗЫ КАРЛ? ты че
ЗАпрашивать одну базу. ПОтом, не БАЗУ а ЧАСТЬ БАЗЫ.

Al
28.04.2018
14:27:36
ЗАпрашивать одну базу. ПОтом, не БАЗУ а ЧАСТЬ БАЗЫ.
он и одну то не хочет запрашивать и потом вычислять и апдейтить.. а ты хочешь что бы две

Dmitrii
28.04.2018
14:29:07
MVP это что?
Minimum viable product

Ilia
28.04.2018
14:29:38
БЛЯТЬЭТОЁБАНЫЙ РКН ПОЛИНТЕРНЕТА ЗАБАНИЛ!

Нихера не найти!

Denis
28.04.2018
14:30:12
Ilia
28.04.2018
14:31:10
Minimum viable product
Ну я боюсь каким бы он ни был минимальным, а чтобы был viable (я уже забыл как переводится), то ПРИДЁТСЯ иметь две части в БД и делать последовательную предобработку.

Google
Ilia
28.04.2018
14:31:33
Я же говорю, такие запросы хреново работают.

Dmitrii
28.04.2018
14:31:45
Я почти дописал этот конский запрос на вычисление, щас скоро вам на суд представлю.

Ilia
28.04.2018
14:32:04
Возможно, у тебя какой-то частный случай и у тебя будет всё ок. ТОгда не ясно с чего ты спрашиваешь

Dmitrii
28.04.2018
14:32:38
Ну просто малоли я что-то упустил ) Щас посмотрим

Я всегда рад спросить совета )

Где срач, там и истина, сами же знаете.

Al
28.04.2018
14:33:07
Я почти дописал этот конский запрос на вычисление, щас скоро вам на суд представлю.
я прям чета под столом уже... то есть ради того что бы не обращатся один раз в базу и расчета в одной строчке и апдейта строки. ты решил нагрузить базу так что бы она аж окосела расчитывая твой еюический запрос?

Al
28.04.2018
14:33:49
если там кто рядом. то сломайте ему пальцы

Dmitrii
28.04.2018
14:34:32
Чем меньше кода написано тем меньше потенциальных багов, вопрос производительности пока десятый

Dmitrii
28.04.2018
14:34:45
Обратное тоже верно.
Согласен, везде надо смотреть

Al
28.04.2018
14:35:12
Не все запросы которые выглядят как кусок говна работают долго, кстати.
давай я тебе кое что раскажу про работу баз... то что ты пишеш один длинный запрос нихрена не значит что ты обратился в базу один раз... технчиески да. от клиента ушел один запрос. но на практике твой запрос получит интерпретатор и он будет ибическое количество раз запрашивать базу пока не соберет все данные. и потом их считать..

и заместо одного запроса и 1 апдейта. ты получишь полное веселье на стороне базы. и это веселье с ростом клиентов будет расти геометрически

Dmitrii
28.04.2018
14:36:49
Смотрите, мне на основе времени людям бабки платить, если что-то не так пойдет в PHP (а так всегда бывает, ну вы же все знаете) то проеб по деньгам мне нужен меньше всего на свете

(вместо)

Dmitrii
28.04.2018
14:37:40
Не знаю даже как донести иначе

Al
28.04.2018
14:37:42
ты думаешь что ты в 2018 году изобрел контроль рабочего времени?

Google
Ilia
28.04.2018
14:38:01
Dmitrii
28.04.2018
14:38:16
Да как только AI перестанет вопросами заваливать!)

Алексей
28.04.2018
14:38:25
А постгри кэштрует запросы?

Dmitrii
28.04.2018
14:39:16
А постгри кэштрует запросы?
Там есть генетический оптимизатор

Ilia
28.04.2018
14:40:08
Ой тут что-то было такое красивое.... НО я не успел рассмотреть

Алексей
28.04.2018
14:42:43
В каком смысле?
Ну умеем запрос, на выборку одной строки, с условием - условие попадает в индекс. И по идее нада бы закэшировать или план выполнения запроса, или сам запрос - точнее сейчас не смогу сказать. Суть в том чтоб не оптимизатор каждый раз мучать, а по кэшу работать. з.ы. почему вопрос возник - давно постгри не смотрел, более с другими БД работал

Ilia
28.04.2018
14:42:59
А постгри кэштрует запросы?
Если в смысле как MySQL, то НЕТ. Он данные кэширует. Кэшировать запросы бессмысленно

Admin
ERROR: S client not available

Алексей
28.04.2018
14:43:30
нет имелось ввиду план выполнения запроса поселить в кэш

Алексей
28.04.2018
14:44:44
просто в MySQL кэш планов запросов помоему живет токо пока есть соединение. Я последние пол года просто NoSQL БД мучаю - сейчас тяжко немного - но скроро пройдет

Ilia
28.04.2018
14:46:24
Да, привыкай к хорошему...

Но в принципе кэши планов делают во всех СУБД.

sha-bang
28.04.2018
14:56:27
Приветствую А не подскажете, можно ли проверить пустой результат в mysql? то есть что-то вроде IF EXISTS (select a from table) select a from table ELSE select b from table

Dmitrii
28.04.2018
14:59:54
Ты запрос обещал...
https://gist.github.com/korotovsky/51135a9ededdba50ef4a6d63ab58517f

@AlexCAD ^ ?

Google
Игорь
28.04.2018
15:06:07
Еще раз здравствуйте) ни у кого случайно нет дико тюнингованного конфига для Single Node кассандры ?) (Можно шутить про "в гугле забанили")

Dmitrii
28.04.2018
15:06:57
Игорь
28.04.2018
15:08:53
Ну по идее 15 нетюнингованных Должны быть быстрее на чтение, верно?)

Al
28.04.2018
15:10:52
Ну по идее 15 нетюнингованных Должны быть быстрее на чтение, верно?)
как то сомнительно. я сделал проще. после записи жду когда станет доступно для чтения

Игорь
28.04.2018
15:17:03
Это как? Если после записи час подождать, то у меня на чтение запросы после этого быстрее выполняться будут или как?)

О, еще вопрос: кто-нибудь знает, как запустить кассандру in-memory. Я видел только как DataStax добавил такую фичу в свою сборку кассандры ( по их словам прирост в 10-100 раз был по скорости). Сейчас это как-то руками мб можно сделать, используя только MemTable?

И почему сомнительно? Я где-то читал, что там с добавлением узлов кассандры скорость чтения чуть ли не линейно повышается

Хотя мб я начитался статей и это не так работает)

Ilia
28.04.2018
15:43:21
Dmitrii
28.04.2018
15:43:47
А вы ожидали увидеть извращения на MySQL что-ли?)

Ilia
28.04.2018
15:45:41
не

https://gist.github.com/korotovsky/51135a9ededdba50ef4a6d63ab58517f
Зачем там PARTITION BY request_id если WHERE request_id = 'e85a7ba7-7313-44e0-a391-27e8b575187c'

Dmitrii
28.04.2018
15:47:51
Там позже будет IN ()

Ilia
28.04.2018
15:48:59
и чего IN?

request_id у тебя фиксированный в запросе, нафига тогда его в PARTITION?

Dmitrii
28.04.2018
15:49:39
WHERE request_id IN (...)

Страница 492 из 718