Чувствую, что несу чушь,
Oct. 23rd, 2012 11:27 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
но не могу отделаться от ощущения, что с эволюцией баз данных нас очень сильно наебали.
Это по поводу этого: http://plumqqz.livejournal.com/323506.html
Меня очень сильно бесит расхождение технологий: с одной стороны, классические СУБД, с другой NoSQL, с третьей - всякие in-memory распределенные базы, с четвертой - всякие аналитические БД с column storage, сжатием данных и перекосом в сторону чтения типа vertica, sybase iq или забиваторской QD. Плюс еще всякие datomic до которой я никак добраться не могу.
Все это, очевидно, между собой мало совместимо, решает разные задачи, требует каких-то дурных миграцией данных между собой и превращает работу с большим количеством данных в тыкву, потому что вместо одного толкового решения существует десяток решений разной степени безумности, требующих интеграции.
Это по поводу этого: http://plumqqz.livejournal.com/323506.html
Меня очень сильно бесит расхождение технологий: с одной стороны, классические СУБД, с другой NoSQL, с третьей - всякие in-memory распределенные базы, с четвертой - всякие аналитические БД с column storage, сжатием данных и перекосом в сторону чтения типа vertica, sybase iq или забиваторской QD. Плюс еще всякие datomic до которой я никак добраться не могу.
Все это, очевидно, между собой мало совместимо, решает разные задачи, требует каких-то дурных миграцией данных между собой и превращает работу с большим количеством данных в тыкву, потому что вместо одного толкового решения существует десяток решений разной степени безумности, требующих интеграции.
no subject
Date: 2012-10-23 09:57 am (UTC)no subject
Date: 2012-10-23 10:10 am (UTC)А потом жалуются на пиздец.
no subject
Date: 2012-10-23 10:28 am (UTC)no subject
Date: 2012-10-23 05:58 pm (UTC)Это уже не просто вопль. В отличае от меня этот человек что, то пишет и не первый год и у него такие вот вопросы.
Насчет DB2 ну не знаю. MySQL и MS SQL по сравнению с ним это уже не то.
no subject
Date: 2012-10-23 07:02 pm (UTC)no subject
Date: 2012-10-23 10:23 am (UTC)no subject
Date: 2012-10-23 10:29 am (UTC)no subject
Date: 2012-10-23 10:31 am (UTC)PS Написать собственный генератор айдюков, коли приспичило, как я смотрю, задача тоже непосильная.
no subject
Date: 2012-10-23 10:59 am (UTC)про генератор -- по силам, конечно, но речь была про стандарт. Конечно, мне никуда не впёрлось перетаскивать программу с одной субд на другую, поэтому мне неактуально, но стандарт однако не даёт способа узнать последний вставленный id.
no subject
Date: 2012-10-23 11:03 am (UTC)Если вставляется то, что не является уникальным, то нахера оно вообще вставляется? Типа дублирование - ну вроде как для надежности? Как написал какой-то руководитель, "пришлите мне четыре прозрачных однопиксельных гифа".
про генератор -- по силам, конечно, но речь была про стандарт.
Я, собственно, про стандарт и пишу - т.е. написать собственными силами, используя стандартный sql-92, генератор айдюков не по силам. Ок, ясно.
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From: (Anonymous) - Date: 2012-10-23 06:02 pm (UTC) - Expand(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-10-23 06:00 pm (UTC)no subject
Date: 2012-10-23 07:13 pm (UTC)no subject
Date: 2012-10-23 10:33 am (UTC)SELECT SCOPE_IDENTITY() - mssql
LAST_INSERT_ID() - mysql
IDENTITY_VAL_LOCAL() - db2
no subject
Date: 2012-10-23 10:35 am (UTC)no subject
Date: 2012-10-23 11:21 am (UTC)no subject
Date: 2012-10-23 11:23 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From: (Anonymous) - Date: 2012-10-23 06:05 pm (UTC) - Expand(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2012-10-23 06:02 pm (UTC)no subject
Date: 2012-10-23 11:24 am (UTC)А в жире, например, сделали отдельную табличку с генераторами, и при необходимости выделяют блоками.
no subject
Date: 2012-10-23 11:33 am (UTC)no subject
Date: 2012-10-23 11:47 am (UTC)no subject
Date: 2012-10-23 03:47 pm (UTC)либо (при наличии оптимизации и точки контроля) делают select max(id) + 1 from table / retry on commit fail
> т.е. вернуть из insert/update значения полей, которые были автосгенерированы
это уровень API, а не SQL