@spbpython

Страница 593 из 785
Serge
09.12.2017
20:22:33
Мыж про поведение базы говорим
Мы про поведение драйвера.

А базы так просто не умеют. Возможно, когда-нибудь...

Google
Александр
10.12.2017
13:48:46
а что такое "серьезная работа с базой"?
Когда нельзя все дропнуть и пересоздать заново, наверное?

Serge
10.12.2017
18:02:27
а что такое "серьезная работа с базой"?
Это когда ты серьёзно знаешь SQL, поэтому понимаешь насколько это серьезно, работа с базой.

Alexander
10.12.2017
18:07:38
Когда у тебя вся бизнес-логика на эти данные завязана, так же, как и на процедуры работы с этими данными, а не когда тебе тупо надо хранить key+value где-то на стороне.

Для key+value любой ORM можно. Уж тупить, так тупить, чо? :) Собственно, key+value - это то, для чего ORM и делаются, и для пользователей, конечно, кому эти ORM нужны.

Выбрасываем, короче, ORM, учим SQL и получаем 10-30% увеличения скорости работы с базой. И не забываем про функции, которые правильно ескейпят данные в наших запросах. А то, я смотрю, бывают такие знатоки баз данных, которые без ORM выглядят как погроммисты какие-то

Vadim
10.12.2017
18:44:01
a mro, ребята, работает по типу дерева? вложенного множества?

Alexander
10.12.2017
18:45:45
да не! Python хороший, по-своему...

Vadim
10.12.2017
18:47:01
да это ирония была по теме вопроса)

Serge
10.12.2017
19:00:31
@aadz69 у нас мат запрещён. Обычное наказание - выпиливание всех сообщений пользователя из чата. Но тут могло показаться, что несогласие модератора с мнением автора. Так что удалил пока только одно

Alexander
10.12.2017
19:01:08
OK! Извините, пожалуйста

Serge
10.12.2017
19:02:42
Выбрасываем, короче, ORM, учим SQL и получаем 10-30% увеличения скорости работы с базой. И не забываем про функции, которые правильно ескейпят данные в наших запросах. А то, я смотрю, бывают такие знатоки баз данных, которые без ORM выглядят как погроммисты какие-то
И +300% сложности поддержки кода. Я скажу так: orm без возможности написать прямо на SQL - это плохо. Не знать SQL - плохо. Пихать чистый SQL в высокоуровневый язык, чтобы бложек написать - преступление перед коллегами.

Alexander
10.12.2017
19:02:49
Но вобще, глядя на все эти костыли для тупых и с каким энтузиазмом они этим пользуются, как-то сложно бывает без мата :)

Google
Alexander
10.12.2017
19:05:17
И +300% сложности поддержки кода. Я скажу так: orm без возможности написать прямо на SQL - это плохо. Не знать SQL - плохо. Пихать чистый SQL в высокоуровневый язык, чтобы бложек написать - преступление перед коллегами.
Я уже говорил, что в конечном итоге, нормальные люди в нормальных проектах делают свои системы работы с базой, включая нужные процедуры обработки данных, с чистым SQL, да. ORM тоже с "чистым SQL" работает, как мы понимаем... :) Только обычно работает так, что лучше не надо

Alexander
10.12.2017
19:07:45
Не надо SQL пихать куда надо и не надо. Можно хотя бы отдельный модуль для этого сделать и звать оттуда определенные процедура по нужде. Разумеется, в таком модуле будет полно "чистого SQL", ну, так для того и надо его отдельно выносить, чтобы внутри модуля все процедуры друг о друге знали и не делали больно окружающему миру

Alexander
10.12.2017
19:08:53
Да! И назовем этот модуль ORM, почему нет?

Vadim
10.12.2017
19:08:58
не умеем чужие игры- придумываем свои)

Alexander
10.12.2017
19:09:47
ладно. Похоже, я про Фому, а все слышат, что про Ерему. И вобще - это флуд не по теме комнаты :)

Serge
10.12.2017
19:10:48
ладно. Похоже, я про Фому, а все слышат, что про Ерему. И вобще - это флуд не по теме комнаты :)
Вполне по теме. Вот, в питон и дата классы принесли, чтобы ормы было проще писать.

да, мой вопрос зафлудили)
А какой был вопрос?

Alexander
10.12.2017
19:11:27
про mro

Serge
10.12.2017
19:11:58
про mro
Я думал это стёб был хитрый

a mro, ребята, работает по типу дерева? вложенного множества?
Я не в курсе реализации, но там на выходе же список.

Vadim
10.12.2017
19:12:42
не, я не шарю так, чтоб стебаться)

Alexander
10.12.2017
19:12:45
https://habrahabr.ru/post/62203/

Vadim
10.12.2017
19:13:09
список то список, да порядок его не простой, а золотой)

Serge
10.12.2017
19:13:10
https://habrahabr.ru/post/62203/
Фу, и матом ругается и на хабр ссылки даёт

import this

Alexander
10.12.2017
19:13:27
не, я не шарю так, чтоб стебаться)
не поверишь, у меня это было в гугеле первой же ссылкой :)

Google
Vadim
10.12.2017
19:13:51
Alexander
10.12.2017
19:14:06
а придется :)

Serge
10.12.2017
19:14:09
список то список, да порядок его не простой, а золотой)
В доке же есть. Там тупо обход дерева по слоям

Vadim
10.12.2017
19:14:39
В доке же есть. Там тупо обход дерева по слоям
это я понял, поэтому у меня и возникла в голове аналогия с nested sets

а придется :)
я совмещать буду)

Vadim
10.12.2017
19:16:46
Serge
10.12.2017
19:20:15
спасибо
Кстати, для dive in я бы советовал самому написать реализацию сначала, а потом смотреть как оно на самом деле

Vadim
10.12.2017
19:21:39
не уверен, что сумею

я на работе в основном манки патчингом занимаюсь)

spb_python_bot
10.12.2017
19:37:53
import this
The Zen of SPb Python Chat (Inspired by "The Zen of Python, by Tim Peters") - Short introduction of yourself is better than "hello". - Link to gist is better than source paste. - One long message is better than many short. - Editing the message is better than correcting via another one. - Staying on topic is better than offtopic. - Good topic is worth discussing though. - Unless it is started by a link to Habrahabr. - Politeness counts. - Bad mood is not a good reason to break the rules. - Don't ask to ask just ask. - Text message is better than voice message. - Unless it is voice conference. - Git repos are one honking great idea — let's do more of those!

Danil
10.12.2017
19:39:53
@nonamenix а он быстрый парень;)
Норм так лаганул на 20 мин, зато живучий )

Alexander
10.12.2017
19:40:32
:) Бота тоже на Python писали :)

Danil
10.12.2017
19:40:56
Норм так лаганул на 20 мин, зато живучий )
Мдя... по классике, старенький сайтец съел все ресурсы, пойду на него om killer настрою хотяб

Alexander
10.12.2017
19:45:01
А почему хабрахарб нельзя? Статья по ссылке рассказыват все по заданному вопросу, лучше, чем нормальный человек в чате может это сделать.

Я же не телегу с хабра запостил, как Python устанавлиать

Alex
10.12.2017
19:52:51
вопрос к орм скорее в том что он не позволяет использовать всю функциональность БД.

Google
Alex
10.12.2017
19:53:53
и даже поддержка диалектов не всегда спасает в современных библиотеках. В итоге вроде делаешь на ОРМ, но если вышел в сторону хотя бы на шаг - сразу пишешь чистый SQL плюс сопряжение с тем что уже есть в ОРМ чтобы это прозрачно использовать.

и не редко наблюдаются ситуации с использованием ОРМ, когда количество запросов к БД просто шкалит, приходит юзер, по бизнес логике вроде запросил, одну функцию, а по факту прилетело до 100-ни запросов в БД

Admin
ERROR: S client not available

Alexander
10.12.2017
19:57:58
И не только. Но если уж серьезный ORM, то это будет не 100 запросов, а 100 запросов внутри персональных транзакций :( Это вобще шик, когда получаешь 100 коммитов на пустом месте в секунду

Serge
10.12.2017
20:00:27
Орм или не орм. Эти разговоры за инструменты ни к чему не приведут и использование и того и другого тоже, если нет мозгов.

Ruslan
10.12.2017
20:01:13
тру стори

Alex
10.12.2017
20:01:16
причем тут наличие или отсутствие мозгов ?

орм накладывает ограничения на использование БД

Ruslan
10.12.2017
20:01:35
причем тут наличие или отсутствие мозгов ?
делать 100 запросов, вместо одного - это отсутствие мозгов

Alex
10.12.2017
20:01:51
но это же ОРМ делает.

Ruslan
10.12.2017
20:02:08
вы же сами сказали, raw sql

Serge
10.12.2017
20:02:09
но это же ОРМ делает.
Сам по себе или потому что кто-то написал такой код?

Alex
10.12.2017
20:02:09
причем что hibernate, что джанго что другие

Serge
10.12.2017
20:02:29
Сам по себе или потому что кто-то написал такой код?
И сразу вопрос: а можно было написать нормально?

Alexander
10.12.2017
20:03:00
ORM общего пользования нельзя написать нормально

Alex
10.12.2017
20:03:08
как ? если это не поддерживается ОРМ ?

Serge
10.12.2017
20:03:20
орм накладывает ограничения на использование БД
Ну, в равной мере, как любая абстракция. Но либо мы понимаем как и зачем использовать абстракции, либо пишем на асемблере

Alex
10.12.2017
20:03:33
SQL не ассемблер.

Nikolay
10.12.2017
20:04:10
Google
Nikolay
10.12.2017
20:04:18
раз он тебе так не нравится

Alex
10.12.2017
20:06:10
ну просто тут некоторые говорили что SQL это +300% к сложности поддержки кода

Alex
10.12.2017
20:06:14
Вот вы тут развели. Ну хотя бы какие-то строгие метрики бы ввели а то термины "нормально"/"ненормально" это ни о чем.

Alex
10.12.2017
20:06:15
но нет же.

да простое, посторил датафлоу, построил схему данных, выбрал инструменты реализации в БД, взял ОРМ и … эээ пошел писать плейн SQL

Nikolay
10.12.2017
20:07:18
во многих случаях, когда нет большого количества реляций и джойнов, рсубд не нужен вообще

Alex
10.12.2017
20:08:04
надо начинать вообще с вопроса, а нужен ли тебе sql
ну да можно монгу поставить, в самом деле что это я +)

нет большого количества реляций это бложик домашний ?

Alexander
10.12.2017
20:08:57
К Монге - тоже ORM есть, так что - вперед! :)

Egor
10.12.2017
21:16:52
@lig11 можно голосование устроить, чтобы поставить точку)

Страница 593 из 785