Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 45 46 47 48 49 [50] 51 52 53 54 .. 83   вперед  Ctrl
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
Я все же предлагаю внимательно прочитать эту статью, обратив при этом особое вниманием на понятие существенности. В соответсвии с этим, навигацию можно определить как способ доступа к данным, использующий существенные конструкции отличные от отношений. Это конечно немножко стремно, поскольку использование отношенией тоже можно обозвать как "навигацию".... типа "навигация по отношениям" :). Ну пусть предметом спора будет "нереляционная навигация".

Дейт там говорит про связи, но в принципе тоже можно сказать и про списки. Например двусвязный список можно опять-таки привести к отношению, добавив атрибут позволяющий отсортировать кортежи по порядку.
23 фев 05, 17:12    [1340365]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2400
Блог
U-gene
В соответсвии с этим, навигацию можно определить как способ доступа к данным, использующий существенные конструкции отличные от отношений.
Date
Конструкция, связанная с данными, существенна, если ее утрата вызывает потерю информации
Давайте попробуем определиться что это за конструкции, отличные от отношений и почему они являются существенными? Какую информацию мы можем потерять, отказавшись от них? Обращаю ваше внимание, что речь идёт лишь об утрате информации. Не об удобстве пользователя (программиста), не о красоте структур данных, а об информации.

Итак - два вопроса.
1) Что это за структуры, отличные от отношений? Определение.
2) Почему они существенны?
23 фев 05, 18:06    [1340445]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
c127

Да нет проблем. Много определений это не отсутсвие определения.

Так их здесь уже много разных. Существенные черты навигации с точки зрения вопросов наличия или отсутствия ее в РМД вроде более или менее так или иначе просматриваются. Ну, подумаешь, не смогли ее еще олчить от дуругих вычислительных средств процедурных языков.
Ладно буду ждать что вы там решите с этой навигацией, и есть она в РМД или нет.
Хотя, мне кажется, существуют какие-то примеры, где навигация (вместе, конечно, с др средствами процедурных языков - типа циклов) дает простой способ получения результатов, а на SQL пришлось бы поломать немного голову. Разумеется есть обратное во многих случаях - на SQL результат получить легко (даже для уборщицы), а там нужно попариться (даже если не обращать внимания на циклы).
23 фев 05, 20:04    [1340531]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
serg99
Member

Откуда:
Сообщений: 422
2 Павел Воронцов

Будьте добры - сформулируйте ещё раз что есть навигация? А ещё лучше - что такое ОМД? Где можно прочесть формальное описание этой модели данных?

Наиболее известный вариант описания - это стандарт ODMG, который можно заказать на сайте этой организации (уже правда не существующей). Представляет собой небольшую книжку. Мне правда описанный там вариант ОМД не нравится.

Из Вашего (неполного, как Вы сами сказали) определения на стр. 47 можно понять, что навигация - это процесс получения одного множества из другого. Вопросы, сразу же возникающие:
1) Множества чего?

Элементов множества :-). Неполнота (упрощение) моего определения собственно состоит в предположении что элемент множества – это объект. Требование идентифицируемости объекта может быть достигнута за счет механизма уникальных идентифиаторов.

2) Где и как хранится информация о связи одного множества с другим? Она сама по себе где-то присутсвует или тоже в виде каких-то сущностей (объектов? множеств?)?

Связи есть между объектами. Объекты группируются в множества в контексте выполняемых операций по доступу к данным. Как связи хранятся - не существенно с концептуальной точки зрения (хотя и очень важно с реализационной точки зрения). Например в РСУБД связи могут храниться в атрибутах.

3) Можно получить более полное (подробное) описание этого процесса?

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

Ученики(`Вася`,`Петя`).Класссы.Учителя

Знак «.» означает один шаг навигации.

Сначала формируется множество из двух объектов (Вася и Петя). Затем используя информацию о том в каком классе учатся ученики получается множество объектов Классов. Пусть например мальчики учатся в разных классах 1А и 1Б. То есть результатом первой операции навигации тогда будет множество, которое состоит из двух объектов-классов (1А, 1Б). Далее пользуясь информацией о том кто является учителем в каком классе мы получаем множество учителей. Пусть например в 1А учителями работают Марья Ивановна и Мария Петровна, в классе 1Б – Парасья Никаноровна. Тогда результатом второй операции навигации будет множество учителей (3 перечисленные учительницы). То есть в результате выполнения всего навигационного запроса мы получаем из множества состоящего из двух учеников – множество состоящее из трех учителей.

При этом навигация действует в любом направлении. Скажем запрос

Учителя(`Парасья Никаноровна`).Классы.Ученики

выдаст множество всех учеников Парасьи Никаноровны. Если она учит только один класс 1Б в котором 30 учеников, то на выходе будет множество из 30 объектов – учеников. Если она учит еще и класс 2А с 34 учениками, то на выходе будет множество из 64 учеников.


Надеюсь на плодотворную дискуссию

Честно говоря неохота ввязываться в дискуссию – времени мало.
24 фев 05, 02:22    [1340710]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
c127
Guest
2 vadiminfo

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

Я с этим не спорю.
24 фев 05, 03:31    [1340719]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
serg99
Нет у меня никакой путаницы, но я правда не понял кто телега а кто лошадь.

Вы пишете:
serg99
Описание предметной области должно опираться на определенную модель даных.

Эта фраза содержит несколько ошибок.
1. Описание предметной области никак не связано с моделью данных. Это вообще разные уровни. Пожалуйста, перечитайте цитату Fabian Pascal, которую я привел.
2. Как следствие, описание предметной области не может опираться на модель данных. И даже не должно (у них задачи разные).
3. Если принять, что лошадь — конкретная модель предметной области, телега — конкретная схема БД, проектируемая в рамках выбранной модели данных, то у вас телега впереди лошади. Об этом вам и намекают.
Возможно, вы просто неверно выразились. Тогда забудем.
В противном же случае, этот факт лишь подчеркивает как отсутствие у Вас твердого теоретического базиса в области проектирования БД (не понял кто телега, а кто лошадь), так и нежелание эту проблему преодолеть (нет у меня никакой путаницы). Прошу не обижаться, nothing personal. Мы все учились понемногу...

Теперь о пресловутой навигации. У меня сложилось мнение, что вы начали читать этот топик с моего сообщения для коллеги Андрея Леонидовича, не раньше. Не поняв суть разговора, кинулись сообщать свое мнение. Не задумывались, что мы тут о чем-то пишем два года на 45 страницах? Специально для вас сообщаю, что есть ваш сторонник (из ОО-лагеря), далее ЧАЛ, который, «критикуя» РМД, помимо прочего, написал, что РМД, де, утратила «навигацию». Под навигацией он определенно подразумевал переход от записи к записи. В пример привел курсор, как конструкцию перебора. Указал, что курсор «нарушает РМД». Если вам это «определение» коллеги ЧАЛ не понравилось, почему вы начали оппонировать мне, а не ему? Где логика?
Далее, про вашу трактовку навигации. Это же классическое соединение отношений в РМД. Что тут обсуждать? Такая-то «навигация» в РМД даже коллегой Чал не подвергалась сомнению. Более того, операция навигации в ОО-модели «точка» (Ученики(`Вася`,`Петя`).Классы.Учителя) есть бледное подобие соединения в РМД. Это его частный случай, внутреннее эквисоединение. Невозможно выразить «точкой» общий случай, то есть тета-соединение.
Должен отметить, что ваша трактовка «навигации» не соответствует пониманию этого термина теоретиками РМД, недвусмысленно указывающими, что РМД “substitutes set-processing for record-at-a-time processing” и “does away with navigation”.
24 фев 05, 06:58    [1340762]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2400
Блог
serg99
Наиболее известный вариант описания - это стандарт ODMG, который можно заказать на сайте этой организации (уже правда не существующей). Представляет собой небольшую книжку. Мне правда описанный там вариант ОМД не нравится.
Эрго - удовлетворяющего Вас описания не существует. Тогда о чём речь?
serg99
1) Множества чего?

Элементов множества :-). Неполнота (упрощение) моего определения собственно состоит в предположении что элемент множества – это объект. Требование идентифицируемости объекта может быть достигнута за счет механизма уникальных идентифиаторов.
Что такое объект? Определение.
serg99
Связи есть между объектами. Объекты группируются в множества в контексте выполняемых операций по доступу к данным. Как связи хранятся - не существенно с концептуальной точки зрения (хотя и очень важно с реализационной точки зрения). Например в РСУБД связи могут храниться в атрибутах.
Связи просто есть? Есть где? Как они проявляются? Связь - это объект? Множество объектов - тоже объект? Ясности хочу. Что такое объект?
serg99
Это долго. Приведу небольшой опять же упрощенный пример. Например нужно узнать кто является учителями учеников средней школы Васи и Пети. Соответствующий запрос можно например записать как

Ученики(`Вася`,`Петя`).Класссы.Учителя

Знак «.» означает один шаг навигации.

Сначала формируется множество из двух объектов (Вася и Петя). Затем используя информацию о том в каком классе учатся ученики получается множество объектов Классов. Пусть например мальчики учатся в разных классах 1А и 1Б. То есть результатом первой операции навигации тогда будет множество, которое состоит из двух объектов-классов (1А, 1Б). Далее пользуясь информацией о том кто является учителем в каком классе мы получаем множество учителей. Пусть например в 1А учителями работают Марья Ивановна и Мария Петровна, в классе 1Б – Парасья Никаноровна. Тогда результатом второй операции навигации будет множество учителей (3 перечисленные учительницы). То есть в результате выполнения всего навигационного запроса мы получаем из множества состоящего из двух учеников – множество состоящее из трех учителей.

При этом навигация действует в любом направлении. Скажем запрос

Учителя(`Парасья Никаноровна`).Классы.Ученики

выдаст множество всех учеников Парасьи Никаноровны. Если она учит только один класс 1Б в котором 30 учеников, то на выходе будет множество из 30 объектов – учеников. Если она учит еще и класс 2А с 34 учениками, то на выходе будет множество из 64 учеников.
Мы не боимся трудностей... Вопрос можно? Система сама формирует набор объектов (множество) по навигационному запросу? Откуда она узнаёт, что Вася с Петей учатся в некотором классе и учат их такие-то учителя? Или программист должен произвести какие-то действия, чтобы столь изящная нотация начала работать (какие действия?) ? В обратную сторону навигация работает всегда?
24 фев 05, 09:10    [1340889]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
serg99
Member

Откуда:
Сообщений: 422
2 mir

1. Описание предметной области никак не связано с моделью данных. Это вообще разные уровни. Пожалуйста, перечитайте цитату Fabian Pascal, которую я привел.

У Вас с Фабианом может и не связано. Похоже что Вы по какой то причине считаете, что у меня «описание предметной области» это эквивалент концептуального уровня у Фабиана.

2. Как следствие, описание предметной области не может опираться на модель данных. И даже не должно (у них задачи разные).
3. Если принять, что лошадь — конкретная модель предметной области, телега — конкретная схема БД, проектируемая в рамках выбранной модели данных, то у вас телега впереди лошади. Об этом вам и намекают.

Так схема БД и есть описание модели предметной области, в рамках РМД. Предметная область существует в объективной реальности независимо от того сколько моделей или концепций мы для нее сочинили, и в рамках какой модели данных мы сохраняем в СУБД формальное описание одной из таких концепций. В РСУБД для описания предметной области используется язык SQL (его DDL часть), который опирается на РМД.

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


Возможно, вы просто неверно выразились. Тогда забудем.
В противном же случае, этот факт лишь подчеркивает как отсутствие у Вас твердого теоретического базиса в области проектирования БД (не понял кто телега, а кто лошадь), так и нежелание эту проблему преодолеть (нет у меня никакой путаницы). Прошу не обижаться, nothing personal. Мы все учились понемногу...

Это обычная ситуация. Если Вы начнете в форуме определять например что такое есть «проектирование БД», то удивитесь многообразию мнений по этому поводу. Я как то наблюдал в профессональном форуме спор до хрипоты о том, что такое «система реального времени». И хотя спорящие работали с такими системами всю жизнь, они так и не пришли к общему мнению.

Теперь о пресловутой навигации. У меня сложилось мнение, что вы начали читать этот топик с моего сообщения для коллеги Андрея Леонидовича, не раньше. Не поняв суть разговора, кинулись сообщать свое мнение. Не задумывались, что мы тут о чем-то пишем два года на 45 страницах? Специально для вас сообщаю, что есть ваш сторонник (из ОО-лагеря), далее ЧАЛ, который, «критикуя» РМД, помимо прочего, написал, что РМД, де, утратила «навигацию». Под навигацией он определенно подразумевал переход от записи к записи. В пример привел курсор, как конструкцию перебора. Указал, что курсор «нарушает РМД». Если вам это «определение» коллеги ЧАЛ не понравилось, почему вы начали оппонировать мне, а не ему? Где логика?

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

Что говорил, а тем более подразумевал уважаемый Андрей Леонидович понять как правило было мягко сказать непросто. Вы же в своем письме четко сформулировали мысль с которой я просто не согласился. Мое мнение касалось только этого письма а не тысячи других писем за последние 2 года. Интернет форумы это как раз то место где люди могут «кинуться сообщать свое мнение» в любое время, никого не спрашивая и по любому поводу. И это правильно.


Далее, про вашу трактовку навигации. Это же классическое соединение отношений в РМД. Что тут обсуждать? Такая-то «навигация» в РМД даже коллегой Чал не подвергалась сомнению. Более того, операция навигации в ОО-модели «точка» (Ученики(`Вася`,`Петя`).Классы.Учителя) есть бледное подобие соединения в РМД. Это его частный случай, внутреннее эквисоединение. Невозможно выразить «точкой» общий случай, то есть тета-соединение.

Замечу, что я не утверждал что навигация это достаточный способ манипуляции данными, я не утверждал что в РСУБД не может быть реализована навигация как я ее определил, и я не хотел выразить «точкой» какое либо соединение. Обсуждать синтаксис гипотетического запросного языка в гипотетическом примере я не хочу, потому что это не имеет отношения к понятию «навигация».

Должен отметить, что ваша трактовка «навигации» не соответствует пониманию этого термина теоретиками РМД, недвусмысленно указывающими, что РМД “substitutes set-processing for record-at-a-time processing” и “does away with navigation”.

А почему она должна соответствовать? К тому же в приведенных Вами словах я не нашел определения понятия «навигация» теоретиками РМД.

2 Павел Воронцов

Эрго - удовлетворяющего Вас описания не существует. Тогда о чём речь?

Вы спросили где можно посмотреть формальное определение ОМД, - я ответил. Больше вроде бы ни о чём. То что существует другая ОМД и что соответсвующая СУБД находится в стадии реализации – я уже писал. Так как тема топика – это «сравнение СУБД», то я не вижу смысла более подробно обсуждать альтернативную ОМД, пока не появится хотя бы прототип этой СУБД.

Что такое объект? Определение.

Потерпите до прототипа и этот и остальные Ваши вопросы снимутся.
25 фев 05, 02:46    [1343417]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
serg99
Так схема БД и есть описание модели предметной области, в рамках РМД. Предметная область существует в объективной реальности независимо от того сколько моделей или концепций мы для нее сочинили, и в рамках какой модели данных мы сохраняем в СУБД формальное описание одной из таких концепций. В РСУБД для описания предметной области используется язык SQL (его DDL часть), который опирается на РМД.


Не забывайте, что существует общепринятая терминология. Знать ее и следовать ей — обязанность специалистов. Вы совершенно определенно вкладываете в достаточно известные понятия свой собственный смысл. Смысл, который тем самым никому не понятен сразу и требуются ваши многословные объяснения. Это то, что традиционно называется в науке “lack of knowledge and misusing terms”.
Постарайтесь понять, что критика вашей фразы относится к терминологии. А термин «модель» вообще самый семантически перегруженный в науке, поэтому использовать его надо вообще с крайней тщательностью.
Итак:
serg99
Предметная область существует в объективной реальности независимо от того сколько моделей или концепций мы для нее сочинили, и в рамках какой модели данных мы сохраняем в СУБД формальное описание одной из таких концепций.

Абсолютно верно.
serg99
Так схема БД и есть описание модели предметной области, в рамках РМД.

Терминологически неверно. Да и словосочетание «описание модели» бессмысленно.
serg99
В РСУБД для описания предметной области используется язык SQL (его DDL часть)

Неверно во всех смыслах.
Мой совет: проанализируйте, к примеру, такую модель предметной области, как ER-модель. Хоть в нотации Чена, хоть в нотации Crow’s Foot. И задумайтесь, что именно она выражает, зачем создается и почему ее можно преобразовать в сетевую БД, реляционную БД или ОО-БД. Причем иногда еще и различными способами.
По поводу «навигации» уже ничего писать не буду, ибо надоело. Лично к вам никаких претензий нет, просто мне уже все для себя понятно.
Успехов.
25 фев 05, 06:34    [1343467]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
Павел Воронцов
Member

Откуда: Новосибирск
Сообщений: 2400
Блог
To serg99
Потерпите до прототипа и этот и остальные Ваши вопросы снимутся.

Хм. Мне почему-то казалось, что сначала должна быть (хоть какая-то) теория, а уж потом реализация. Если с каждой реализацией возникает новая модель данных (сиречь теория) со своей собственной большой буквой О, то грош цена ей как теории. Моё такое мнение (МТМ).

Вам, видимо, нравится запрягать телегу впереди. Ну что ж, дело вкуса. С удовольствием посмотрю на то, что у Вас получится. Без всякой иронии - с удовольствием и интересом.
25 фев 05, 06:35    [1343470]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Все-таки ER-модель в нотации Чена придумана как-раз для проектирования реляционных структур и удобнее именно при работе с РСУБД. Для ООСУБД предпочтительнее, например, ОО-модели в UML-нотации.
25 фев 05, 09:59    [1343705]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
Alexey Rovdo
Все-таки ER-модель в нотации Чена придумана как-раз для проектирования реляционных структур и удобнее именно при работе с РСУБД. Для ООСУБД предпочтительнее, например, ОО-модели в UML-нотации.

Спорный вопрос. В любом случае, в том же Sybase PowerDesigner можно построить концептуальную модель и преобразовать ее хоть в реляционную, хоть в ОО-модель. Кроме того, разве вы в ER-модели не приметили наследование -- понятие, реляционной модели как-то не очень свойственное?
25 фев 05, 12:41    [1344565]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
serg99
Member

Откуда:
Сообщений: 422
mir
Не забывайте, что существует общепринятая терминология. Знать ее и следовать ей — обязанность специалистов. Вы совершенно определенно вкладываете в достаточно известные понятия свой собственный смысл.


Общепринятая терминология обычно отражена в различного рода словарях. В научной же среде обычно сколько научных школ - столько и разных определений одного и того же понятия :-).

mir
Смысл, который тем самым никому не понятен сразу и требуются ваши многословные объяснения. Это то, что традиционно называется в науке “lack of knowledge and misusing terms”.


Обратное явление по русски называется начетничеством.

mir
Постарайтесь понять, что критика вашей фразы относится к терминологии. А термин «модель» вообще самый семантически перегруженный в науке, поэтому использовать его надо вообще с крайней тщательностью.


Так зачем же Вы первый начали этот термин применять? Я подстроился под Вас. Давайте как Эллочка Людоедка 30 словами будем пользоваться :-).

mir
serg99
Так схема БД и есть описание модели предметной области, в рамках РМД.

Терминологически неверно. Да и словосочетание «описание модели» бессмысленно.


Как Вы думаете где возникает модель? Правильно, у Вас в мозгу. Теперь осталось только зафиксировать ваши мысли на материальных носителях. Результат и называется описанием модели. Нигде не написано что описание это обязательно запись на бумаге в ER-нотации или в файле инструментальной системы c UML. Я понимаю описание предметной области в узком окончательном смысле когда это описание зафиксировано в самой СУБД.

mir
serg99
В РСУБД для описания предметной области используется язык SQL (его DDL часть)

Неверно во всех смыслах.


В Ваших смыслах может и неверно

mir
Мой совет: проанализируйте, к примеру, такую модель предметной области, как ER-модель. Хоть в нотации Чена, хоть в нотации Crow’s Foot. И задумайтесь, что именно она выражает, зачем создается и почему ее можно преобразовать в сетевую БД, реляционную БД или ОО-БД. Причем иногда еще и различными способами.


Я не знаю что такое ER-модель. ER-нотация это способ записи/формализации моделей предметной области. ER-модель это слэнговое определение описания конкретной модели предметной области с помощью ER-нотации.

"Постарайтесь понять, что критика вашей фразы относится к терминологии. А термин «модель» вообще самый семантически перегруженный в науке, поэтому использовать его надо вообще с крайней тщательностью." :-)

А в принципе я считаю ER-подход неполным/недостаточным.

mir
По поводу «навигации» уже ничего писать не буду, ибо надоело. Лично к вам никаких претензий нет, просто мне уже все для себя понятно.
Успехов.


Если Вам все понятно, то значит Вы приближаетесь к нирване :-). За пожелание успехов - спасибо.
25 фев 05, 22:41    [1346610]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
serg99
Member

Откуда:
Сообщений: 422
Павел Воронцов
To serg99
Потерпите до прототипа и этот и остальные Ваши вопросы снимутся.

Хм. Мне почему-то казалось, что сначала должна быть (хоть какая-то) теория, а уж потом реализация. Если с каждой реализацией возникает новая модель данных (сиречь теория) со своей собственной большой буквой О, то грош цена ей как теории. Моё такое мнение (МТМ).

Вам, видимо, нравится запрягать телегу впереди. Ну что ж, дело вкуса. С удовольствием посмотрю на то, что у Вас получится. Без всякой иронии - с удовольствием и интересом.


Почему же Вы считаете что теории нет? И естественно сначала появляется модель данных, а потом ее реализация. Я например не представляю как можно реализовать СУБД без модели данных.
25 фев 05, 22:56    [1346613]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
mir

есть ваш сторонник (из ОО-лагеря), далее ЧАЛ

Вообще-то коллега ЧАЛ не из ОО-лагеря. Он сторонник некоей дореляционной объектной модели (больше про нее ничего не известно, и в литре, вроде, она особо не значится, хотя это модель которую поддерживает СУБД его фирмы, и которая действует на платформе ОО СУБД Кеш, коея в свою очередь построена на дореляционном МУМПС - вот так все не тривиально). Но постреляционные обектные, среди коих есть и ОО, не входили в круг приветсвуемых оным моделей. Но больше он известен как рьяный противник РМД.
На этом форуме в силу природы вещей имеет значение какой модели тот или иной автор является апологетом. Поэтому в этом вопросе нужна точность.
26 фев 05, 02:17    [1346722]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
c127
Guest
2 serg99

> Я например не представляю как можно реализовать СУБД без модели данных.

Примерно так же как и систему реального времени без определения:

serg99> Я как то наблюдал в профессональном форуме спор до хрипоты о том, что такое «система реального времени». И хотя спорящие работали с такими системами всю жизнь, они так и не пришли к общему мнению.
26 фев 05, 04:18    [1346742]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
serg99
В научной же среде обычно сколько научных школ - столько и разных определений одного и того же понятия :-).

Если понятие введено конкретным автором, такого быть не может. Упомянутый термин «модель данных» введен Коддом и имеет четкое определение. Никакие «школы» тут ни при чем. Понятие «модель предметной области», она же «инфологическая модель», она же «концептуальная модель» известно давно и прочно. Что это такое, я вам цитировал. Не надо прикрываться никакими «школами».
serg99
Я подстроился под Вас.
Не под меня, а под Кодда, Дейта, Паскаля и иже с ними.
serg99
Как Вы думаете где возникает модель? Правильно, у Вас в мозгу. Теперь осталось только зафиксировать ваши мысли на материальных носителях. Результат и называется описанием модели.

Неправильно. Еще раз доказали “lack of knowledge and misusing terms”. Почитайте, к примеру, «Введение в системологию» Флейшмана, ей-богу. У вас недостаток систематического инженерного образования. Это не наезд, просто констатация факта. Ликвидируется чтением хороших книг.
serg99
Я не знаю что такое ER-модель. ER-нотация это способ записи/формализации моделей предметной области. ER-модель это слэнговое определение описания конкретной модели предметной области с помощью ER-нотации.

Весь «пыл» вашей фразы гасится ма-аленьким замечанием. Термин «ER-модель» (Entity Relationship (ER) model) ввел сам Питер Чен, ее автор, в 1976 году. Это авторское название. Так что ваши глубокие мысли к делу не относятся.
http://bit.csc.lsu.edu/~chen/chen.html
After years of efforts of many people in developing and implementing the ideas, now “Entity-Relationship Model (ER Model),” ”Entity-Relationship Diagram (ER Diagram),” and “Peter Chen” have become commonly used terms in “online” dictionaries, books, articles, web pages, course syllabi, and commercial product brochures.

Образование, молодой человек, образование. Никто вам здесь зла не желает. Только добра.
26 фев 05, 12:22    [1346914]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
mir

Понятие «модель предметной области», она же «инфологическая модель», она же «концептуальная модель» известно давно и прочно.

Я всегда думал (и теперь продолжаю), что есть Предметная область (ПО) -часть реального мира, информация о которой нас интересует. И есть Модель данных этой ПО. Модели данных бывают концептуальные, логические, физические (две последние по разному трактуются в разных источниках). А в некоторых CASE средствах типа ERWin отсутствует понятие концептуальной, а есть логическая (соответствует по средствам концептуальной в других источниках) и физическая. В других источника модели данных делятся на инфологические и даталогические (особенно в более старой литре). Это деление производится по уровню абстракции по отношеню к реализации. Например, по некоторым источникам - Концептуальная абстрагируется от типа СУБД, логическая от конкретного СУБД, а физическая соответствует конкретному СУБД. В других к физической относят физическое проектирование файлов и проч, что выходит за рамки программирования. Но все это модели данных (а , например, не функциональные либо еще какие) ПО.
Т.е. у ПО могут быть концептуальные, логические и физические модели данных.
Фраза «модель предметной области» может толковаться в олбщем случае шире чем, модель данных. Например, под этим кто-то может иметь в виду модель бизнес процессов. Возможно, я не прав, но пока предпочитаю так это трактовать, потому, что это подходит к тем источникам что у меня есть, и потому, что я так понял профессоров када учился.
26 фев 05, 15:29    [1347046]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
serg99
Member

Откуда:
Сообщений: 422
mir
serg99
В научной же среде обычно сколько научных школ - столько и разных определений одного и того же понятия :-).

Если понятие введено конкретным автором, такого быть не может. Упомянутый термин «модель данных» введен Коддом и имеет четкое определение. Никакие «школы» тут ни при чем. Понятие «модель предметной области», она же «инфологическая модель», она же «концептуальная модель» известно давно и прочно. Что это такое, я вам цитировал. Не надо прикрываться никакими «школами».

Я думаю термин "модель данных" применялся и по разному определялся и до и после Кодда (несмотря на все мое к нему уважение).

а вот как например в словаре определяется понятие "предметная область"

Предметная область
, область объектов, универсум рассуждения, универсум рассмотрения, или просто универсум, класс (множество) объектов, рассматриваемых в пределах данного контекста. Под контекстом здесь может пониматься отдельное рассуждение или выражающая его фраза, или совокупность фраз, фрагмент научной теории или теория в целом. Например, в теории чисел П. о. служит натуральный ряд (множество целых неотрицательных чисел), в математическом анализе - множество действительных чисел, в ботанике - множество всех растений (точнее, растительных видов), а в исчислении предикатов или логике классов - любая фиксированная непустая область. П. о., называется также универсальным множеством, противопоставляется в логике и теории множеств т. н. пустому множеству (классу, области), не содержащему ни одного предмета рассматриваемого вида и являющемуся её дополнением. Общепринятое представление о П. о. именно как о фиксированной области объекта (согласно которому, например, в теории чисел дополнением к множеству чётных чисел служит множество нечётных чисел, а вовсе не "множество всех мыслимых объектов, не являющихся чётными числами", в каковое должен был бы входить, например, и данный экземпляр энциклопедии, и вообще "всё на свете", кроме чётных чисел) идёт от Дж. Венна; оно сменило господствовавшую до того (исходившую от Г. Фреге) концепцию "универсальной" П. о., приводящую к парадоксам.


mir
serg99
Я подстроился под Вас.
Не под меня, а под Кодда, Дейта, Паскаля и иже с ними.

Похоже Вы ощущаете себя чрезвычайным и полномочным представителем в России вышеназванных товарищей.

mir
serg99
Как Вы думаете где возникает модель? Правильно, у Вас в мозгу. Теперь осталось только зафиксировать ваши мысли на материальных носителях. Результат и называется описанием модели.

Неправильно. Еще раз доказали “lack of knowledge and misusing terms”. Почитайте, к примеру, «Введение в системологию» Флейшмана, ей-богу. У вас недостаток систематического инженерного образования. Это не наезд, просто констатация факта. Ликвидируется чтением хороших книг.

Вы забыли что я не читатель, а писатель :-). Я то же могу Вас отослать к какой нибудь книге по категориальной семантике в языкознании. Однако аппеляция к "авторитетам" вместо высказывания своих мыслей как правило означает отсутствие этих самых мыслей или отражает желание перевести разговор в демагогическое русло. Как правило такие дискуссии в конечном счете приходят к основному вопросу фиолософии. То есть модель - это бледная тень реальности или реальность существует постольку поскольку у нас есть ее модель.


mir
serg99
Я не знаю что такое ER-модель. ER-нотация это способ записи/формализации моделей предметной области. ER-модель это слэнговое определение описания конкретной модели предметной области с помощью ER-нотации.

Весь «пыл» вашей фразы гасится ма-аленьким замечанием. Термин «ER-модель» (Entity Relationship (ER) model) ввел сам Питер Чен, ее автор, в 1976 году. Это авторское название. Так что ваши глубокие мысли к делу не относятся.

Я только хотел подчеркнуть от обратного, что несмотря на Ваше предостережение об использовании термина "модель", Вы сами его используете неаккуратно. В той же статье Чен назвал ER-модель моделью данных. Соотвественно ER-модель не может быть моделью предметной области. То есть Вы в одном предложении применили термин "модель" в двух разных ипостасях.

mir
http://bit.csc.lsu.edu/~chen/chen.html
After years of efforts of many people in developing and implementing the ideas, now “Entity-Relationship Model (ER Model),” ”Entity-Relationship Diagram (ER Diagram),” and “Peter Chen” have become commonly used terms in “online” dictionaries, books, articles, web pages, course syllabi, and commercial product brochures.

Образование, молодой человек, образование. Никто вам здесь зла не желает. Только добра.


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

Я вполне определенно сказал что такое для меня "описание предметной области" и не надо сюда впутывать Чена и Кодда.

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

Программист садится и пишет

create table books...
create table subscriber...
и т.п.

То есть практически создается схема БД, которая определяет, что бывают Книги и Подписчики, Подписчики имеют не нулевое значение атрибута ФИО, и т.п. Весь этот набор данных зафиксированный в СУБД и определяющий, что в этой БД может существовать, а так же все разрешенности и запрещенности и т.п. и является описанием модели "мир библиотеки". При этом программист не пользовался никакими ER или UML нотациями, он сразу преобразовал/отразил модель предметной области у себя в голове в ОПИСАНИЕ этой модели опирающееся на модель данных применяемой СУБД (в данном случае реляционную) и хранящееся там же. Только это описание является обязательным (то есть его наличие необходимо и достаточно для практического использования). Все другие ОПИСАНИЯ независимо от того насколько они абстрагированы от модели данных СУБД, и насколько они облегчают путь к окончательному описанию, являются необязательными (в данном случае конечно операторы SQL так же являются промежуточной формой описания, а окончательной являются соответствующие структуры данных внутри СУБД).
26 фев 05, 19:03    [1347233]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
c127
Guest
2 serg99

>В научной же среде обычно сколько научных школ - столько и разных определений одного и того же понятия :-).

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

А вот если одинаковыми словами называются разные вещи, то в научной среде в таких случаях принято уточнять, в каком именно смысле эти слова используются. Например: множество натуральных чисел N может включать 0 (как принято в США) или не включать (как было принято в СССР). Тогда говорится, например: множество N в смысле принятом в СССР.

>Допустим у меня есть задача автоматизации библиотеки, где нужно наладить учет книг выданных подписчикам.

Программист садится и пишет

create table books...
create table subscriber...


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

>То есть практически создается схема БД, которая определяет, что бывают Книги и Подписчики, Подписчики имеют не нулевое значение атрибута ФИО, и т.п. Весь этот набор данных зафиксированный в СУБД и определяющий, что в этой БД может существовать, а так же все разрешенности и запрещенности и т.п. и является описанием модели "мир библиотеки".

Интересно, а откуда Вы узнали что такое книга и что такое подписчик и что у подписчика существует ФИО? И каким образом Вы проверите, что то что Вы наваяли с помощью операторов СКЛ решает необходимую задачу? У Вас же ничего нет, кроме набора операторов, которые сами же и определяет постановку задачи, а потому они верны по определению, даже при наличии синтаксических ошибок.
26 фев 05, 23:52    [1347388]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
serg99
Member

Откуда:
Сообщений: 422
c127
Почему-то казалось, что программист сначала думает, а только потом садится и пишет. Хотя всякое бывает.


Я разве где то сказал, что программист думает после или совсем не думает?

c127
Интересно, а откуда Вы узнали что такое книга и что такое подписчик и что у подписчика существует ФИО?

Что такое книга я узнал в далеком детстве от родителей. То что существуют библиотеки, а у них есть подписчики я узнал наверное в 1-ом классе средней школы. Чуть позже я узнал что есть такая штука как свидетельство о рождении, где каждый родившийся индивидум получает ФИО. Среди подписчиков библиотеки ни разу не замечал неродившихся индивидуумов, иностранных граждан не имеющих документов устанавливающих личность, а так же представителей внеземных цивилизаций. Ежели таковые появятся или будут отменены ФИО и все будут идентифицироваться по уникальному номеру вживленного под кожу чипа, то значит предметная область изменилась и нужно соответственно изменить ее описание в СУБД.


c127
И каким образом Вы проверите, что то что Вы наваяли с помощью операторов СКЛ решает необходимую задачу?

Материалистическая философия учит что практика - критерий истины (В.И.Ленин "Материализм и Импириокритицизм").

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

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

Насчет верности/неверности, то здесь очень много вариаций.
1) Постановшик задач может неадекватно/неполно воспринимать предметную область. Например забыл, что кроме книг в библиотеке хранятся микрофильмы.
2) Постановшик ошибся в процессе формализации/документирования постановки задачи для исполнителя.
3) Исполнитель неправильно/неполностью понял постановку задачи.
4) Исполнитель ошибся при формализации/документировании решения в том числе возможно из-за недостаточного знания средств/способов формализации (например плохо знает язык SQL).
5) Целевая платформа (СУБД) "неожидаемым образом" отрабатывает решение. Например из-за ошибок в самой СУБД, недокументированностью существенных для предложенного решения особенностей СУБД, несоответствия версий и т.п.

В итоге если система успешно и без претензий эксплуатируется на практике, то значит с точки зрения заказчика она правильная/верная. А так как деньги за работу платит заказчик, то в рамках коммерческой деятельности на его критерии верности и нужно ориентироваться.
27 фев 05, 15:19    [1347759]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
c127
Guest
2 serg99

>Я разве где то сказал, что программист думает после или совсем не думает?

Вы сказали:
>Допустим у меня есть задача автоматизации библиотеки, где нужно наладить учет книг выданных подписчикам.

Программист садится и пишет...


Как видно ключевой момент думания отсутсвует. Хотя может просто не упомянут в связи с незначительностью.

>Что такое книга я узнал в далеком детстве от родителей. То что существуют библиотеки, а у них есть подписчики я узнал наверное в 1-ом классе средней школы. Чуть позже я узнал что есть такая штука как свидетельство о рождении, где каждый родившийся индивидум получает ФИО. Среди подписчиков библиотеки ни разу не замечал неродившихся индивидуумов, иностранных граждан не имеющих документов устанавливающих личность, а так же представителей внеземных цивилизаций.

Например в США отчество не используется. Об этом дети тоже узнают на очень раннем этапе развития и тоже абсолютно уверены, что это единственный возможный вариант. И по Вашей схеме работы скорее всего сложится так, что Вы потратите много времени и усилий на создание системы (ведь вы же все самое главное узнали в детсве и уверены в своей правоте), а потом выяснится что эта система не соответсвует тому, что хотел заказчик, и никому не нужна, поскольку он исходит не из сладких детских фантазий, а из реальной задачи.

>Ежели таковые появятся или будут отменены ФИО и все будут идентифицироваться по уникальному номеру вживленного под кожу чипа, то значит предметная область изменилась и нужно соответственно изменить ее описание в СУБД.

Во второй раз спрашиваю, а откуда Вы об этом узнаете? У Вас же нет этапа, определяющего предметную область. У вас есть только "нужно написать" и "садится и пишет". Типа партия сказала "надо", комсомол ответил - есть!

Материалистическая философия учит что практика - критерий истины (В.И.Ленин "Материализм и Импириокритицизм").

Вы читаете правильные книги. Продолжайте в том же духе.
28 фев 05, 07:40    [1348160]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
serg99
Member

Откуда:
Сообщений: 422
Как видно ключевой момент думания отсутсвует. Хотя может просто не упомянут в связи с незначительностью.

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

Например в США отчество не используется. Об этом дети тоже узнают на очень раннем этапе развития и тоже абсолютно уверены, что это единственный возможный вариант.

Отчество может использоваться в том числе в сокращенном до одной буквы виде. Если Вы пишете ПО для международного рынка, то конечно лучше длину строки этого атрибута сделать достаточной что бы уместилось и арабское имя старика Хоттабыча. Но обычно при постановке задачи известно для каких пользователей предназначено ПО. И если оно например предназначено для японского рынка, то естественно придется потратить дополнительное время для изучения особенностей данной предметной области в Японии.

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

Правильность результата зависит больше от порядка в голове у разработчика, чем от схемы его работы. Я всего лишь сказал, что задача может быть решена без составления каких либо документов в ER-нотации. А значит ER-нотация это вторичное/вспомогательное средство. То есть вопрос стоит просто: Можно или Нельзя?, без всяких "скорее всего сложится так".

Во второй раз спрашиваю, а откуда Вы об этом узнаете? У Вас же нет этапа, определяющего предметную область. У вас есть только "нужно написать" и "садится и пишет". Типа партия сказала "надо", комсомол ответил - есть!

Придет библиотекарь и скажет, что пришли тут какие то марсиане, подправте пожалуйста ПО что бы я мог оформить их подписчиками. Вот и все. Как я и предполагал пришли к основному вопросу философии. Я не могу определять предметную область, она существует независимо от меня и существовала бы даже если бы я не родился. От того что я нарисую ER-квадратики на бумаге сама предметная область не изменится.

Вы читаете правильные книги. Продолжайте в том же духе.

Советую и Вам почитать.
28 фев 05, 10:38    [1348506]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
Тема пошла куда-то в сторону раздела "Проектирование БД". Там уже есть как проектировать, и что нравится сегодня заказчику, и почему это может ему не понравиться завтра. Про всякие качества проектов, методолгии проектирования, анализ ПО и выявление потребностей пользователя. Всякие хитрые приемы для этого.
А в этой теме про сравнение разных типов СУБД мы пока немного забуксовали. Возможно на данном этапе развития инфотехнологий еще много неясного, туманного в этом вопросе? РСУБД устоявшаяся, а те еще на пути становления?
Или что?
28 фев 05, 15:38    [1349871]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД .  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
Serg99
Я думаю термин "модель данных" применялся и по разному определялся и до и после Кодда (несмотря на все мое к нему уважение).

Думайте что угодно. Формальное определение это термина ввел Кодд. Я дал ссылку.
У нас просто классический вариант диалога: я привожу цитаты, даю ссылки, аргументирую. А вы только «думаете», «полагаете», «не согласны», «не знаете». Поэтому я и назвал вас «молодым человеком», ибо этот максимализм во мнениях и нежелание учится наиболее часто присуще подросткам. Вот и выходят казусы типа «Да я не знаю, что такое ER-модель», «да это-де жаргон». Человек опытный хотя бы потратил 5 минут на поиск термина и ссылки в, скажем, книге Дейта, или минуту на поиск в Сети. А подросток рубит с плеча: «жаргон», мол (и влипает, конечно). И «диагноз» подтверждается фразой: «я не читатель, а писатель». Это очень точно подмечено.
Упоминание о книгах «по категориальной семантике в языкознании» как хорошо знакомой вам области еще подтверждает мое предположение об отсутствии у вас хорошего инженерного образования. Могу ошибаться, но вы, похоже, выраженный гуманитарий. Куча признаков вроде рассуждений о «материалистической философии» (кстати, не «Импириокритицизм», а «Эмпириокритицизм»), об «основном вопросе философии». И очень характерна фраза «Однако аппеляция к "авторитетам" вместо высказывания своих мыслей как правило означает отсутствие этих самых мыслей». Именно у гуманитарев глубокомысленные рассуждения заменяют обычно строгие аргументы, а цитаты авторитетов гордо отвергаются, ибо и свой череп от мыслищщщ уже жмет.
В целом же, ваша «борьба» с необходимостью формально описывать предметную область до проектирования информационной системы один в один аналогична попытке разработать программу без стадии анализа требований и создания ТЗ, а сразу со стадии проектирования или, того хуже, программирования. Это может работать и работает – но на маленьких примерах, где все предельно ясно. Похоже, вы далеки от создания хотя бы систем среднего размера, не говоря уж о больших. Для них это просто не пройдет. Это классика software engineering.
Еще раз призываю: поменьше своих «рассуждений», побольше чтения хороших книг. А то так и останетесь на своем текущем уровне: без четкого понимания теории, без знания основных понятий, и без единого аргумента, но с кучей высокоценных «мнений».
28 фев 05, 15:57    [1349974]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 45 46 47 48 49 [50] 51 52 53 54 .. 83   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить