Личные инструменты
cntfree counters

СУБД

Материал из Lurkmore

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

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

java_objects
id (int) object (blob)
1 (binary)
2 (binary)

Данная операция моментально превращает сложную систему в подобие громадного текстового файла, уничтожая любые преимущества СУБД по скорости и все возможности по работе с данными. При этом данная модель данных настолько распространена, что практически является локальным мемом на Ежедневном ЧтоЗаНахе[1].

В случае, если индусский говнокодер не знаком с Java, но знаком с иерархиями — структура таблички несколько изменится[2].

universe
id (int) parent_id (int) value (varchar(1024))
1 0 документ1
2 1 строка документа1
3 1 строка документа2
4 0 документ2

Таким образом, одной таблички более чем достаточно для описания системы любой сложности. Хотя существуют ООСУБД и документ-ориентированные СУБД. Разница в том, что нормальная OO или документ-ориентированная БД оптимизирует хранение этих самых объектов/документов. И предоставляет возможность делать запросы (например, XQuery/XPath в случае с XML). Индусский «аналог» этого не умеет.

Содержание

[править] К. О. сообщает

Весь смысл использования базы данных в том, чтобы по этим данным можно было делать запросы. Вы видите в этой таблице данные? И я не вижу. А они есть.

[править] В интернетах

В интернетах СУБД являются темой срача и фаллометрии, как, впрочем, и все остальное в этой вселенной. Уровень ФГМ на тематических форумах зашкаливает при упоминании вражьей базы данных. Вечные темы:

[править] Новые разработки

Многие современные СУБД произошли (прямо или косвенно) от Ingres, написанной в Университете Беркели в 70-х (ОМГ! BSD оттуда же!). После того как основные алгоритмы поиска и хранения данных вместе с языком SQL стабилизировались, разработчики современных систем заняты в основном:

  • Добавлением поддержки малопопулярных возможностей SQL;
  • Добавлением тучи малопопулярных функций и типов;
  • Написанием новой СУБД с нуля (теперь и на PHP);
  • Написанием трансляторов из базы данных в объекты (облегчая тем самым работу быдлокодерам);
  • Перепиливанием системы частично или полностью для поддержки XML.

Последний пункт является причиной отдельной темы срача, где участники делятся на лагерь, поклоняющийся Oracle и DB2 за умение работать с XML без бубна, и лагерь, старающийся убедить противника в том, что XML = УГ.

[править] Примечания

  1. «Хороший» пример данного подхода приведен в книге Мартина Фаулера «Архитектура корпоративных программных приложений» ISBN 5-8459-0579-6.
  2. Справедливо для реляционных СУБД. Объектные, объектно-реляционные СУБД хранят объекты в полях объектного типа, например Oracle.


Источник — «http://lurkmore.ru/СУБД»