powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Причины ненависти к языку SQL?
25 сообщений из 306, страница 2 из 13
Причины ненависти к языку SQL?
    #39710602
Eugene New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Котовасия,
речь об ККЭ, тут не до примадонн, тут массовое производство, где незаменимым не место.

Можно подумать понимание элементарных понятий теории множеств это нечто экстраординарное. Можно подумать не выпускаются толпы инженеров, которые вообще то в любом случае должны знать начала высшей математики - то есть преодолеть этот "страшный барьер", какая бы инженерная специальность у них ни была. Таких людей очень много.

массовое производство
Скорее уж массовое проектирование, т. к. программа это проект, а производство это запуск компилятора и копирование готовых файлов.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710605
Котовасия
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene New,

не понимаю, в чем смысл спора.
Ты задал вопрос: "почему Фаулер <блаблабла>".
Я ответил: "возможно, потому, что он считает <блаблабла>" и привел цитату из его книжки.
А ты начинаешь возражать.
Ты меня с Фаулером отождествляешь, что ли?
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710607
Котовасия
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene New,

ой, извини.
Ты про одного, я - про другого...
Но я с тобой в общем согласен, все равно.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710610
Eugene New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Котовасия,
не понимаю, в чем смысл спора.
Всего лишь на "это оправдано" возражаю. Но вы правы, дальнейший спор бессмыслен.

Фаулер
У них куча этих Мартинов и Фаулеров, причем Мартин то имя, то фамилия..
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710616
Очень лысый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется, что вопрос ненависти к SQL как языку вещь надуманная. Мало того, некоторые "NoSQL" решения к нему возвращаются. Опять таки, "NoSQL" это не очень удачный термин. Здесь речь идёт скорее о том, что для хранения и обработки данных используются нереляционные движки. Причины, почему их придумывают и пользуют - самые разные. Либо это специализированное хранилище чего либо, типа key-value, либо отказываются от каких-то принципов RDBMS, например, целостности и т.п. там, где они не особо важны, для более высокой производительности и масштабируемости.
Вообще должен заметить, что RDBMS и SQL живее всех живых и как использовались для определённого класса задач, так и продолжают использоваться. Другое дело, что появилась куча областей, где "NoSQL" решения стали альтернативой для RDBMS.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710617
Котовасия
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene New...
Фаулер
У них куча этих Мартинов и Фаулеров, причем Мартин то имя, то фамилия..
Есть люди, осилившие Д.Кнута. А есть - читавшие Фаулеров. Как-то получается, что эти читатели - чаде всего разные люди.
Это в дополнение к
авторМожно подумать понимание элементарных понятий теории множеств это нечто экстраординарное.
Не трать время на фаулеров и прочий околоайтишный менеджмент.
Разве в случае интереса к теме "как быстро заставить работать толпу обезьян".
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710630
Eugene New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
отказываются от каких-то принципов RDBMS, например, целостности

Уж не связаны ли массовые жалобы на списания с давно закрытых карт Сбербанка с отказом от целостности данных?
Ну вроде того, что человек три года назад закрыл карту, 10 раз сходит в Сбербанк и ему подтвердили, что карта закрыта, а потом у него образовался долг за обслуживание "закрытой карты".
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710695
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КотовасияEugene New...
пропущено...

У них куча этих Мартинов и Фаулеров, причем Мартин то имя, то фамилия..
Есть люди, осилившие Д.Кнута. А есть - читавшие Фаулеров. Как-то получается, что эти читатели - чаде всего разные люди.
Это в дополнение к
авторМожно подумать понимание элементарных понятий теории множеств это нечто экстраординарное.
Не трать время на фаулеров и прочий околоайтишный менеджмент.
Разве в случае интереса к теме "как быстро заставить работать толпу обезьян".
Думаешь на одном Дональде Кнуте выехать? Инженерия софтверных знаний - более широка...
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710696
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очень лысыйМне кажется, что вопрос ненависти к SQL как языку вещь надуманная. Мало того, некоторые "NoSQL" решения к нему возвращаются. Опять таки, "NoSQL" это не очень удачный термин. Здесь речь идёт скорее о том, что для хранения и обработки данных используются нереляционные движки. Причины, почему их придумывают и пользуют - самые разные. Либо это специализированное хранилище чего либо, типа key-value, либо отказываются от каких-то принципов RDBMS, например, целостности и т.п. там, где они не особо важны, для более высокой производительности и масштабируемости.
Вообще должен заметить, что RDBMS и SQL живее всех живых и как использовались для определённого класса задач, так и продолжают использоваться. Другое дело, что появилась куча областей, где "NoSQL" решения стали альтернативой для RDBMS.
Я думаю что идёт от современного прототипирования. Если вы - Java разработчик и на стартапе - то вам
в качестве DBMS конечно можете поднимать и конфигурить Постргре или Мискль. Но когда
вы решаете о том что вам взять в качестве storage layer (я-то знаю я там был) для простого микросервиса то оказывается
что вам ничего не стоит добавить в maven depencencies LevelDb, или RockDb. Эти штуки - бесплатны.
Хранят данные на диске как key-value. Работают очень быстро. Некоторые из них уже соптимизированы
под SSD.

А дальше - пошло-поехало. Прототип работает. Хранилище работает. Зачем его мигрировать в БД. Какие justifications?
SQL-запросы? О чем вы? Нет их там. Такой он Микросервис.

Вот так. Прототипы часто выползают из недр вашего ноутбука. С ноутбучными storage-layers.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710704
Eugene New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Думаешь на одном Дональде Кнуте выехать
"Кнут" сидит внутри LevelDb :-) LSM-деревья.

Очень уж громкие названия у этих библиотек для решаемой задачи.
И что потом с этими данными от микросервисов происходит? Они как-нибудь обрабатываются? Или это просто временные таблицы?
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710711
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene New"Кнут" сидит внутри LevelDb :-) LSM-деревья... а Ом, Вольта и Ампер - внутри каждого электрика.
А ещё у каждого айтишника есть Бор, Гейзенберг, Ферми и Бозе - куда же нам без квантовой механики.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710714
Eugene New
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,
айтишника

Неприличными словами не выражаться! (с)
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710732
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene Newmayton,
Думаешь на одном Дональде Кнуте выехать
"Кнут" сидит внутри LevelDb :-) LSM-деревья.

Очень уж громкие названия у этих библиотек для решаемой задачи.
И что потом с этими данными от микросервисов происходит? Они как-нибудь обрабатываются? Или это просто временные таблицы?
А как обрабатываются данные в RDBMS ?
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710744
Котовасия
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonКотовасияпропущено...

Есть люди, осилившие Д.Кнута. А есть - читавшие Фаулеров. Как-то получается, что эти читатели - чаде всего разные люди.
Это в дополнение к
пропущено...

Не трать время на фаулеров и прочий околоайтишный менеджмент.
Разве в случае интереса к теме "как быстро заставить работать толпу обезьян".
Думаешь на одном Дональде Кнуте выехать? Инженерия софтверных знаний - более широка...
Я как раз об обратном: начитаются одних лишь Фаулеров, и воображают себя архитекторами.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710751
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene Newsql и поверх плоских файликов вполне работает.
Это всего лишь значит, что вы используете набор плоских файлоков как реляционную БД.

пакость
А лично вы почему ненавидите SQL? У вас трудности с пониманием математических абстракций?

я не ненавижу ламеров, без опыта но с гонором. а SQL я люблю использовать там где он хорошо подходит и не одну сотню ламеров размазал тут на тему SQL за последние 15 лет.

spark хорошо продвинулся в плане скрещивани
spark всего лишь очередная библиотека, которая, кстати, использует SQL

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

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
        Dataset<Row> outputTable = table1Ds
                .filter(table1Ds.col(Table1.Table1_ID).equalTo(Table1Id))
                .join(table2Ds,
                        Table2sDs.col(Table2.Table1_ID).equalTo(table1Ds.col(Table1.Table1_ID))
                        , "left_outer"
                )
                .select(
                        table1Ds.col(Table1.ID),
                        Table2sDs.col(Table2.START_DATE),
                        functions.lit("").as("end_date"),
                        functions.when(Table2sDs.col(Table2.FIELD1).equalTo("MISSING"), null).otherwise(Table2sDs.col(Table2.FIELD1)),
                        ).as(Encoders.bean(MyMegaClass.class)));



если SQL не вернеться из комы эта хрень вытеснит SQL повсеместно
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710752
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene Newпакость
А лично вы почему ненавидите SQL? У вас трудности с пониманием математических абстракций?


я не ненавижу ламеров, без опыта но с гонором. а SQL я люблю использовать там где он хорошо подходит и не одну сотню ламеров размазал тут на тему SQL за последние 15 лет.

Eugene Newspark хорошо продвинулся в плане скрещивани
spark всего лишь очередная библиотека, которая, кстати, использует SQL

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

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
        Dataset<Row> outputTable = table1Ds
                .filter(table1Ds.col(Table1.Table1_ID).equalTo(Table1Id))
                .join(table2Ds,
                        Table2sDs.col(Table2.Table1_ID).equalTo(table1Ds.col(Table1.Table1_ID))
                        , "left_outer"
                )
                .select(
                        table1Ds.col(Table1.ID),
                        Table2sDs.col(Table2.START_DATE),
                        functions.lit("").as("end_date"),
                        functions.when(Table2sDs.col(Table2.FIELD1).equalTo("MISSING"), null).otherwise(Table2sDs.col(Table2.FIELD1)),
                        ).as(Encoders.bean(MyMegaClass.class)));



если SQL не вернеться из комы эта хрень вытеснит SQL повсеместно
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710764
tunknown
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene Newиррациональной ненависти к SQL.

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

В любом случае- всё вырождается в жонглирование костылями, которое удобнее реализовать императивно, а при декларативном подходе оно слишком бросается в глаза.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710770
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1если SQL не вернеться из комы эта хрень вытеснит SQL повсеместно

Субъективно.. пока его знания спрашивают на собеседованиях - он будет нужен.
Если вдруг (внезапно) тех лид говорит что ... "тэээкс... тут дальше идут вопросики
по SQL но мы их поскипаем ибо нету на проекте" то такова селяви и надо либо
менять проект либо согласится с тем что SQL действительно не будет.

От себя

Добавлю некоторые поинты в плюс SQL

1) SQL достаточно лаконичен в описании отчотов. CriteriaAPI, SparkAPI это все таки решения
библиотечные построенные поверх языков носителей Java/Scala и обладающие определенным
техническим балластом. Вы не можете написать запрос пока не выучите язык-носитель.

2) Опирается на математический аппарат алгебры множеств. Это дает неоспоримое диалектическое
преимущество в спорах с NoSQL концепциями у которых этого аппарата нет либо он - какой-то
рудимент сбоку и прочие нюансы (не поддерживает NULL) или вообще не может сделать
срез по атрибуту который не индексирован (Cassandra).

3) Изменяется редко. ЕМНИП (Ansi-SQL92 хотя и протух но еще в деле). И хотя некий неведомый
консорциум клепает новые SQL-2003,2006,2008 объективно

4) Его можно использовать как некую средневековую "латынь" при описании схем (DDL). Даже
если гипотетически представить что SQL уже умер все равно нужен аппарат чтобы
сказать create enitity(int id); e.t.c.

5) Генерализирует многие типы-синонимы.

6) Сами по себе реляционные DBMS как правило содержат некий мета-уровень который описывает
служебные объекты схемы (индексы процедуры триггеры) и удобен для передачи знаний
по новому бизнес-домену. Грубо говоря мне достаточно 10-15 минут чтобы понять что данная
ЦРМ-ка состоит из 15 табличек с такими-то такими-то связями и индексирована так-то
и так-то.

Ничего подобного в NoSQL я не встречал. Там с этим очень плохо. Мрак и печаль. И если
у вас нет исходного кода от бизнес приложения которое работает с этой NoSQL dbms
то нифига вы там не найдете (прим: MongoDb). Не сможете оперативно ответить на вопрос - а какие
собсно бизнес объекты там лежат. Мдя...
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710805
Фотография Megabyte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1
если SQL не вернеться из комы эта хрень вытеснит SQL повсеместно
Периодически звучат такие прогнозы о каком-либо продукте.
автор"А воз и ныне там..." (с)
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710806
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСубъективно.. пока его знания спрашивают на собеседованиях - он будет нужен.
Если вдруг (внезапно) тех лид говорит что ... "тэээкс... тут дальше идут вопросики
по SQL но мы их поскипаем ибо нету на проекте" то такова селяви и надо либо
менять проект либо согласится с тем что SQL действительно не будет.

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

mayton1) SQL достаточно лаконичен в описании отчотов. CriteriaAPI, SparkAPI это все таки решения
библиотечные построенные поверх языков носителей Java/Scala и обладающие определенным
техническим балластом. Вы не можете написать запрос пока не выучите язык-носитель.

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

mayton6) Сами по себе реляционные DBMS как правило содержат некий мета-уровень который описывает
служебные объекты схемы (индексы процедуры триггеры) и удобен для передачи знаний
по новому бизнес-домену. Грубо говоря мне достаточно 10-15 минут чтобы понять что данная
ЦРМ-ка состоит из 15 табличек с такими-то такими-то связями и индексирована так-то
и так-то.

Ничего подобного в NoSQL я не встречал. Там с этим очень плохо. Мрак и печаль. И если
у вас нет исходного кода от бизнес приложения которое работает с этой NoSQL dbms
то нифига вы там не найдете (прим: MongoDb). Не сможете оперативно ответить на вопрос - а какие
собсно бизнес объекты там лежат. Мдя...
просто они смотрят не таблицы, а DAO объекты. у них то все от кода пляшет, а не данных
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710810
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
H5N1если SQL не вернеться из комы эта хрень вытеснит SQL повсеместно

не увидел ничего нового в этой твоей хрени. При обращении к реляционным СУБД вся эта Linq подобная фигня один фиг генерирует SQL запрос и отправляет его на сервер. При обращении к не реляционным делает это иначе. Просто обобщённый интерфейс для написания запросов непосредственно на том языке в котором программируешь вместо составления строковой переменной напрямую. Удобно? Да. Но ничего нового в этом нет.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710847
H5N1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисне увидел ничего нового в этой твоей хрени. При обращении к реляционным СУБД вся эта Linq подобная фигня один фиг генерирует SQL запрос и отправляет его на сервер. При обращении к не реляционным делает это иначе. Просто обобщённый интерфейс для написания запросов непосредственно на том языке в котором программируешь вместо составления строковой переменной напрямую. Удобно? Да. Но ничего нового в этом нет.
ничего не знаю про linq, но толку от него если он это в sql превращает, отправляет на сервер, копирует по медленному интерфейсу данные, кастит ? мой пример выполниться в том же jvm процессе, прямо над структурами датафрейма. никто никуда перекачивать данные не будет.
кроме этого трансляция в sql говорит о том что записать развесистый объект, полученный к примеру от ML либы в поле уже не выйдет, в колонках только примитивные типы. верно?
вобщем трансляция может внешне выглядит похоже, но под капотом выглядит совершенно иначе.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710918
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene NewСам я люблю язык структурированных запросов. Но если посмотреть на то, сколько всяких технологий придумали для его замену, на то, что пропагандируют в разных книжках, создается ощущение какой то темной иррациональной ненависти к SQL.

Есть ли какие то рациональные причины?

Я вижу три возможных:
1. Реляционные БД может быть плохо сочетаются с рапараллеливанием на много компьютеров
2. ООП плохо связывается с SQL
3. Возможно считается, что среднестатистический программист настолько туп и не обладает способностями к абстрактному мышлению, что не в состоянии понять реляционную теорию, основанную на понятии множеств.


Все просто.
Не осилили.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710919
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene New,

Ну да, вот, 3;е

Возможно считается, что среднестатистический программист настолько туп и не обладает способностями к абстрактному мышлению, что не в состоянии понять реляционную теорию, основанную на понятии множеств.
...
Рейтинг: 0 / 0
Причины ненависти к языку SQL?
    #39710924
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eugene NewSergSuper,
Роберт Мартин, "Читая Архитектура", 2018 год. стр 170-172

Вроде человек с перфокарт начинал программировать, хотя и без особого успеха. Теперь книжки пишет, есть то хочется, я его понимаю. У него даже хватает честности признать, что ООП делается на процедурных языках со всеми его фишками.

Но на SQL его пробило. Я даже не понял, то ли он себя обманывает, то ли читателей. Суть в том, что он говорит, что решение о том, будет использоваться реляционная БД или нет надо откладывать до самого последнего момента. Приводит в пример свой проектик, который реализовал на плоских файлах.

Обман в том, что такой подход работает только если вы будете использовать реляционную базу как набор плоских файлов - то есть не будете использовать ее возможностей. Видал я в начале 2000-х такую программу - использовала Oracle, расчет зарплаты за месяц проводила за 10 часов. Но был выход - если запускать на сервере БД, то считало уже 5 часов. Потому что ребята делали это на dbf-файлах изначально и перенос на Oracel свели к запихиванию данных в таблицы в реляционной БД и полному скачиванию всей информации из них для последующей обработки. Очевидно, что все это можно было с полпинка оптимизировать до скорости в 100-1000 раз больше, если задействовать sql.

Насчет Мартина я так и не понял - то ли он действительно сам не может понять реляционные БД, то ли работает на пропаганду "линии партии".

Честно было бы сказать на его месте, что решение о использовании или неиспользовании реляционных БД принимается в самом начале. Мне, конечно, сложно представить, как можно не понимать простейших аспектов реляционной теории, но я не берусь отрицать существование таких людей.


Очевидно же.
Человек-дурак написал книгу не чтобы стали, а чтобы написать.
...
Рейтинг: 0 / 0
25 сообщений из 306, страница 2 из 13
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Причины ненависти к языку SQL?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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