Re[4]: зацените код. прилетел инцедент
От: Gt_  
Дата: 12.02.24 10:21
Оценка:
H>Так в том и вопрос. Что именно?
H>Мне интересен визуал, графика и симуляции физики. Потому что это красиво, вау-эффектно и прочее. Сразу виден результат.
H>Мне НЕ интересно, но я могу понять в чем интерес, например, у безопасников и сетевиков.

и чего там интересного ? тупо настукивать формулы в виде кода — так там и денег не платят, т.к. переложить формула на код и миды за скромную зп справляются.

H>Но я в упор не могу понять что может быть интересно в этих идиотских огромных таблицах


там хотя бы бигдата кластера, распределенные вычисления, те же ML модели гонять — там и архитектуру не каждый сдюжит и зарплаты ответствуют сложности задачи. а простите физ процесс нажмякать в постсовковом институте небойсь и на пиво не заработать.
Re: зацените код. прилетел инцедент
От: LaptevVV Россия  
Дата: 12.02.24 10:26
Оценка:
Блин.
Мартин Фаулер писал про рефакторинг, писал и переписывал...
И все псу под хвост.
Простой сермяжный программер поклал на все...
А тебе теперь разгребать!
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re[3]: зацените код. прилетел инцедент
От: Alekzander  
Дата: 12.02.24 10:38
Оценка:
Здравствуйте, gandjustas, Вы писали:

H>>Блин, трындец. БАЗЫ ДАННЫХ!!! Люди, КАК это может быть интересно??! Единсивенный предмет в вузе который еле смог


G>Платят денег не за то, чтобы тебе было интересно. И есть люди, которые смогли.


Я их люблю бескорыстно и непрофессионально. Может, потому что бойсами и коддами в детстве не насиловали, а нормализация представлялась мне просто интересной головоломкой.
Re[2]: зацените код. прилетел инцедент
От: undo75  
Дата: 12.02.24 10:40
Оценка:
LVV>Простой сермяжный программер поклал на все...
LVV>А тебе теперь разгребать!

прикол в том, что на линкью2секвил посложили задачу разрулить селект. на сиквеле я бы сделал одним. он же по сути в цикле хреначит. да. селекты дешевые. но их до жопы )
Re[5]: зацените код. прилетел инцедент
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 12.02.24 11:10
Оценка: +3
Здравствуйте, Sharov, Вы писали:

S>Ну как бэ основа -- без бд ни банки, ни интернет сайты не работали бы. В сущности все нагруженные приложения, а это тоже очень интересно,

S>каким-то образом используют бд. Это может быть стандартные реляционные бд (acid) и их тюнинг, это могут быть eventual consistency nosql
S>бд и умение их использовать и настраивать. Т.е. миллионы людей ежедневно пользуются результатом твоего труда. И там куча нюансов
S>и при взаимодействии с железом, чтобы все это делалось эффективно. Т.е. по сути, бд -- это основа практически всех компьютерных программ,
S>за исключением, разве что, игр. Да и тот же steam без бд никуда. Опять же облака -- это масштабируемые бд, спец. хранилища типа s3 со
S>своими свойствами и т.п. Короче, все с чем люди каждодневно взаимодействует в интернете и на мобиле имеют свою бд, т.е. по сути
S>взаимодействие с бд + какая-то бизнес логика.

А еще в БД применяются те самые алгоритмы, на которых дрочат FAANG и их адепты. там тебе и деревья всех видов, и сортировки, и хэши, синтаксические деревья и их переписывание, алгоритмы выбора, асинхронщина, параллельность и конкурентность. По сути современные РСУБД это венец развития всего computer science.

А кто-то просто ниасилил.
Re: всем минусовавсим вопрос
От: undo75  
Дата: 12.02.24 12:29
Оценка: -1
ёбнулись? может не в теме стандарта сиквела? или как литнкью должен разраливать эту лажу?
Re[2]: зацените код. прилетел инцедент
От: Igorxz  
Дата: 12.02.24 12:54
Оценка: 6 (1) -3
Здравствуйте, gandjustas, Вы писали:

G>Лучше уж такой код, чем эквивалентные простыни SQL.

Разумеется, это не так. (Обычно такие утвеждения делают люди, которые не работали с "серьезными" (по объему, по структуре и т.д.) БД. без обид.)
При работе сконкретной БД, любой, главная — это эта самая любая БД.
Все эти ОРМ — весчь опосредованная. По другому и быть не может.
В каких то ситуациях они да — берут на себя часть рутинной работы (например сгерерировать селект в целевом языке из 100 полей),
но главным остается все равно — движек конкретной БД.
(Это все следствие того, что все мало-мальски используемые движки БД на всем, что чуть сложнее прямого селекта из таблицы,
начинают иметь свои собственные особенности, и естеснно ни какой "волшебный" ОРМ не сможет это учесть, а главное — и не должен.
у него функция другая — просто сгенерировать че-то рутинное, где это можно. Что б руками это не писать.)
Re[3]: зацените код. прилетел инцедент
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 12.02.24 12:59
Оценка:
Здравствуйте, Igorxz, Вы писали:

I>Здравствуйте, gandjustas, Вы писали:


G>>Лучше уж такой код, чем эквивалентные простыни SQL.

I>Разумеется, это не так. (Обычно такие утвеждения делают люди, которые не работали с "серьезными" (по объему, по структуре и т.д.) БД. без обид.)
I>При работе сконкретной БД, любой, главная — это эта самая любая БД.
I>Все эти ОРМ — весчь опосредованная. По другому и быть не может.
I>В каких то ситуациях они да — берут на себя часть рутинной работы (например сгерерировать селект в целевом языке из 100 полей),
I>но главным остается все равно — движек конкретной БД.
I>(Это все следствие того, что все мало-мальски используемые движки БД на всем, что чуть сложнее прямого селекта из таблицы,
I>начинают иметь свои собственные особенности, и естеснно ни какой "волшебный" ОРМ не сможет это учесть, а главное — и не должен.
I>у него функция другая — просто сгенерировать че-то рутинное, где это можно. Что б руками это не писать.)

И что ты предлагаешь? переписать простыни linq на рукопашный SQL?
Я предлагаю посмотреть запрос, который генеируется, поправить linq, чтобы он не генерировал то, что мешает оптимизации и создать подходящие индексы.

Разница в затратах примерно на два порядка в пользу второго варианта. Возможно по итогу будет не так оптимально для конкретного варианта запроса, но в целом можно быстродействие довести до приемлемого без переписывания всего.
Re[6]: зацените код. прилетел инцедент
От: Hоmunculus  
Дата: 12.02.24 12:59
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>А кто-то просто ниасилил.


Бугага. Ага. Кто-то просто больше по матану и дифурам, а эти говно-алгоритмики ага, ниасилил
Re[4]: зацените код. прилетел инцедент
От: Igorxz  
Дата: 12.02.24 13:03
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>И что ты предлагаешь? переписать простыни linq на рукопашный SQL?

G>Я предлагаю посмотреть запрос, который генеируется, поправить linq, чтобы он не генерировал то, что мешает оптимизации и создать подходящие индексы.

G>Разница в затратах примерно на два порядка в пользу второго варианта. Возможно по итогу будет не так оптимально для конкретного варианта запроса, но в целом можно быстродействие довести до приемлемого без переписывания всего.


Что я предлагаю где/для чего? Для конкретной ситуации? — я её не знаю. Может там база из трех таблиц и этот приведенный кусок — полприложения))
Моя реплика была на твое утверждение "Лучше уж такой код, чем эквивалентные простыни SQL.".
С моей точки зрения, в общем случае — это зло.
Re[4]: зацените код. прилетел инцедент
От: undo75  
Дата: 12.02.24 14:11
Оценка:
G>И что ты предлагаешь? переписать простыни linq на рукопашный SQL?
G>Я предлагаю посмотреть запрос, который генеируется, поправить linq, чтобы он не генерировал то, что мешает оптимизации и создать подходящие индексы.

G>Разница в затратах примерно на два порядка в пользу второго варианта. Возможно по итогу будет не так оптимально для конкретного варианта запроса, но в целом можно быстродействие довести до приемлемого без переписывания всего.


как ты предлагаешь поправиль линкью? чтоб он здесь тебе грамотный запрос построил с минимумом джойнов и вхере?
ты погляди — тут в цикле к базе обращения идут!
Re[7]: зацените код. прилетел инцедент
От: undo75  
Дата: 12.02.24 14:12
Оценка:
H>Бугага. Ага. Кто-то просто больше по матану и дифурам, а эти говно-алгоритмики ага, ниасилил
сказал матанщик наасилифший элементарную реалиционню алгебру... это те не поклоны бить, понятно
Re[8]: зацените код. прилетел инцедент
От: Hоmunculus  
Дата: 12.02.24 14:13
Оценка:
Здравствуйте, undo75, Вы писали:


H>>Бугага. Ага. Кто-то просто больше по матану и дифурам, а эти говно-алгоритмики ага, ниасилил

U>сказал матанщик наасилифший элементарную реалиционню алгебру... это те не поклоны бить, понятно

Ну ты большого о себе мнения
Я сказал — что это максимально уныло — и все.

Куда ж без упоминания поклонов-то, ага.
Re[9]: зацените код. прилетел инцедент
От: undo75  
Дата: 12.02.24 14:25
Оценка:
H>Ну ты большого о себе мнения
H>Я сказал — что это максимально уныло — и все.

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

H>Куда ж без упоминания поклонов-то, ага.


ну да.
Re[5]: зацените код. прилетел инцедент
От: undo75  
Дата: 12.02.24 14:48
Оценка:
Gt_>и чего там интересного ? тупо настукивать формулы в виде кода — так там и денег не платят, т.к. переложить формула на код и миды за скромную зп справляются.

на пхп их кстати настукивать — занятие сильно на любителя...

Gt_>там хотя бы бигдата кластера, распределенные вычисления, те же ML модели гонять — там и архитектуру не каждый сдюжит и зарплаты ответствуют сложности задачи. а простите физ процесс нажмякать в постсовковом институте небойсь и на пиво не заработать.


уверен, что тут тоже больше страшных слов, чем содержания...
Re[5]: зацените код. прилетел инцедент
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 12.02.24 14:48
Оценка: +1
Здравствуйте, undo75, Вы писали:


G>>И что ты предлагаешь? переписать простыни linq на рукопашный SQL?

G>>Я предлагаю посмотреть запрос, который генеируется, поправить linq, чтобы он не генерировал то, что мешает оптимизации и создать подходящие индексы.

G>>Разница в затратах примерно на два порядка в пользу второго варианта. Возможно по итогу будет не так оптимально для конкретного варианта запроса, но в целом можно быстродействие довести до приемлемого без переписывания всего.


U>как ты предлагаешь поправиль линкью? чтоб он здесь тебе грамотный запрос построил с минимумом джойнов и вхере?

Минимум джоинов он и так сделает.
Меня смущают:
— лишние инклуды, скорее всего их выкинет и так
— вложенные коллекции в select, возможно их стоит отдельными запросами собрать
— посмотреть во что превращаются in с учетом конкретной субд
— очевидно проверить планы на популярных вариантах запросов, индексы и настройки движка (если это не mssql)
— заменить ToArrayAsync на ToAsyncEnumerable, чтобы не ждать втягивания всех данных до начала отображения
— посмотреть зачем нужен странный where после ToArrayAsync, почему его нельзя в запрос включить, если можно, то goto пункт про планы
— если уж совсем linq не справляется с запросами, то переписать на функции\представления в SQL и опиратьсяв первую очередь на них

U>ты погляди — тут в цикле к базе обращения идут!

Я не увидел, может не очень внимательно смотрел
Re[6]: зацените код. прилетел инцедент
От: undo75  
Дата: 12.02.24 19:23
Оценка:
U>>ты погляди — тут в цикле к базе обращения идут!
G>Я не увидел, может не очень внимательно смотрел

а я как бы трасил. идет обращение к базе в цикле.
да и без траса сразу видно
Re[7]: зацените код. прилетел инцедент
От: Слава  
Дата: 12.02.24 21:05
Оценка:
Здравствуйте, undo75, Вы писали:

U>а я как бы трасил. идет обращение к базе в цикле.

U>да и без траса сразу видно

У меня ощущение, что вы либо пьяны, либо не высыпались месяц.
Re[8]: зацените код. прилетел инцедент
От: undo75  
Дата: 12.02.24 22:49
Оценка:
С>У меня ощущение, что вы либо пьяны, либо не высыпались месяц.

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