Гость
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Интересный взгляд на проблему сравнения / 25 сообщений из 50, страница 1 из 2
19.08.2019, 15:50
    #39851197
Andrey Sribnyak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
...
Рейтинг: 0 / 0
19.08.2019, 16:11
    #39851204
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Типичный хабаровский бред.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
20.08.2019, 00:57
    #39851383
kdv
kdv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Dimitry Sibiryakov,

гм, в разделе "Плохая оптимизация OR" - сначала он строит 4 странных композитных индекса, которые, как ему кажется, "должны работать" (вместо четырех одиночных по столбцам a, b, c, d), а потом удивляется, почему оптимизаторы "их не берут".
...
Рейтинг: 0 / 0
20.08.2019, 09:37
    #39851423
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
kdvDimitry Sibiryakov,

гм, в разделе "Плохая оптимизация OR" - сначала он строит 4 странных композитных индекса, которые, как ему кажется, "должны работать" (вместо четырех одиночных по столбцам a, b, c, d), а потом удивляется, почему оптимизаторы "их не берут".

Чем четыре одиночных индекса по столбцам тут должны помочь? Вы же понимаете что найти a=5 AND b=6 при индексе по (a,b) можно гораздо быстрее, чем при двух индексах (a) и (b)?
...
Рейтинг: 0 / 0
20.08.2019, 10:08
    #39851433
KreatorXXI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Nitro_JunkiekdvDimitry Sibiryakov,

гм, в разделе "Плохая оптимизация OR" - сначала он строит 4 странных композитных индекса, которые, как ему кажется, "должны работать" (вместо четырех одиночных по столбцам a, b, c, d), а потом удивляется, почему оптимизаторы "их не берут".

Чем четыре одиночных индекса по столбцам тут должны помочь? Вы же понимаете что найти a=5 AND b=6 при индексе по (a,b) можно гораздо быстрее, чем при двух индексах (a) и (b)?

Только его запрос не про это. Это передёргивание. Есть запрос и есть индексы, которые запрос не использует. А виноват сервер.
Я думаю, программисты, занимающие планировщиком SQL-запросов сервера, делают всё возможное. Но человек, который создаёт схему данных и т.д., должен же себе отдавать отчёт, что он хочет.
...
Рейтинг: 0 / 0
20.08.2019, 10:13
    #39851436
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
KreatorXXINitro_Junkieпропущено...


Чем четыре одиночных индекса по столбцам тут должны помочь? Вы же понимаете что найти a=5 AND b=6 при индексе по (a,b) можно гораздо быстрее, чем при двух индексах (a) и (b)?

Только его запрос не про это. Это передёргивание. Есть запрос и есть индексы, которые запрос не использует. А виноват сервер.
Я думаю, программисты, занимающие планировщиком SQL-запросов сервера, делают всё возможное. Но человек, который создаёт схему данных и т.д., должен же себе отдавать отчёт, что он хочет.

Там достаточно простой тезис. SQL сервера выполняют логические условия как есть, не пытаясь особо их оптимизировать. То есть как и в остальных пунктах перекладывая задачу оптимизации на разработчика, тем самым повышая трудозатраты и порог вхождения. А заодно и риск выстрелить себе в ногу.
...
Рейтинг: 0 / 0
20.08.2019, 11:59
    #39851503
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Nitro_Junkie,

вовсе не обязательно. Они пытаются сделать всё что можно.

З.Ы. Читал статью. Такое ощущение что автор старается сделать себе больно специально. Те кто понимают как работает конкретная СУБД никогда не будут писать так как описано в статье. Да это может сделать нечаянно некая ORM, но никак не вменяемый разработчик пишущий прямые SQL запросы.
...
Рейтинг: 0 / 0
20.08.2019, 12:10
    #39851513
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Симонов ДенисNitro_Junkie,

вовсе не обязательно. Они пытаются сделать всё что можно.

З.Ы. Читал статью. Такое ощущение что автор старается сделать себе больно специально. Те кто понимают как работает конкретная СУБД никогда не будут писать так как описано в статье. Да это может сделать нечаянно некая ORM, но никак не вменяемый разработчик пишущий прямые SQL запросы.

Так откуда разработчик должен знать что умеет оптимизировать конкретная СУБД или нет. Во-первых, это параметр изменяющийся во времени, а во-вторых, весь смысл оптимизаторов в том, чтобы не знать как они работают. Иначе нахрена они нужны, если я захочу все сделать руками, я сделаю это на ассемблере. Правда только совсем глупый работодатель это оплатит.
...
Рейтинг: 0 / 0
20.08.2019, 12:49
    #39851548
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Nitro_JunkieВы же понимаете что найти a=5 AND b=6 при индексе по (a,b) можно гораздо быстрее, чем при
двух индексах (a) и (b)?

А Вы понимаете, что AND и OR это две очень большие разницы?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
20.08.2019, 12:56
    #39851553
Vladimir Baskakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
авторПри этом речь в статье пойдет не о «вкусах и цветах фломастеров». Все затрагиваемые проблемы носят фундаментальный характер: присутствуют при разработке практически любой информационной системы и не ограничиваются «красотой кода», а в той или иной степени приводят либо к критическому падению производительности, либо к существенному росту порога вхождения, либо к значительным трудозатратам со стороны разработчика..

ну, я я как то не дочитал, а там альтернатива, в которой фундаментальных проблем меньше, представлена? То есть не этих нет, а во всех отношениях лучше и удобнее?
...
Рейтинг: 0 / 0
20.08.2019, 13:48
    #39851590
witte
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Nitro_JunkieТак откуда разработчик должен знать что умеет оптимизировать конкретная СУБД или нет. Во-первых, это параметр изменяющийся во времени, а во-вторых, весь смысл оптимизаторов в том, чтобы не знать как они работают. Иначе нахрена они нужны, если я захочу все сделать руками, я сделаю это на ассемблере. Правда только совсем глупый работодатель это оплатит.
Если это была попытка набросить на вентилятор - то Ок, принимается :-)
А если сказано всерьез, то гнать такого разработчика нужно несвежими носками подальше от сервера СУБД. Во всяком случае от продуктивной среды.
...
Рейтинг: 0 / 0
20.08.2019, 13:54
    #39851596
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Vladimir Baskakov,

ну в статье явного указания на альтернативу нет, но если присмотреться, то они пиарят некий lsFusion
...
Рейтинг: 0 / 0
20.08.2019, 14:33
    #39851626
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Dimitry SibiryakovNitro_JunkieВы же понимаете что найти a=5 AND b=6 при индексе по (a,b) можно гораздо быстрее, чем при
двух индексах (a) и (b)?

А Вы понимаете, что AND и OR это две очень большие разницы?


К чему вы это? Там в разделе достаточно подробно расписано, как запрос надо оптимизировать, чтобы он быстро выполнялся. И там нужны именно индексы по двум полям, индексами по одному полю там никак не обойтись.
...
Рейтинг: 0 / 0
20.08.2019, 14:39
    #39851629
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
witteNitro_JunkieТак откуда разработчик должен знать что умеет оптимизировать конкретная СУБД или нет. Во-первых, это параметр изменяющийся во времени, а во-вторых, весь смысл оптимизаторов в том, чтобы не знать как они работают. Иначе нахрена они нужны, если я захочу все сделать руками, я сделаю это на ассемблере. Правда только совсем глупый работодатель это оплатит.
Если это была попытка набросить на вентилятор - то Ок, принимается :-)
А если сказано всерьез, то гнать такого разработчика нужно несвежими носками подальше от сервера СУБД. Во всяком случае от продуктивной среды.

Где же вы столько "правильных" разработчиков найдете? Не, я понимаю если вы работаете по найму, дефицит разработчиков может быть выгоден, но если вы заказчик или подрядчик, все с точностью наоборот.
...
Рейтинг: 0 / 0
20.08.2019, 15:40
    #39851690
Бумбараш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Dimitry SibiryakovТипичный хабаровский бред.


сказал человек с форума где 90% тем это "как мне правильно сделать Merge"
...
Рейтинг: 0 / 0
20.08.2019, 16:34
    #39851745
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Dimitry SibiryakovТипичный хабаровский бред.



Это же "Блог компании lsFusion", его пишут чтобы поднять статус компании, получить известность.

Статья действительно ну...как бы бесполезная, не чтобы прочиьать, а чтобы НАПИСАТЬ.
...
Рейтинг: 0 / 0
20.08.2019, 16:36
    #39851748
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
БумбарашDimitry SibiryakovТипичный хабаровский бред.


сказал человек с форума где 90% тем это "как мне правильно сделать Merge"

Гы, он-то чем виноват, что он с этого форума?

Дмитрий в общем -- хороший специалист, грамотный.
...
Рейтинг: 0 / 0
20.08.2019, 16:45
    #39851761
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
MasterZivон-то чем виноват, что он с этого форума?

Меня больше заинтересовал вопрос какой именно из обитаемых мною форумов Бумбараш посчитал
так, что 90% топиков получилось про Merge. bid 3?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
20.08.2019, 17:10
    #39851780
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Dimitry SibiryakovMasterZivон-то чем виноват, что он с этого форума?

Меня больше заинтересовал вопрос какой именно из обитаемых мною форумов Бумбараш посчитал
так, что 90% топиков получилось про Merge. bid 3?..


Да ладно. Тут большую часть топиков почитаешь, так люди nested loop join от hash join'а не отличают, какой нафиг join predicate push down.
...
Рейтинг: 0 / 0
20.08.2019, 21:57
    #39851860
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Nitro_JunkieТак откуда разработчик должен знать что умеет оптимизировать конкретная СУБД или нет. Во-первых, это параметр изменяющийся во времени, а во-вторых, весь смысл оптимизаторов в том, чтобы не знать как они работают. Иначе нахрена они нужны, если я захочу все сделать руками, я сделаю это на ассемблере. Правда только совсем глупый работодатель это оплатит.

Если ты разрабатываешь под конкретную СУБД, то должен знать её хотя бы на среднем уровне.
В конце концов запросы проверяются, можно посмотреть планы, переписать запросы, создать индексы и т.д.
В целом ещё не было ни одного случая, чтобы не находилось решения которое устраивает по быстродействию.
И кстати nested loop join это не всегда плохо.

Если делаешь сразу под несколько СУБД что-то сложное, то скорее всего нормально не будет работать ни в одной.
...
Рейтинг: 0 / 0
21.08.2019, 00:57
    #39851886
Бумбараш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Симонов ДенисИ кстати nested loop join это не всегда плохо.

А вы, кстати, зачем это сказали?
...
Рейтинг: 0 / 0
21.08.2019, 06:50
    #39851897
Симонов Денис
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Бумбараш,

статью что читал?
...
Рейтинг: 0 / 0
21.08.2019, 07:54
    #39851902
andy st
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Nitro_JunkieТак откуда разработчик должен знать что умеет оптимизировать конкретная СУБД или нет. Во-первых, это параметр изменяющийся во времени, а во-вторых, весь смысл оптимизаторов в том, чтобы не знать как они работают. Иначе нахрена они нужны, если я захочу все сделать руками, я сделаю это на ассемблере. Правда только совсем глупый работодатель это оплатит.
В теме по MS SQL посоветовали материализацию count(*) на млрд записях, ранее заявленную как круто работающую, сделать в пару слегка неадекватных прыжков. Откуда разработчик должен знать о том, как работает данных фреймворк и что надо так глумиться над ним?
И вооще, фреймворки/ОРМ - штука на порядок более распространенная ввиду того, что множество неосиливших SQL огромно и почти каждый из этого множества считает своим долгом запилить свой мегафреймворк для "вааще любой СУБД". А раз распространенная, значит и существенно чаще утилизируемая.
А вот работодателю интересно подсадить работника на уникальный с минимальным количеством вакансий фреймворк, чтобы он потом не сбежал куда, где кормят лучше. Ибо нахрен не нужен спец, который хорошо знает что-то никому никуда не упирающееся...
...
Рейтинг: 0 / 0
21.08.2019, 08:48
    #39851918
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
Симонов ДенисЕсли делаешь сразу под несколько СУБД что-то сложное, то скорее всего нормально не будет работать ни в одной.

Вообще статья как раз про это, и про то как обходить проблемы, чтобы система нормально работала на всех СУБД.
...
Рейтинг: 0 / 0
21.08.2019, 08:58
    #39851921
Nitro_Junkie
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интересный взгляд на проблему сравнения
andy stВ теме по MS SQL посоветовали материализацию count(*) на млрд записях, ранее заявленную как круто работающую, сделать в пару слегка неадекватных прыжков. Откуда разработчик должен знать о том, как работает данных фреймворк и что надо так глумиться над ним?


Тут вообще-то не две крайности, все руками и все автоматически. Есть полутона. Хотя конечно если бы платформа сама умела разбивать материализации на неконкурентные, и вообще сама умела бы их создавать было бы гораздо круче. Но лучшее как известно враг хорошего.

andy stА вот работодателю интересно подсадить работника на уникальный с минимальным количеством вакансий фреймворк, чтобы он потом не сбежал куда, где кормят лучше. Ибо нахрен не нужен спец, который хорошо знает что-то никому никуда не упирающееся...

Я, например, за последние 5 лет работал с :
1. Groovy под Jenkins
2. Java - бэкенд, десктоп
3. JavaScript + React, Java + GWT - фронтенд
4. NSIS - инсталлятор
5. ANTLR, GrammarKit + IDEA - работа с языками интерпретаторы, IDE
6. PHP + October CMS - когда на сайт надо было подключить сложную функциональность, которую отдавать разработчикам сайтов себе дороже

и явно упустил еще с пяток фреймворков и языков.

Вообще в современном мире где пять лет назад никто не слышал про React и NoSQL, а технологии меняются раз в 3 года, умение разбираться в них по сути единственный важный навык программиста. И человек, который не умеет этого делать а сфокусирован на конкретных технологиях - херовый программист. Я например в резюме на предыдущий опыт вообще не смотрю, потому как хорошо знаю, что человек с мозгами вообще без опыта в технологии через 3 месяца может быть гораздо полезнее на проекте, чем человек с 10+ лет опыта, который не умеет систематизировать информацию и составлять общую картину. И бизнесу нужны люди умеющие решать проблемы, а не с длинным резюме.
...
Рейтинг: 0 / 0
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Интересный взгляд на проблему сравнения / 25 сообщений из 50, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]