Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 10 11 12 13 14 [15] 16 17 18 19 .. 24   вперед  Ctrl
 Re: РМД пора на пенсию?  [new]
vadiminfo
Member

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

Таким образом, вопрос возможности навигации в РМД есть вопрос о том, можно ли в принципе определить язык

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

mir

Для такого перебора не нужны ни специальные нереляционные конструкции вроде указателей, ссылок или индексов, ни специальные нереляционные операции вроде "выбрать i-й кортеж".

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

mir

Поэтому простые курсоры в SQL не нарушают реляционных принципов

Курсоры открываются на основе запросов SQL. Т.е. доступ к БД осуществлен с помощью SQL. Т.е. реляционно. Как правило это нужно для обработки данных в процедурных языках, и потому не относятся к задачам языков БД - доступ к данным и не имеет отношения к нарушению реляционности языком БД. Если же они используются для получения результирующего множества из-за того, что с помощью только SQL его получить не удалось, то тут есть нарушение реляционности, так как реляционность в смысле РМД не предполагает переборов.

Удивляет, что коллеге ЧАЛу удаются примитивные трюки - типа "навигация в РМД не возможна" и народ бросается доказывать что возможна. И как бы выходит плохо что ее там нет (иначе зачем доказывать что она есть?). Тогда как ее нарочно туда не взяли - она там не нужна из-за некоторых присущих ей недостатков. Полноценная нвигация в языках БД предполагает индексы, ссылки и указатели. Но что еще хуже циклы.
Что толку что с127 вернул отншение с одним кортежем. Он так напишет много SQL запросов, возвращающих по одному кортежу, для эмуляции навигации для сложного случая? Будет выполнять в циклах динамические? Кому это надо? Тем более это все равно не навигация (в ней не должно быть отношений, а переходы по кортежам внутри отношения).
28 сен 05, 10:41    [1916962]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
ModelR
Вопрос конечно теоретический и почти схоластический, ибо чистой РМД пользоваться невозможно как летать на чистой аэродинамической форме.
Спорно. Вы пробовали пользоваться чистой РМД? Нет (как и я). У нас такой возможности нет. Поэтому утверждать столь категорически нельзя.
ModelR
mir

Таким образом, вопрос возможности навигации в РМД есть вопрос о том, можно ли в принципе определить язык, в котором используя допустимые в РМД конструкции и операции для доступа к данным организовать перебор кортежей в отношении в некотором (возможно, произвольном) порядке. Ответ - да.
Ответ нет.
Ответ — да. Достаточно операции выбора одного произвольного кортежа и следующих операций: создания переменной отношения, редукции, вставки кортежа, удаления кортежа. Операции выбора одного произвольного кортежа в самой реляционной алгебре нет, но она есть в теории множеств как одна из базовых операций (выбор произвольного элемента множества). В SQL это что-то вроде SELECT TOP 1 * FROM THE_TABLE.

ModelR
mir
Когда Дейт справедливо говорит, что в РМД нет понятия "следующий кортеж", то он имеет в виду, что в отношении нет предопределенного порядка кортежей, который, скажем, известен заранее, или на который можно положиться с определенной целью, как, например, в массиве или списке элементов.
Дейт говорит, что в отношении нет никакого порядка кортежей. Ни одного.
Согласен. Я лишь подчеркиваю разницу в понимании и использовании понятия «следующий кортеж».

ModelR
Согласно реляционным принципам доступ к кортежам возможен только по значениям атрибутов. Можно например запросить все кортежи с минимальным значением атрибута A , большим A0. Это означает порядок на кортежах? Нет , это порядок на домене, используемый в запросе. На данный запрос согласно РМД ответом является отношение - набор кортежей, который опять таки никак не упорядочен. Память по определению вне РМД и, с точки зрения РМД отображение кортежей отношения на упорядоченную память - магия, ей абсолютно не доступная
Честно, не понял к чему все это сказано. Хотя и сказано правильно.
28 сен 05, 10:41    [1916964]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
vadiminfo
Однако, лучше в этом предложении заменить РМД на РСУБД, поскольку СУБД реализует язык БД, а РМД предпологает язык БД исключительно на операциях про которые Вы писали.
Согласен.
vadiminfo
И эти операции будучи алгебраическими на мн-ве отношенй не предполагают даже и переборов (доступ к отдельным кортежам вне отношений), не говоря уже всего продвинутого в плане навигации (ссылок, указателей, индексов). Не говоря уж о циклах и проч. атрибутах "семантики" навигационных операций.
Кроме реляционной алгебры есть еще и эквивалентное ей реляционное исчисление. А исчисление строится на операциях типа «Для каждого элемента x...». То есть говорить о переборах можно, хотя и необязательно.
vadiminfo
Навигация построенная только на переборах не интересна даже для дореляционных систем. Но это если этот следующий не кортеж сам по себе, а отношение их одного кортежа, то формально это не перебор никакой.
Перебор есть перебор, что бы там не перебиралось.
vadiminfo
Удивляет, что коллеге ЧАЛу удаются примитивные трюки - типа "навигация в РМД не возможна" и народ бросается доказывать что возможна. И как бы выходит плохо что ее там нет (иначе зачем доказывать что она есть?).
Согласен. Я отделяю вопросы «нужна ли навигация в РСУБД» и «возможна ли навигация в РСУБД». По первому пункту ответ очевиден: практически никогда не нужна. Навигация снижает уровень абстракции до самого примитивного, не позволяет использовать автоматическую оптимизацию, поэтому это отсталый подход, изжитый с появлением РСУБД. Хотя иногда потребность в ней возникает, в связи с чем переходим ко 2-му пункту «возможна ли навигация в РСУБД». Ответ — да, как перебор кортежей в отношении один за одним.
28 сен 05, 10:59    [1917060]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
ModelR
Member

Откуда: Нижний Новгород
Сообщений: 1798
2mir
автор
Достаточно операции выбора одного произвольного кортежа и следующих операций: создания переменной отношения, редукции, вставки кортежа, удаления кортежа. Операции выбора одного произвольного кортежа в самой реляционной алгебре нет, но она есть в теории множеств как одна из базовых операций (выбор произвольного элемента множества). В SQL это что-то вроде SELECT TOP 1 * FROM THE_TABLE.
"Удивитильное рядом, но оно запрещено" В.Высоцкий.
Ну запрещено в РМД выбирать кортежи. На входе реляционных операций неупорядоченные отношения и на выходе они же. Все. Это же теория. Нет в арифметике яблок, хотя 3 яблока в природе существуют. Но не в арифметике.
28 сен 05, 11:47    [1917372]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
ModelR
2mir
автор
Достаточно операции выбора одного произвольного кортежа и следующих операций: создания переменной отношения, редукции, вставки кортежа, удаления кортежа. Операции выбора одного произвольного кортежа в самой реляционной алгебре нет, но она есть в теории множеств как одна из базовых операций (выбор произвольного элемента множества). В SQL это что-то вроде SELECT TOP 1 * FROM THE_TABLE.
"Удивитильное рядом, но оно запрещено" В.Высоцкий.
Ну запрещено в РМД выбирать кортежи. На входе реляционных операций неупорядоченные отношения и на выходе они же. Все. Это же теория. Нет в арифметике яблок, хотя 3 яблока в природе существуют. Но не в арифметике.
Формально да, но если я получу отношение из одного кортежа, я могу считать, что получил кортеж. Кстати, язык Tutorial D, который использует Дейт в 8 издании, поддерживает понятия тип кортежа, может конструировать отдельные кортежи.
28 сен 05, 13:57    [1918264]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
ModelR
Member

Откуда: Нижний Новгород
Сообщений: 1798
Я же говорю - почти схоластика. Мы прекрасно пользуемся выбором и много чем еще в любой СУБД, но собственно РМД даже не задается вопросом, а откуда собственно взялись данные? А как сконструировать кортеж? Где взять яблоки -то ?
28 сен 05, 17:15    [1919637]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
ЧАЛ
Guest
Хорошо, с127. Вы меня успокоили. Раз Вы не "спрыгните", я тоже не "спрыгну".
Даже соглашусь на данном этапе, что я сказал чушь, а потом посмотрим что получится...
Навигация ПРЕДПОЛАГАЕТ НАЛИЧИЕ "порядка", а не ЭКВИВАЛЕНТНА ВВЕДЕНИЮ "порядка". Разве это не очевидно ? Если "порядок" есть, то навигация возможна. А собственно навигация - это перебор; в нашем примере - перебор кортежей в отношении РМД. [Поэтому Дейт и подчеркивает, что в "базовом языке", но не в РМД, именно "вводится порядок" для осуществления навигации.]
Так мы можем вернуться к обсуждаемому сообщению ? Раз 1903668 не ошибочно, вроде можем. Но я уже не решаюсь без Вашего согласия.
29 сен 05, 00:05    [1920645]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
Витал
Member

Откуда: Россия, Санкт-Петербург
Сообщений: 2035
Офэфэ топ-топ.
автор
Навигация ПРЕДПОЛАГАЕТ НАЛИЧИЕ "порядка"

"Милиционер: Я поставлен следить за ПОРЯДКОМ!!! А если ПОРЯДКА нет, то зачем же я должен следить??!!" (Ф.Кривин)
29 сен 05, 13:42    [1922721]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
vadiminfo
Member

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

что я сказал чушь, а потом посмотрим что получится...

Тоже что и в те разы - ничего путного.
29 сен 05, 18:46    [1924509]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
c127
Guest
vadiminfo

Курсоры открываются на основе запросов SQL. Т.е. доступ к БД осуществлен с помощью SQL. Т.е. реляционно.


Они не потому не нарушают принципов, что открываются на основе СКЛ, там много чего можно было бы пооткрывать, а потому что сводятся к чистому СКЛ-ю. Т.е. теоретически курсор это просто сокращение процедуры, превращающей счетное множество в упорядоченное множество или список, что то же самое.

vadiminfo

Что толку что с127 вернул отншение с одним кортежем. Он так напишет много SQL запросов, возвращающих по одному кортежу, для эмуляции навигации для сложного случая? Будет выполнять в циклах динамические? Кому это надо?


Я и не претендовал на нужность этой процедуры. Сразу так и сказал, что на практике курсоры удобнее. Но они сводятся к СКЛ-ю, т.е. это строгое доказательство реляционности курсоров. С точностью до правильности доказательства разумеется.



ModelR
2mir
Ну запрещено в РМД выбирать кортежи. На входе реляционных операций неупорядоченные отношения и на выходе они же. Все. Это же теория. Нет в арифметике яблок, хотя 3 яблока в природе существуют. Но не в арифметике.


ИМХО это не совсем так. В SQL есть два типа оператора селект: тот, который возвращает множество и тот, который вроде бы возвращает множество, но превращает его в один элемент, если может. Последний это что-то типа "select a into @a from t ...". Хоть и называются они одинаково, но они разные. Все в полном соответсвии с математикой, где есть отношение "подмножество" для множеств, а есть совершенно другое отношение "принадлежит" для множеств и элементов. Возможно это кирвость языка и второй оператор следовало бы назвать не селект а как-то по-другому, но сути это не меняет, на выходе все равно либо один элемент (а не одноэлементное множество) либо пусто либо ошибка.

Интересно как с этим обстоит в других языках работающих с реляционной моделью.
29 сен 05, 22:49    [1924937]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
c127
Guest
ЧАЛ
Хорошо, с127. Вы меня успокоили. Раз Вы не "спрыгните", я тоже не "спрыгну".
Даже соглашусь на данном этапе, что я сказал чушь, а потом посмотрим что получится...
Навигация ПРЕДПОЛАГАЕТ НАЛИЧИЕ "порядка", а не ЭКВИВАЛЕНТНА ВВЕДЕНИЮ "порядка". Разве это не очевидно ?


Вы совершаете типичную для ниспровергателей основ ошибку: пытаетесь сравнивать что-то с чем-то наличии одного сравниваемого. Вы говорите: совершенно очевидно что Y!=Z. Но при этом нужно иметь как минимум заранее определенное Y и заранее определенное Z. Y у нас есть, это мое определение навигации. А вот Z у нас нет. Определить его я прошу уже неделю. Вот и получается чушь вида: "совершенно очевидно что Y не равно неизвестно_чему".

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


ЧАЛ

Если "порядок" есть, то навигация возможна.


Вот, уже совсем тепло. Подсказываю. Ответьте на вопрос: а если есть навигация, то есть ли порядок?

ЧАЛ

А собственно навигация - это перебор; в нашем примере - перебор кортежей в отношении РМД. [Поэтому Дейт и подчеркивает, что в "базовом языке", но не в РМД, именно "вводится порядок" для осуществления навигации.]
Так мы можем вернуться к обсуждаемому сообщению ? Раз 1903668 не ошибочно, вроде можем. Но я уже не решаюсь без Вашего согласия.


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

Для того чтобы продолжать разговор о навигации необходимо иметь определение навигации. Поэтому либо признайте мое определение навигации, либо четко и ясно сформулируйте свое. Все ждем-с.
29 сен 05, 23:19    [1924974]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
ЧАЛ
Guest
Ну не все же такие умные, как Вы, с127. Я пытаюсь подняться до Вашего уровня, и надеюсь на Вашу помощь. Итак, как я понял, мы не можем пока обсуждать Ваше сообщение, которое мы уже начали обсуждать, но Вы неожиданно прервали это обсуждение, так как считаете, что навигация - это не перебор, а подготовка к перебору. Хорошо.

Вот Ваш, действительно не простой, вопрос:

Если навигация есть, то есть ли порядок ?

Рискну ответить (если что - Вы меня поправите): да, конечно есть. Поскольку иначе навигация была бы невозможна.

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

Чувствую, что эти мысли только кажутся мне естественными и простыми (как и свойства отношения), а на самом деле это не так, и Вы, конечно, не согласитесь вернуться к обсуждению Вашего сообщения. И зададите мне еще какие-то наводящие вопросы, чтобы стало, наконец, "горячо"...
29 сен 05, 23:49    [1925011]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
vadiminfo
Member

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

Они не потому не нарушают принципов, что открываются на основе СКЛ, там много чего можно было бы пооткрывать, а потому что сводятся к чистому СКЛ-ю. Т.е. теоретически курсор это просто сокращение процедуры, превращающей счетное множество в упорядоченное множество или список, что то же самое

Я имел в виду, что доступ к БД осуществляется с помощью реляционного языка БД, и если результирующее мн-во и есть то что требуется, то курсор лишь средство передать это множество в язык, не умеющий работать с множеством записей, а меющим работать тока с одной. Не имеет отношения к задачам языка БД в принципе. Результат из БД получен реляционным способом, а остальное это другие задачи - не языка БД. Курсор это только механизм связи языка БД с языком, например, клиентского приложения.
А что там в клиентском приложении - навигация ли, еще что уже роли не играет. Имеет значение тока язык БД - навигационный он или ассоциативный, напрмер, реляционный.
Другое дело, если с помощью СКЛ не смогли получить требуемый результирующий набор данных из БД.

c127

Я и не претендовал на нужность этой процедуры.

Я знаю. Просто хотел подчеркнуть, что если в РМД не нужна навигация, то там тем более нечего делать плохой навигации. Или эмуляция этой плохой навигации т.е. многих СКЛ в цикле или там какой-то несусветно (пусть даже конечной, тем более счетной) глубокой вложенности или рекурсии. Один запрос с ограниченной вложенностью - один ответ. Это очевидное требование к системе запросов. А ведь имеет значение только реляционная система запросов, а не просто что-то реляционное само по себе.
Циклы и рекурсии могут быть не тока в РСУБД, но и в СКЛ. А в РМД вроде пока нет.
30 сен 05, 00:39    [1925043]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
c127
Guest
ЧАЛ
Ну не все же такие умные, как Вы, с127. Я пытаюсь подняться до Вашего уровня, и надеюсь на Вашу помощь. Итак, как я понял, мы не можем пока обсуждать Ваше сообщение, которое мы уже начали обсуждать, но Вы неожиданно прервали это обсуждение, так как считаете, что навигация - это не перебор, а подготовка к перебору. Хорошо.


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



ЧАЛ

Вот Ваш, действительно не простой, вопрос:

Если навигация есть, то есть ли порядок ?

Рискну ответить (если что - Вы меня поправите): да, конечно есть. Поскольку иначе навигация была бы невозможна.


Очень хорошо. Таким образом имеем:
"Если "порядок" есть, то навигация возможна" (ЧАЛ вчера, 00:05 [1920645]), иными словами, обозначив наличие порядка порядок через "O", возможность навигации через "N" а импликацию через "=>", имеем:
O => N

"Если навигация есть, то есть ли порядок? Рискну ответить (если что - Вы меня поправите): да, конечно есть." (ЧАЛ вчера, 23:49). В наших обозначениях это выглядит как:
N => O

Остается сделать совсем маленький шажок и вспомнить, что если выполняется O => N и одновременно N => O, то эти условия равносильны:
N <=> O

Т.е. навигация ЭКВИВАЛЕНТНА порядку, что бы Вы там не говорили об очевидности противоположного. Навигация (понимаемая в интуитивном смысле) на множестве записей есть тогда и только тогда когда на этом множестве есть порядок. Поэтому можно смело брать наличие порядка в качестве определения интуитивного понятия навигации.

Согласны?

Если да, то поедем дальше.
30 сен 05, 04:59    [1925130]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
2 c127
Оффтоп. Чо ж ты не зарегистрируешься, я б тебе на мыло кой-что скинул. Или мне напиши, у меня в профиле есть.
30 сен 05, 07:12    [1925200]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
vadiminfo
Member

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

Навигация (понимаемая в интуитивном смысле) на множестве записей есть тогда и только тогда когда на этом множестве есть порядок. Поэтому можно смело брать наличие порядка в качестве определения интуитивного понятия навигации.

Не понятно почему порядок всего лишь не необходимое или достаточное условие для навигации, а сама навигация. Как бы какие-то условия чего-либо не могут превращаться в определения этого чего-либо без дополнительных усилий, а иногда даже с этими усилиями.
30 сен 05, 09:47    [1925580]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
Витал
Member

Откуда: Россия, Санкт-Петербург
Сообщений: 2035
Прикольно наблюдать как ЧАЛ "вертиться, как уж под вилами" лишь бы не давать прямой ответ на прямо поставленный вопрос.
Даже самому стало интересно, как на тараканьих бегах. Выжмут из него наконец определение или нет. Сказать, что он тупой и не способен нельзя, уж очень ловко он обходит эту тему, запутывает, строит рассуждения на недоказанных гипотезах и псевдоаксиомах - " а если это верно, то и остальное тоже". И через некоторое время: "как уже ранее было доказано..."

Хочется увидеть что-нть вроде
"Файл - это поименованая последовательность байтов"
"Навигация - это...."
30 сен 05, 09:52    [1925609]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
...Выжмут из него наконец определение или нет?...


А Вы это видели? Здесь, немногим более года назад, произошло "феерическое появление"(с)не помню чей коллеги ЧАЛ(там еще Андрей Леонидович). Обратите внимание - в топике 82 разворота, из них более половины посвящено этому самому "выжиманию" (и так и этак) из ЧАЛа... А вообще ИМХО ЧАЛ крайне полезный персонаж этой нашей песочницы :).
30 сен 05, 10:21    [1925788]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
Витал
Member

Откуда: Россия, Санкт-Петербург
Сообщений: 2035
U-gene
...Выжмут из него наконец определение или нет?...


А Вы это видели? Здесь, немногим более года назад, произошло "феерическое появление"(с)не помню чей коллеги ЧАЛ(там еще Андрей Леонидович). Обратите внимание - в топике 82 разворота, из них более половины посвящено этому самому "выжиманию" (и так и этак) из ЧАЛа... А вообще ИМХО ЧАЛ крайне полезный персонаж этой нашей песочницы :).


А як жеж, как говорят наши коллеги из Украины! Видел. И "явление ЧАЛ народу" тоже. Тогда, правда, казалось, что есть у него в загашнике весомые аргументы, просто большинство их понять не может. Казалось, вот-вот и все станет ясно. И общая "сермяжная правда" явит свой лик...
Поэтому, можно сказать, продолжение вдвойне интересно. Хотя что-то похожего на аргументы, кажись, уже не осталось - " как явно следует из моего №____...". Т.е. как явно следует из ранее недоказанного... новое недоказанное.
30 сен 05, 10:37    [1925877]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
U-gene
А Вы это видели? Здесь, немногим более года назад, произошло "феерическое появление"(с)не помню чей коллеги ЧАЛ(там еще Андрей Леонидович). Обратите внимание - в топике 82 разворота, из них более половины посвящено этому самому "выжиманию" (и так и этак) из ЧАЛа... А вообще ИМХО ЧАЛ крайне полезный персонаж этой нашей песочницы :).


Иль арифметика слаба, иль чудо перед нами (c)
Действительно не выходит "почти двух лет", спасибо за ссылку на этот
ист(о|е)рический пост
30 сен 05, 10:47    [1925938]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
Alexey Rovdo
Member

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

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


Что-то мне это напоминает. Впрочем за данное мнение меня почему-то критиковали ...
30 сен 05, 13:40    [1927086]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
mir
Member

Откуда: Томск
Сообщений: 1027
Alexey Rovdo
mir

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


Что-то мне это напоминает. Впрочем за данное мнение меня почему-то критиковали ...
Если вы так и не поняли, почему критиковали, то перечитайте классические (уже) положения о физической независимости приложений от путей доступа и физического способа хранения данных в БД. Этот принцип, между прочим, был рожден не в лаборатироях, а явился следствие голимого практического опыта десятилетий создания ИС. Поэтому зависимость БД от приложений, а приложений от от путей доступа и физического способа хранения данных в БД есть несомненный регресс. А программная, низкоуровневая "ручная" навигация вместо высокуровневой автоматической и есть один из шагов назад, к давно пройденному и отринутому прошлому.
30 сен 05, 16:18    [1928119]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
Alexey Rovdo
Member

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

Alexey Rovdo
mir

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


Что-то мне это напоминает. Впрочем за данное мнение меня почему-то критиковали ...
Если вы так и не поняли, почему критиковали, то перечитайте классические (уже) положения о физической независимости приложений от путей доступа и физического способа хранения данных в БД. Этот принцип, между прочим, был рожден не в лаборатироях, а явился следствие голимого практического опыта десятилетий создания ИС. Поэтому зависимость БД от приложений, а приложений от от путей доступа и физического способа хранения данных в БД есть несомненный регресс. А программная, низкоуровневая "ручная" навигация вместо высокуровневой автоматической и есть один из шагов назад, к давно пройденному и отринутому прошлому.


Чего-то я не помню чтобы высказывался о какой-то зависимости и связанным с этим прогрессом и регрессом. Я лишь писал:
под "автоматической навигацией" в случае РСУБД понимается банальный перебор ...,

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

Оппонируя мне именно в этом вопросе, вы хотите и себя опровергнуть?
30 сен 05, 17:40    [1928607]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
Нафигатор
Guest
"Навигация - 1. Наука о вождении судов и летательных аппаратов.
2. Время, в течение которого возможно судоходство, а также само судоходство." (С.Н. Ожегов и Н.Ю. Шведова)


Ну, чуваки!!! И при чем тут отношение кортежей к доменам в дореляционных (дореволюционных?) свалках данных???? Один орет, что путем навигации в навозной куче можно найти жемчужное зерно, а другой рекомендует не хранить жемчуг в навозе.
Блин! Скажите практику - как жить!!! Может я пять лет проектировал БД, которые и щаз работают без хозяйского присмотра, и жестокого ошибался, т.к. не впихнул туда навигацию... Ах! АЛЧ!!! Где ж Вы раньше были.
ПОКАЖИТЕ МНЕ ЭТУ НЕВОЗМОЖНУЮ НАФИГАЦИЮ!!!! "Я ХОЧУ ВИДЕТЬ ЭТОГО ЧЕЛОВЕКА!!!!"
30 сен 05, 21:56    [1929189]     Ответить | Цитировать Сообщить модератору
 Re: РМД пора на пенсию?  [new]
ЧАЛ
Guest
Отлично, с127 ! Спасибо за подробное объяснение. А то раньше получалось, что навигация ЭКВИВАЛЕНТНА ВВЕДЕНИЮ порядка (см. Ваше определение в 1907636), а теперь Вы очень хорошо уточнили, что навигация ЭКВИВАЛЕНТНА ПОРЯДКУ. Пока еще не согласен поскольку порядок - это состояние, а навигация - это процесс (перебора записей в упорядоченном списке). Но наши позиции постепенно сближаются.
Позвольте предложить простое механическое объяснение Вашего примера навигации в отношениях РМД, и, возможно, тогда мы найдем взаимопонимание о навигации.
Для этого нужно:

1. Мешок, на котором написано "Шары". В нем лежат, например, 4 шара с нанесенными на них цифрами 7,3,2,5. Это "отношение" РМД "Шары" с неупорядоченными "кортежами".

2. Четыре шара с теми же цифрами 7,3,2,5 - они будут "эмулировать" копии кортежей отношения "Шары".

3. Четыре пустые мешочка (для одного шара каждый), пронумерованные цифрами 1,2,3,4, и висящие на гвоздиках в порядке возрастания номеров.

Выполним такие действия:

1) извлекаем из мешочка "Шары" (очередной) шар i ;
2) перебираем на ощупь мешочки в порядке возрастания и:

- если в мешочке есть шар, то извлекаем его (шар j) и сравниваем с шаром i:
-- если цифры на шарах совпадают, то возвращаем шар j в мешочек, шар i в мешок "Шары" и возвращаемся к п. 1);
-- если цифры на шарах не совпадают, то возвращаем шар j в мешочек и возвращаемся к п. 2);
- если в мешочке нет шара, то: берем из запасного комплекта шар с такой же цифрой, что и на шаре i, кладем его в этот первый пустой мешочек, возвращаем шар i в мешок "Шары" и переходим к п. 1).

Таким образом, немного помучившись, мы получим в мешочках упорядоченные копии "кортежей" (понятно, что это уже не кортежи РМД, так как упорядоченные мешочки на гвоздиках уже не представляют отношение РМД) отношения "Шары". Например:
1. 2
2. 7
3. 5
4. 3

И вот теперь стала возможной навигация по этим упорядоченным мешочкам...
Но !
Чо за операцию мы выполнили ? Ясно, что это не реляционная операция, так как результатом реляционной операции должно быть отношение, кортежи которого не упорядочены. Давайте доведем "дело" до конца и довыполним простую реляционную операцию, представленную SQL-выражением
SELECT *
FROM "Шары"

Для этого нам потребуется дополнительно:

4. Мешок с надписью "Шары как результат запроса".
5. Еще один комплект из 4-х шаров с цифрами 7,3,2,5 (так как упорядоченный "список" нам тоже нужен, точнее, он один нам и нужен).

Итак:
- извлекаем из мешочка 1 шар n:
-- берем его "копию" из дополнительного комплекта;
-- кладем эту "копию" в мешок "Шары как результат запроса";
-- а шар n возвращаем в мешочек 1
и т.д. (конечно это можно было бы сделать сразу, одновременно с помещением первой копии в упорядоченный мешочек).
В результате мы получим (строго в соответствии с "реляционной замкнутостью") отношение РМД "Шары как результат запроса". Кортежи в этом отношении, как и в отношении "Шары", конечно, не упорядочены.
То есть собственно реляционная операция в данном примере оказалась бессмысленной, а ее "побочный результат" (упорядоченные мешочки) позволяет осуществлять навигацию (а так же сортировку).

Этот "механический вариант" показывает практическую бесполезность РМД и, соответственно, РБД (конечно, только для меня, и Вы, с127, это как-то опровергнете). А вот продвинет ли он нас к началу обсуждения Вашего примера навигации в отношениях РМД я не знаю...
30 сен 05, 23:26    [1929328]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 10 11 12 13 14 [15] 16 17 18 19 .. 24   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить