Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4 5 6 7 8 9 10 .. 13   вперед  Ctrl
 Re: Причины ненависти к языку SQL?  [new]
Andy_OLAP
Member

Откуда: я знаю, что Хапоэль Беэр-Шева - чемпион
Сообщений: 3151
MasterZiv
Eugene New
Сам я люблю язык структурированных запросов. Но если посмотреть на то, сколько всяких технологий придумали для его замену, на то, что пропагандируют в разных книжках, создается ощущение какой то темной иррациональной ненависти к SQL.

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

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



Все просто.
Не осилили.

А есть причина номер 4.

Вот Вы хороший программист. Очень хороший программист. Гениальный программист. И хотите войти в историю. Но SQL уже написали.
Тогда Вы изобретаете noSQL, делаете новую БД, какую-нибудь Кассандру или Монго, говорите всем, что это та самая серебряная пуля, "о которой столько говорили большевики", Вас носят на руках, приглашают на конференции, везде почет и уважение.

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

И вот Вы почиваете на лаврах, Вы можете пить пиво за одним столом с основателем противоположной методы или языка, а в интернете за Вашей спиной адепты скрещивают мечи в жарких спорах - "что лучше, C# или Java", "что лучше, SQL или noSQL". А Вы отдыхаете от трудов и остаетесь в памяти благодарных потомков как человек, который продвинул IT еще дальше в пропасть в светлое будущее.
1 окт 18, 14:09    [21691224]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Котовасия
Member

Откуда:
Сообщений: 1185
MasterZiv
Eugene New,

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

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

Об этом и пишут, я выше цитату приводил.
1 окт 18, 14:09    [21691226]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
mayton
Member

Откуда: loopback
Сообщений: 53031
Andy_OLAP
Вот Вы хороший программист. Очень хороший программист. Гениальный программист. И хотите войти в историю. Но SQL уже написали.
Тогда Вы изобретаете noSQL, делаете новую БД, какую-нибудь Кассандру или Монго, говорите всем, что это та самая серебряная пуля, "о которой столько говорили большевики", Вас носят на руках, приглашают на конференции, везде почет и уважение.

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

И вот Вы почиваете на лаврах, Вы можете пить пиво за одним столом с основателем противоположной методы или языка, а в интернете за Вашей спиной адепты скрещивают мечи в жарких спорах - "что лучше, C# или Java", "что лучше, SQL или noSQL". А Вы отдыхаете от трудов и остаетесь в памяти благодарных потомков как человек, который продвинул IT еще дальше в пропасть в светлое будущее.

NoSQL никто не изобретал. Тоесть нам сложно в истории развития It обозначить персону-создателя.
Это как с дифференциальным исчислением. Толи Ньютон. Толи Лейбниц. А может они вместе.
А может оно (счисление) уже давно витало в воздухе и некоторые физики средневековья
втихаря им пользовались. Просто не называли его громкими словами.

Изобретение "витает" в воздухе за несколько лет.
1 окт 18, 14:38    [21691296]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
mayton
Member

Откуда: loopback
Сообщений: 53031
Котовасия
MasterZiv
Eugene New,

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

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

Об этом и пишут, я выше цитату приводил.

Ему это все не надо. Ему надо закрывать баги, юзер-стори, и спринты. Итеративный подход. Гибкие методологии
всё разрулят. Об этом в смежном топике схлестнулись в смертельной схватке несколько ораторов.

Этот итеративный подход может деморализовать любого. К чему скажите вообще весь пласт знаний?
Фигачь спринты! И ублажай кастомера.
1 окт 18, 14:41    [21691306]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
казинак
Member

Откуда:
Сообщений: 1273
есть две причины избегать sql:
1)Все должно быть в ООП!!!!
2)Независимость от конкретной бд!

отсюда ОРМ linq jpql и др
1 окт 18, 17:07    [21691598]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
tunknown
Member

Откуда:
Сообщений: 819
казинак
есть две причины избегать sql:
1)Все должно быть в ООП!!!!
Последнее время всё больше людей сомневаются в тотальной полезности ООП.

казинак
2)Независимость от конкретной бд!

отсюда ОРМ linq jpql и др
Мне всегда было интересно, часто ли потенциальная кросс-платформенность реализовывалась или чаще оставалось для галочки.
1 окт 18, 17:48    [21691651]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
egorych
Member

Откуда: и зачем;
Сообщений: 4809
mayton
Ему это все не надо. Ему надо закрывать баги, юзер-стори, и спринты. Итеративный подход. Гибкие методологии
всё разрулят. Об этом в смежном топике схлестнулись в смертельной схватке несколько ораторов.

Этот итеративный подход может деморализовать любого. К чему скажите вообще весь пласт знаний?
Фигачь спринты! И ублажай кастомера.
осталось понять, чем SQL мешает фигачить спринты))
1 окт 18, 17:49    [21691652]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Basil A. Sidorov
Member

Откуда:
Сообщений: 11482
egorych
осталось понять, чем SQL мешает фигачить спринты))
Преферанс - отстой ... А в очко - думать надо, шанс считать
1 окт 18, 17:55    [21691668]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6644
H5N1
Eugene New
пропущено...

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


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

Eugene New
пропущено...

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

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

        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 повсеместно
Йо, именно этот пример плохой, он абсолютно ничем не лучше SQL


mayton, внезапно внутри любого SQL-движка живет кей-валуэ хранилище и циклы для джойнов :ohno:
1 окт 18, 18:33    [21691729]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
эта хрень вытеснит SQL повсеместно


Это типа темным людям без образования вроде H5N1 так понятнее, чем просто написать

select .. where ..
?

некоторые конструкции у этой фигни короче, меньше технического мусора


То, что ты написал, на 90% состоит из мусора.

ориентироваться на самых тупых это стиль майкрософт.

На таких как ты:)

никто никуда перекачивать данные не будет.


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

Ты вообще не понимаешь смысла своего spark-а, как библиотеки. Смысл этой фигни в том, чтобы писать sql-подобные запросы на данные не из реляционной БД. И чтобы это безболезненно переносилось на хранение в реляционных БД.
То есть тебя наоборот ногами пинают в сторону SQL от любимого тобой ООП и императива. Раз уж тебе мозги не дают ни получить образования, ни усвоить элементарные математические понятия.
1 окт 18, 20:02    [21691811]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
внезапно внутри любого SQL-движка живет кей-валуэ хранилище и циклы для джойнов


Модератор: Отредактировано


Тогда Вы изобретаете noSQL, делаете новую БД, какую-нибудь Кассандру или Монго


"Изобретение" в использовании всяких структур вроде деревьев, давно известных, описанных 50 лет назад и давно используемых. Выходит что этот "изобретатель" обманщик и мошенник.

Сообщение было отредактировано: 2 окт 18, 00:18
1 окт 18, 20:08    [21691815]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
Изобретение "витает" в воздухе за несколько лет


Все эти структуры данных и алгоритмы работы с ними изобрели лет 50 назад и настоящих авторов наверняка можно найти.
Правда тогда обошлось без бренда noSQL хотя бы потому, что сам SQL в это время еще не придумали :)

mayton
как обрабатывают данные SQL


Я имел в виду, что данные постепенно загружаются в реляционную базу, в которой потом массово обрабатываются SQL-запросами.
А данные микросервисов куда нибудь попадают, впоследствии чем то обрабатываются?
1 окт 18, 20:15    [21691818]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
mayton
Member

Откуда: loopback
Сообщений: 53031
казинак
1)Все должно быть в ООП!!!!

Ты отстал от жизни старичок. Это слоган 2000-х годов.

2)Независимость от конкретной бд!

По моему скромному наблюдению никто так и не сумел обосновать выгоду от этой "независимости".
Лично кастомеру эта независимость не нужна. И она тем более не нужна когда вы уже сидите
плотно на лицензии Oracle или MS-SQL. Я еще не встречал ни одной технологии которая-бы дала
независимость от stored procedures.
1 окт 18, 20:19    [21691822]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6644
Eugene New
внезапно внутри любого SQL-движка живет кей-валуэ хранилище и циклы для джойнов


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

Тогда Вы изобретаете noSQL, делаете новую БД, какую-нибудь Кассандру или Монго


"Изобретение" в использовании всяких структур вроде деревьев, давно известных, описанных 50 лет назад и давно используемых. Выходит что этот "изобретатель" обманщик и мошенник.

так и запишем, страницы памяти и индексы растут на деревьях =)

а струтуры хранения кей-валуэ рождены святым духом....
1 окт 18, 20:23    [21691826]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 11092
H5N1,

погоди, но ты привёл sql подобный запрос, который по синтаксису даже более громоздкий. Спрашивается почему бы не привести пример запроса на более родном языке, где действительно чему-то можно поучиться? Опустим пока как оно внутри обрабатывается.
1 окт 18, 21:36    [21691917]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
Модератор: Отредактировано


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

Сообщение было отредактировано: 2 окт 18, 00:17
1 окт 18, 21:45    [21691922]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 11092
Eugene New,

известный адепт Оракула
1 окт 18, 22:17    [21691943]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
H5N1
Member

Откуда: Yo.! из "Сравнения субд"
Сообщений: 604
Eugene New
Еще раз - если ты реляционную базу используешь как хранилище и все тянешь на клиента, у тебя никакой производительности не будет. А при правильной структуре реляционная база дает производительность обработки больших массивов данных на много порядков большую, чем ты способен написать на коленке. И адресные пространства тут не причем.

Модератор: Отредактировано


Eugene New
SQL позволяет получить производительность на порядок или несколько порядков большую. Причем с полпинка, элементарно.

если бы производительность позволяла то не пришел бы хадуп и не выдавил бы оракл из аналитики.

Симонов Денис
погоди, но ты привёл sql подобный запрос, который по синтаксису даже более громоздкий. Спрашивается почему бы не привести пример запроса на более родном языке, где действительно чему-то можно поучиться? Опустим пока как оно внутри обрабатывается.


основная фишка там именно та, что под капотом. если говорить лишь о синтаксисе, то там много чего можно сильно короче sql написать, типа df.filter("age".gt(30)), плюс спайка декларативной части и итеративной заметно красивей
        Dataset<Row> shit = vars.mapGroups(
                (MapGroupsFunction<Integer, String, String>) (key, values) -> {
                    MyMegaClass mc = new MyMegaClass(key);
                    while (values.hasNext()) {
                        mc.process(values.next());
                    }
                    return mc.toString();
                }, Encoders.STRING()) ;

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

Сообщение было отредактировано: 2 окт 18, 00:14
1 окт 18, 22:36    [21691950]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
Модератор: Удалено. Всем! Завязывайте.


Сообщение было отредактировано: 2 окт 18, 00:13
1 окт 18, 22:56    [21691960]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 11092
Eugene New,

ты не сечёшь фишку. SQL хорош для извлечения данных по некоторым критериям, но не для их аналитической обработки. Подумай что у нас есть в SQL для аналитики. Агрегатные и оконные функции, GROUP BY WITH ROLLUP, ну может быть CUBE. И всё собственно. Ну в Оракуле своя фича MODEL. Аналитика может предполагать гораздо более сложные алгоритмы, которые на SQL реализовать мягко говоря затруднительно.
1 окт 18, 23:10    [21691968]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
Симонов Денис,
Аналитика может предполагать гораздо более сложные алгоритмы, которые на SQL реализовать мягко говоря затруднительно


Примерно понимаю о чем вы, но хотелось бы подробностей. Конкретный пример или что то вроде того.
1 окт 18, 23:36    [21691977]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
Микропример не подойдет, нужна именно обработка больших массивов данных.
1 окт 18, 23:37    [21691979]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
mayton
Member

Откуда: loopback
Сообщений: 53031
Siemargl
mayton, внезапно внутри любого SQL-движка живет кей-валуэ хранилище и циклы для джойнов :ohno:

Хм... Непонятно... А где я давал информационный повод к этому сообщению?
1 окт 18, 23:46    [21691985]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
mayton
Member

Откуда: loopback
Сообщений: 53031
Симонов Денис
Eugene New,

ты не сечёшь фишку. SQL хорош для извлечения данных по некоторым критериям, но не для их аналитической обработки. Подумай что у нас есть в SQL для аналитики. Агрегатные и оконные функции, GROUP BY WITH ROLLUP, ну может быть CUBE. И всё собственно. Ну в Оракуле своя фича MODEL. Аналитика может предполагать гораздо более сложные алгоритмы, которые на SQL реализовать мягко говоря затруднительно.

Друзья. В топике идет какая-то подмена понятий и переворачивание причин и следствий.

Я предлагаю следующие тезисы.

1) SQL - это декларативный язык который позволяет описать нам то ЧТО мы хотим получить из БД.
2) SQL никак не описывает КАК мы хотим получить данные. Тоесть алгорим выборки. Грубо
говоря он 100% оставляет этот вопрос на откуп RDBMS.
3) SQL не запрещает в качестве storage-layer использовать хранилища NoSQL (NotOnlySQL).
Пример технологий: ApacheDrill, CriteriAPI, Hive e.t.c. Ну реально! Нет нигде на это запрета!
Можно даже DBF и CSV файлы брать в качестве источника данных.

Стартанём с этой позиции.
1 окт 18, 23:58    [21691996]     Ответить | Цитировать Сообщить модератору
 Re: Причины ненависти к языку SQL?  [new]
Eugene New
Member

Откуда:
Сообщений: 456
mayton,
все же я считаю вопрос о хранении важным, т. к. структура реляционной базы тесно связана и с текстами sql-запросов, и с их эффективностью. Поэтому имеет смысл все это рассматривать как единое целое.

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

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

Может все эти открытия считаются открытиями потому, что становится бесплатным то, что 20 лет назад было коммерческим и недешевым?

Если я в чем то ошибаюсь - поправьте.
2 окт 18, 00:36    [21692020]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4 5 6 7 8 9 10 .. 13   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить