metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2012-12-18 01:53 pm

Об отсутствии типов в БД

http://justy-tylor.livejournal.com/195108.html
Как сейчас дела во всяких NoSQL обстоят? Там та же содомия из поддельных ad-hoc и динамических типов?
develop7: (dero)

[personal profile] develop7 2012-12-18 10:59 am (UTC)(link)
Во всяких — по-всякому.

[identity profile] aamonster.livejournal.com 2012-12-18 11:05 am (UTC)(link)
Особенно шикарно, что у меня в ленте следующий пост -
"Мне тут добрые люди подсказывают (а то сам я в суете чё-то подзабыл), что ровно 25 лет назад, 18 декабря 1987 года, американский лингвист и программист Ларри Уолл сообщил о выпуске им перла 1.0 — это надо отметить!"

[identity profile] theiced.livejournal.com 2012-12-18 03:24 pm (UTC)(link)
походом в гей клуп и публичной груповой ёблей в жёппу?

[identity profile] thedeemon.livejournal.com 2012-12-18 03:50 pm (UTC)(link)
В дом престарелых. Гей-клубы сейчас заняты молодежью с node.js.

[identity profile] sergiej.livejournal.com 2012-12-18 11:18 am (UTC)(link)
ИМХО в этом смысле NoSQL ещё хуже :)
а вообще давно надо забить на типизацию данных в базе и думать о типах только в приложении. Иначе шиза растёт.

[identity profile] fas-tm.livejournal.com 2012-12-18 11:24 am (UTC)(link)
ага. вытащить 100500 строк и потом в приложении процессить ? Иногда проще застрелиться.

[identity profile] sergiej.livejournal.com 2012-12-18 11:25 am (UTC)(link)
Зачем вытаскивать? Вытаскиваешь что нужно, в приложении делаешь из них нужные типы. Или ты предлагаешь процедуры на базе писать по обработке данных?

[identity profile] fas-tm.livejournal.com 2012-12-18 11:34 am (UTC)(link)
>>Вытаскиваешь что нужно
Мне нужно вытащить килограммы. пока не вытащу - могу и не узнать что это именно они :)
Это ж типичный ад когда непонятно как описывать типы полей в базе или вдруг при расширении оказывается нужно хранить еще не только килограммы а еще унции к примеру.

[identity profile] sergiej.livejournal.com 2012-12-18 11:38 am (UTC)(link)
Шутишь. То есть масса в килограммах и масса в фунтах это две разные массы?
Индусятиной пахнет, уважаемый.
Приложение создаёт тип "масса" записывает его в базу в формате который удобен для поиска и сортировки, вытягивая делает из него свой тим "Масса" который в зависимости от локали будет конвертироваться в стринг как фунты, килограммы или стаканы.

(no subject)

[identity profile] fas-tm.livejournal.com - 2012-12-18 11:53 (UTC) - Expand

(no subject)

[identity profile] sergiej.livejournal.com - 2012-12-18 12:15 (UTC) - Expand

(no subject)

[identity profile] justy-tylor.livejournal.com - 2012-12-18 12:23 (UTC) - Expand

(no subject)

[identity profile] sergiej.livejournal.com - 2012-12-18 12:25 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2012-12-18 12:52 (UTC) - Expand

(no subject)

[identity profile] justy-tylor.livejournal.com - 2012-12-18 12:53 (UTC) - Expand

(no subject)

[identity profile] sergiej.livejournal.com - 2012-12-19 09:02 (UTC) - Expand

(no subject)

[identity profile] justy-tylor.livejournal.com - 2012-12-19 12:05 (UTC) - Expand

(no subject)

[identity profile] avnik.livejournal.com - 2012-12-18 14:00 (UTC) - Expand

[identity profile] metaclass.livejournal.com 2012-12-18 11:35 am (UTC)(link)
Я подумываю в базе процедуры не писать (не делать их частью схемы, грех это) а отсылать их туда на исполнение.
Это в целом работает, но вопросы безопасности (которые обычно решают заворачиванием работы с данными в SP) превращаются в тыкву. Приходится наворачивать сервера приложений и прочий грех.

(no subject)

[identity profile] sergiej.livejournal.com - 2012-12-18 11:39 (UTC) - Expand

(no subject)

[identity profile] falcrum.livejournal.com - 2012-12-18 12:47 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2012-12-18 12:54 (UTC) - Expand

[identity profile] plumqqz.livejournal.com 2012-12-18 11:28 am (UTC)(link)
Я бы автору - который по ссылке - посоветовал бы бабу, что ли, завести. Ну или пить начать в качестве паллиатива. Впрочем, простой народ не любит простые решения.

[identity profile] metaclass.livejournal.com 2012-12-18 12:04 pm (UTC)(link)
Пить не помогает. Во всяком случае - максимум, что это дает - возможность нормально работать, не привлекая хаскелей и теорию категорий свыше необходимого.

[identity profile] plumqqz.livejournal.com 2012-12-18 12:16 pm (UTC)(link)
Да, тогда дело плохо.

[identity profile] nivanych.livejournal.com 2012-12-18 01:45 pm (UTC)(link)
Речь про автора по ссылке.

[identity profile] theiced.livejournal.com 2012-12-18 03:27 pm (UTC)(link)
хорошо что советы тупых уебланов никому не интересны

[identity profile] theiced.livejournal.com 2012-12-18 03:27 pm (UTC)(link)
М, зауебаньте его, он раздражает

[identity profile] metaclass.livejournal.com 2012-12-18 03:37 pm (UTC)(link)
Да ну вас всех фпень, не буду я банить за такие мелочи:)

(no subject)

[identity profile] theiced.livejournal.com - 2012-12-18 15:40 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2012-12-18 15:42 (UTC) - Expand

(no subject)

[identity profile] theiced.livejournal.com - 2012-12-18 15:43 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2012-12-19 10:51 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2012-12-19 11:04 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2012-12-19 11:04 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2012-12-19 11:15 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2012-12-19 11:17 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2012-12-19 11:18 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2012-12-19 11:23 (UTC) - Expand

(no subject)

[identity profile] zamotivator.livejournal.com - 2012-12-19 11:24 (UTC) - Expand

(no subject)

[identity profile] artem liubeznyi - 2012-12-19 12:25 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2012-12-19 12:37 (UTC) - Expand

(no subject)

[identity profile] artem liubeznyi - 2012-12-19 13:35 (UTC) - Expand

(no subject)

[identity profile] berezovsky.livejournal.com - 2012-12-19 12:39 (UTC) - Expand

(no subject)

[identity profile] metaclass.livejournal.com - 2012-12-19 12:41 (UTC) - Expand

[identity profile] vit-r.livejournal.com 2012-12-18 11:30 am (UTC)(link)
Не могу не процитировать пробежавшее недавно.

Мне всегда в подобных случаях почему-то вспоминается один случай: параметр в функцию передавался путем неявного приведения типа, причем с перегруженным оператором этого самого приведения.

Система типов хороша, если она хороша. Чего в живой природе встречается гораздо реже чем хотелось бы

[identity profile] nivanych.livejournal.com 2012-12-18 11:51 am (UTC)(link)
Всякие NoSQL есть.
Есть и с типами под хацкель ;-)

[identity profile] kurilka.livejournal.com 2012-12-18 03:34 pm (UTC)(link)
именно под хацкель?
ты ведь не про acid-state?

[identity profile] nivanych.livejournal.com 2012-12-18 03:37 pm (UTC)(link)
Да про него, про него...
И про их идеи абсолютной привльностьи in-memory-датабаз.
Есличо, я не призываю это пользовать ;-)

[identity profile] jakobz.livejournal.com 2012-12-18 12:42 pm (UTC)(link)
Надо уже разделять монстроидальные СУБД, где все в куче, на кусочки. Пусть будет отдельно тупое хранилище бинарных данных, отдельно брокер транзакций, отдельно оптимизатор запросов, и отдельно сериализатор - хочешь с типами, хочешь с JSON.

[identity profile] metaclass.livejournal.com 2012-12-18 12:52 pm (UTC)(link)
Да, но ведь все кончится десятком разной степени недоделанности комбайнов :)

[identity profile] andybil.livejournal.com 2012-12-18 12:49 pm (UTC)(link)
Да никакой содомии. Все динамические типы собраны из букв, цифр и разделителей.
Обычный ML (XML, HTML и т.д.).
Какие проблемы? В каждом приложении напишите свой небольшой браузер.

[identity profile] permea-kra.livejournal.com 2012-12-19 01:37 pm (UTC)(link)
Сугубо гипотетически есть Oracle Berkeley DB XML с xsd.