Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2018 December 26

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
говорю как человек, которому пришлось свапать недавно. И было очень больно
источник

Вт

Ві тя in NodeUA - JavaScript and Node.js in Ukraine
Andrew Ostrovskii
а как тогда решаете проблему свапа БД
rm -rf ./project; mkdir project
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
Ві тя
rm -rf ./project; mkdir project
источник

OG

Oleg Gorelkin in NodeUA - JavaScript and Node.js in Ukraine
Ві тя
где пруфы?) кто мешает написать свой драйвер к орм?
пруфы, на самом деле, в самой идее орм. они генерируют запрос, опираясь на документоориентированную структуру данных в модельном слое. в итоге получаются запросы с неимоверным количеством джоинов. и, что хуже всего, их практически невозможно оптимизировать на больших проектах
источник

OG

Oleg Gorelkin in NodeUA - JavaScript and Node.js in Ukraine
я в свое время сталкивался с ситуацией когда данные в модель джоинились по 35 (или около того) таблицам, объем возвращаемых данных по одному запросу превышал 10 гигабайт
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
Oleg Gorelkin
пруфы, на самом деле, в самой идее орм. они генерируют запрос, опираясь на документоориентированную структуру данных в модельном слое. в итоге получаются запросы с неимоверным количеством джоинов. и, что хуже всего, их практически невозможно оптимизировать на больших проектах
Ну у них же есть какой-то контроль, который дает сама ORM. Тот же fetch eager в doctrine например, чтоб не плодить 45к джоинов
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
Хотя, справедливости ради, где-то видел график любви ORM. Где чем больше человек знает SQL, тем меньше любит ORM)
источник

OG

Oleg Gorelkin in NodeUA - JavaScript and Node.js in Ukraine
Andrew Ostrovskii
Ну у них же есть какой-то контроль, который дает сама ORM. Тот же fetch eager в doctrine например, чтоб не плодить 45к джоинов
возможно мое sequelize-fu было недостаточно сильно, но я ничего такого не нашел конкретно в сиквелайзе
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
Oleg Gorelkin
возможно мое sequelize-fu было недостаточно сильно, но я ничего такого не нашел конкретно в сиквелайзе
Про сиквелайз не в курсе, второй день с ним работаю

Я о том, что этот контроль, дает сам продукт, в виде ОРМ. Т.е. странно говорить, что все продукты неоч, на основе одного
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
потому и вспомнил доктрину
источник

OG

Oleg Gorelkin in NodeUA - JavaScript and Node.js in Ukraine
Andrew Ostrovskii
Хотя, справедливости ради, где-то видел график любви ORM. Где чем больше человек знает SQL, тем меньше любит ORM)
кстати соглашусь ) зачастую проще выучить один раз SQL чем каждый раз приноравливаться к новой ормке

хотя джависты да, как-то работают с орм и зачастую знают SQL очень так себе
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
Oleg Gorelkin
кстати соглашусь ) зачастую проще выучить один раз SQL чем каждый раз приноравливаться к новой ормке

хотя джависты да, как-то работают с орм и зачастую знают SQL очень так себе
Ну, пока не нужно думать, как переходить с одной бд на другую, то да, инлайн SQL это прекрасно)
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
Вообщем, @tshemsedinov  будем ждать доклад, по поводу "почему ORM зло" )
источник

OG

Oleg Gorelkin in NodeUA - JavaScript and Node.js in Ukraine
Andrew Ostrovskii
Ну, пока не нужно думать, как переходить с одной бд на другую, то да, инлайн SQL это прекрасно)
тут иногда с одной  версии ноды на другую мигрировать проблема, что уж про бд говорить )
источник

Вт

Ві тя in NodeUA - JavaScript and Node.js in Ukraine
ви щас серьезно
источник

Вт

Ві тя in NodeUA - JavaScript and Node.js in Ukraine
почему б на ассемблере не писать ведь компилятор все-равно в кашу скомпилит ваш код
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
Ві тя
почему б на ассемблере не писать ведь компилятор все-равно в кашу скомпилит ваш код
меньше гибкости. Я так понимаю, тут речь о гибкости как раз.

Хотя я всё равно за ОРМки
источник

AO

Andrew Ostrovskii in NodeUA - JavaScript and Node.js in Ukraine
и она тоже от ОРМки зависит
источник

Вт

Ві тя in NodeUA - JavaScript and Node.js in Ukraine
орм не только для "на коленке", это нормально так экономит время и позволяет не менять контекст часто, что, доказано, самая затратная операция для погромиста
источник

OG

Oleg Gorelkin in NodeUA - JavaScript and Node.js in Ukraine
Ві тя
почему б на ассемблере не писать ведь компилятор все-равно в кашу скомпилит ваш код
потому что смысла в этом немного. затраты времени на разработку несоизмеримо выше выигрыша во времени исполнения кода.

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