Size: a a a

2020 May 15

🇻

🇻 🇱 🇦 🇩 in ru_mysql
Александр
А сколько первая команда выполнялась? 30-40 сек? Суммарно метод около минуты отрабатывал?
я всеравно не догнал, почему апдейт отдельно в pma, на запрос который собрала ormка выполнялся 20 сек, а запрос с join за 0.3 сек. что было лишнее в первом запросе?
источник

А

Александр in ru_mysql
Лишнее было ОРМ ))
источник

🇻

🇻 🇱 🇦 🇩 in ru_mysql
Александр
Лишнее было ОРМ ))
оффтоп, как вы научились по ночам не спать?
источник

А

Александр in ru_mysql
Спал но мало
источник

А

Александр in ru_mysql
До этого выспался и сегодня пятница, расслабленный день, дреману часик в обед
источник

🇻

🇻 🇱 🇦 🇩 in ru_mysql
Александр
Лишнее было ОРМ ))
окей. но ормка ток собирает сырой запрос и отправляет в бд. не?
источник

А

Александр in ru_mysql
Да, но она собирает совсем не то что мы хотим
источник

А

Александр in ru_mysql
И запросов как минимум не один
источник

А

Александр in ru_mysql
Люблю Тома Кайта на эту тему цитировать:
если можно, сделай это с помощью одного оператора SQL;

если это нельзя сделать с помощью одного оператора SQL, сделай это в PL/SQL;

если это нельзя сделать в PL/SQL, попытайся использовать хранимую процедуру на языке Java;

если это нельзя сделать в Java, сделай это в виде внешней процедуры на языке C;

если это нельзя реализовать в виде внешней процедуры на языке C, надо серьезно подумать, зачем это вообще делать...
источник

MC

Mr. Crestoff in ru_mysql
Александр
Лишнее было ОРМ ))
Ща доберусь до компа, буду манипулировать с запросом)
источник

MC

Mr. Crestoff in ru_mysql
Александр
Да, но она собирает совсем не то что мы хотим
повторюсь, в ОРМ (вообще это Yii2 framework) запрос писался человеком, руками, даже через конструктор, этот же человек и без враперов написал бы два корявых запроса 😀
источник

MC

Mr. Crestoff in ru_mysql
Александр
Люблю Тома Кайта на эту тему цитировать:
если можно, сделай это с помощью одного оператора SQL;

если это нельзя сделать с помощью одного оператора SQL, сделай это в PL/SQL;

если это нельзя сделать в PL/SQL, попытайся использовать хранимую процедуру на языке Java;

если это нельзя сделать в Java, сделай это в виде внешней процедуры на языке C;

если это нельзя реализовать в виде внешней процедуры на языке C, надо серьезно подумать, зачем это вообще делать...
Первая цитата 👍
источник

🇻

🇻 🇱 🇦 🇩 in ru_mysql
Александр
Люблю Тома Кайта на эту тему цитировать:
если можно, сделай это с помощью одного оператора SQL;

если это нельзя сделать с помощью одного оператора SQL, сделай это в PL/SQL;

если это нельзя сделать в PL/SQL, попытайся использовать хранимую процедуру на языке Java;

если это нельзя сделать в Java, сделай это в виде внешней процедуры на языке C;

если это нельзя реализовать в виде внешней процедуры на языке C, надо серьезно подумать, зачем это вообще делать...
что примечательно. я когда с базы доставал json и парсил его, json_decode из пыхи работал на 30% быстрее парсера json в mysql
источник

🇻

🇻 🇱 🇦 🇩 in ru_mysql
а потом в mysql завезли multivalue индексы и все вообще стало летать как пуля
источник

NI

Nickolay Ihalainen in ru_mysql
ну, сейчас-то json в бинарном виде хранится...
источник

А

Александр in ru_mysql
Эт вроде только у постгреса
источник

А

Александр in ru_mysql
Ещё и работает быстрее всяких поделлок типа Монги
источник

А

Александр in ru_mysql
Postgres vs Mongo / Олег Бартунов (Postgres Professional) - YouTube
https://www.youtube.com/watch?v=SNzOZKvFZ68
источник

NI

Nickolay Ihalainen in ru_mysql
Optimized storage format. JSON documents stored in JSON columns are converted to an internal format that permits quick read access to document elements. When the server later must read a JSON value stored in this binary format, the value need not be parsed from a text representation. The binary format is structured to enable the server to look up subobjects or nested values directly by key or array index without reading all values before or after them in the document.
источник

NI

Nickolay Ihalainen in ru_mysql
источник