The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"о проблемах реляционной модели per se"
Отправлено маргинал, 20-Авг-12 04:22 
> По походке похоже, что ответы-то знаете, но предпочитаете младенцев сразу за картошкой в магазин отправлять.  Какой-нибудь, там за углом сами найдут.

Проблема не в том, кто что знает, а кто как реагирует, когда выясняется что он чего-то не знает.

> Можно Вас попросить предложить свой ответ по проблеме реляционной модели, на которую сослались в #137?  А то мне вот тоже интересно -- то же самое (мир не прямоуголен) или что-либо иное, простое или сложное.

Чисто ради вас сделаю исключение. К тому же кое-кто уже получили свои уроки, сделав те заявления, которые они сделали (если им конечно хватит душевных сил эти уроки усвоить, но это уже их собственные проблемы). Так что можно раскрыть карты.

> Только поскольку в теории баз данных Ваш покорный собеседник скорее профан (максимум Дейта прочитал да обрывками ещё по разным местам), не сочтите за труд -- или прямым текстом, или точным набором ключевых слов. Огорчает, когда посылают "читать маны", не указав конкретный.

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

Но Дейт не раскрыл тему, почему же в большинстве СУБД (заявленных как реляционные) реляционная модель постоянно ломается, и почему ее так трудно реализовать. И вообще, на кой она нужна, если с ней постоянно какие-то странные проблемы.

И не смотря на всю глубину, все на самом деле очень просто. Хотя многие путают простоту с понятностью и легкостью. И так обычно всегда, чем глубже, тем проще.

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

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

И ничего здесь давным давно нового нет. Альтернативные основания математики развиваются аж с начала прошлого века. Правда в основном не в России. Поскольку в Советской и пост-Советской России в математике слишком долго лоббировалась "классическая" школа Колмогорова. И незаслуженно замалчивалась, например, школа Маркова, которого можно по праву считать одним из основателей конструктивной математики на мировом уровне. Что уж говорить про иностранные математические школы.

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

Что такое конструктивная математика? Далеко ходить не надо (хотя кому как). Ее примерами являются лямбда-исчисление, комбин'аторная логика (ударение на "а", от слова "комбинатор", к комбинаторике отношения не имеет) и теория категорий. Они выстраиваются из собственного самодостаточного базиса в обход теории множеств. А также функциональная и логическая парадигмы программирования на этой основе.

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

------------------------------------

Какое все это имеет отношение к реляционной модели? А такое, что это всего лишь математичекая теория, постороенная по классическим принципам, реляционные алгебра с исчислением - это фактически частное усиление теории множеств. Со всеми вытекающими проблемами неконструктивности (в математичеком смысле, а не в каких-то других смыслах, которые могут прийти в голову людям вслед за словом "конструктивность").

Но в чем же уникальность проблемы реляционной модели? В ее уникальном "местоположении". Как я уже сказал - это "черная овца". С одной стороны, по историческо-маркетинговым причинам она считается одной из основ информационных технологий. Но с другой стороны, это единственная технология в области (основ) ИТ, которая базируется на классическом математическом теоретико-множественном базисе. Все остальные ИТ (по крайней мере лично я  других исключений не знаю) прекрасно строятся и описываются с помощью конструктивных математических принципов. К примеру, любые парадигмы программирования. И любые технологии баз данных, отличные от реляционных (а реляционных технологий по сути и не существует, модель есть, а технологий нет, правда вроде сам Дейт все таки что-то такое родил на базе bdb, но опять таки лишь то, что находится поверх движка).

------------------------------------

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

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

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

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

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру