Aleksandr
Только не говори, что все сиквельные базы такое поддерживают из коробки
Αλεχ
Можно аггрегейтом, можно мап-редьюсом
и даже не будет работать как говно на миллионах азписей?
Αλεχ
как хуярил всякие unwind и прочее говно
Aleksandr
MariaDB?
Aleksandr
Percona?
Αλεχ
https://dev.mysql.com/doc/refman/8.0/en/window-function-descriptions.html
Αλεχ
https://mariadb.com/kb/en/library/lag/
Aleksandr
https://mariadb.com/kb/en/library/lag/
Ты только что говорил о том, что все функции БД должны быть поддержаны с версии 1.0
Aleksandr
Тут как бы 8.0
Αλεχ
https://mariadb.com/kb/en/library/lag/
https://www.percona.com/live/plam16/sessions/optimizing-queries-using-window-functions
Aleksandr
Не, круто что сиквел разивается и прочее, но это не означает, что все должны копировать синтаксис с них. Повторюсь, аггрегейты есть давно и там можно это сделать
Αλεχ
к слову про забаненых в гугле
Alexander
select index, starttime, endtime, starttime - lag(endtime) over(order by starttime asc) as delta from test
Как же страшно это написано в сравнении с кдб
Aleksandr
к слову про забаненых в гугле
Ну я как минимум не жалуюсь что чего-то где-то сделано не так, как я ожидал - я ожидаю, что везде всё по-разному, потому что иначе непонятно, зачем нужны разные решения
Aleksandr
И да, я не знаю всего функционала всех баз, и слава богу
Αλεχ
в sql я единственное что сталкивался - говно при обработке XML средствами базы
Αλεχ
только базовый функционал типа "пройдись по всем дочерним записям и обнови знчение "это блин не рокет саенс
Αλεχ
и я да, требую его наличие
Αλεχ
они починили это, красавцы
Αλεχ
только куча других проблем осталась
Αλεχ
и я не горю желанием в очередной раз с эти столкнуться
Αλεχ
когда у меня на таску заканчивается время
Αλεχ
а я понимаю, что хуйню нужно на клиенте делать
Aleksandr
Это прямо совсем разные вещи
Aleksandr
Они были в монге всегда разными
Αλεχ
Ты путаешь ДОЧЕРНИЕ ЗАПИСИ и внутренние документы
у нас считай была одна коллекция с YobaHuyoba
Αλεχ
и нужно было обновить документ на 2-3 уровне вложенности
Αλεχ
типа foo.bar.each(|x| x.baz += 1))
Αλεχ
и по простому это не решалось
Αλεχ
особенно если учесть изначальные ограничения на 2.6
Αλεχ
про шардинг и рандомное падение производительности писать не буду
Αλεχ
короч
Αλεχ
кто хочет - пользуйтесь
Αλεχ
у меня опыт негативный
Αλεχ
в своих проектах я постараюсь избежать
Aleksandr
и по простому это не решалось
Вы изначально не поняли инструмент, а потом начали на него жаловаться. Проблема в том, что монга не была создана для таких случаев, как и sql-базы не созданы были вообще для вложенных документов, но на них за это ты не жалуешься
Αλεχ
тем более, что shemaless это не то, что нужно нормальным проектам
Αλεχ
с code first
Αλεχ
они прямо говорят
Αλεχ
"хуярь нормализацию. и тогда все будет чики-пуки"
Αλεχ
"а до тех пор - хер тебе в рыло"
Αλεχ
смысл в здоровой абстракции
Αλεχ
я хочу иметь возможность писать db.Save(object)
Αλεχ
и чтобы оно там под капотом как угодно хуярилось
Αλεχ
и чтобы я могу быстрые фильтры строить
Αλεχ
и мигрировать при необходимости
Αλεχ
не охуеть какие требования
Aleksandr
) ну тогда тебе надо в файлик писать
Aleksandr
Оно быстрее даже будет
Aleksandr
Если ты не запариваешься что ты делаешь а потом жалуешься на базу
Αλεχ
уже на 100к записей тормозит ощутимо
Αλεχ
Если ты не запариваешься что ты делаешь а потом жалуешься на базу
если есть инструмент, который позволяет не запариваться - почемун ет?
Αλεχ
что за С++ "ты недостаточно страдал"?
Αλεχ
Αλεχ
нечего тереть
Αλεχ
я бы с радостью
Αλεχ
Если ты не запариваешься что ты делаешь а потом жалуешься на базу
если есть две альтернативы, но в одной мне надо напрягаться, чтобы чего-то получить, нахера она мне?
Αλεχ
вот сириузли
Aleksandr
если есть инструмент, который позволяет не запариваться - почемун ет?
В монге как раз пишут db.Save(), но ты жалуешься, в sql где тебе надо 5 прыжков чтобы дойти до этого хотя бы в первом приближении ты счастлив, ок
Αλεχ
если бы я за это что-то получил, то тогда понятно
Αλεχ
я в sql так и пишу
Αλεχ
using(var context = new DbContext()) { context.MyTable.Insert(new MyData("Foo", "Bar", "Baz")); }
Αλεχ
просто и понятно
Αλεχ
и то что оно там какие-то дочерние таблицы заполнит и еще какую-то хуйню мне ваще не важно
Αλεχ
оно просто работает
Aleksandr
После написания описания моделей, после описания взаимосвязей счётчиков с дочерними объектами, после всего этого да
Αλεχ
я ничего не пишу