Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 22 23 24 25 26 [27] 28 29 30 31   вперед  Ctrl
 Re: MS SQL > Oracle = True?  [new]
StalkerS
Member

Откуда: Melbourne
Сообщений: 1345
softwarer

Имхо Вы чрезмерно обобщаете опыт общения с некими таинственными ораклоидами, заполонившими Вашу работу :) Во всяком случае, лично я "постоянно" не вижу


8-)
советую поглядеть соседние топики, возможно, вы найдете там для себя много нового и интересного

softwarer

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


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

softwarer

Вы тщательно избегали хотя бы намека на то, что собственно потребуется


у меня нет такого опыта разработок, как у вас, но мне предсталяется весьмя сомнительным, что за разумное время вы прикините на пальцах, какие
фичи вам потребуются для данного проекта, а какие нет. За исключением очевидных вещей, типа деревьев, это обычно сразу понятно, что они нужны.
Хотя в общем случае (хоть вам и не нравиться такое словосочетание), время на разработку в оракл уйдет меньше. Но ведь это не значит, что оракл -
the only and the best. Я собственно потому сразу и говорил о конечном результате, а не о методах его достижения

softwarer

Я, сколь помнится, упоминал о том, что тот же самый Selko, если понадобиться, могу реализовать как встроенный механизм базы. MSSQL это умеет?
Почему Вы это замалчиваете?


Возможно, расширенной хранимой процедурой. А в yukon, при помощи .net почти наверняка ;)
26 янв 05, 20:31    [1276500]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
c127
Guest
2 andy st

>есть название "иерархические запросы", который в полной мере отражает суть запроса и не привязан к конкретной реализации.

Ничего оно не отражает. Иерархический это ИМХО ближе к вложенному, по большому счету вообще не понятно что это такое. Термин "рекурсивные запросы" гораздо более точный. Понятие "рекурсия" фундаментально, запрос именно рекурсивный и строится именно как рекурсиивная функция. Как он реализуется внутри - совершенно фиолетово. Поскольку аналогов в М$SQL нет, чтоб Вам было легче понять о чем речь, привожу пример из сайбейза (https://www.sql.ru/faq/faq_topic.aspx?fid=203), из которого видно, почему запрос РЕКУРСИВНЫЙ. А кому не видно - советую обратить внимание на рекурсивный (именно рекурсивный, а не "иерархический") вызов "select ... from ... tmp ..." во второй части запроса:

CREATE PROCEDURE "DBA"."sp_child_tree"(IN @tree_id integer)
/*
  @tree_id - начальный узел дерева; если null - возвращается все дерево
*/
BEGIN
  with recursive tmp(tree_id, caption, parent_id, level, full_name) 
  as (
    // Возвращаем родителей (записи верхнего уровня дерева)

    select tree_id, caption, parent_id, 0, caption
    from tree   
    where (@tree_id is null and parent_id is null) or 
      (@tree_id is not null and tree_id = @tree_id)
    union all
    // Возвращаем дочерние по отношению к родительским записям

    select t.tree_id, t.caption, t.parent_id, tmp.Level + 1, 
      tmp.full_name || '\' || t.caption
    from tree t
      inner join tmp on t.parent_id = tmp.tree_id
  )
  select tree_id, space(level * 5) || caption as caption, parent_id
  from tmp
  order by full_name;
END

Какие еще могут быть вопросы?

>видать Вы сильно отрорваны от бизнеса. ;)
в нем в принципе не других интересов, кроме маркетинговых.


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

>а если кто-то работал с кластерными решениями от ms - его будет просто бесить то, что в oracle и db2 кластер совсем не то, к чему он привык. ;)

Если это так, то только потому, что работающий с продуктами M$ ничего другого как правило не знает и не в курсе, что кластера оракла, ДБ2 и др. были созданы лет на надцать раньше, даже того, что Вы называете "кластер а-ля MS".

>и окажется, что oracle и db2 как раз прикрывают неспособность создать кластер а-ля MS ;)

Не окажется. Они в ДБ2 и других SQL серверах были чуть ли не с самого начала. Сделать зеркалку и поднять ее в случае падения основного сервера никогда проблемой не было.

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

Людей, поступающих таким образом, называют беспределщиками и они обычно очень плохо кончают. Посмотрим.
27 янв 05, 04:24    [1276808]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
andy st
Member

Откуда:
Сообщений: 906
c127
2 andy st
Ничего оно не отражает. Иерархический это ИМХО ближе к вложенному, по большому счету вообще не понятно что это такое. Термин "рекурсивные запросы" гораздо более точный. Понятие "рекурсия" фундаментально, запрос именно рекурсивный и строится именно как рекурсиивная функция. Как он
реализуется внутри - совершенно фиолетово.

а разве рекурсия - это не есть вложенный? ;)
и почему в заданиях по программированию в различных учебных заведениях постоянно встречаются задания типа: реализовать вычисление количества уровней в дереве 1. с применением рекурсии , 2. без применения рекурсии.
пример? пжалста...
журнал "информатика и образование" 10,2003 статья о ханойских башнях.
(очень познавательно)
а самое интересное по этому поводу есть у Вирта (я надеюсь, что ему то Вы доверяете... ;) )
ссылка. раздел 3. очень познавательно.

c127

Поскольку аналогов в М$SQL нет, чтоб Вам было легче понять о чем речь, привожу пример из сайбейза (https://www.sql.ru/faq/faq_topic.aspx?fid=203), из которого видно, почему запрос РЕКУРСИВНЫЙ. А кому не видно - советую обратить внимание на рекурсивный (именно рекурсивный, а не "иерархический") вызов "select ... from ... tmp ..." во второй части запроса:

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

c127

>видать Вы сильно отрорваны от бизнеса. ;)
в нем в принципе не других интересов, кроме маркетинговых.

Пробелма мелкософта как раз в том, что он полез в программирование, которое было наукой, с мерками чистого бизнеса.

у ms как раз проблем нету - проблемы у тех, кто успеху MS завидует... ;)

c127

Нельзя продавать по-дешевке все до чего сумел дотянуться.

надо продавать как можно дороже?
как это делают тот же ibm , hp и сотоварищи (типа плати за бренд, родимый...)

c127

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

некто Дейкстра пытался даже формализовать это процесс. Правда, если бы ему это удалось и это было бы принято во всем мире, ни о каком коммерческом применении программирования не могло бы быть и речи (срок окупаемости давит везде, кроме фундаментальных научных работ). тогда о таком прогрессе в области компьютерной техники и речи не могло бы быть. и сидели бы мы сейчас и дырявили бы перфокарты вместо игры в half life 2 или doom 3.

c127

>и окажется, что oracle и db2 как раз прикрывают неспособность создать кластер а-ля MS ;)
Не окажется. Они в ДБ2 и других SQL серверах были чуть ли не с самого начала. Сделать зеркалку и поднять ее в случае падения основного сервера никогда проблемой не было.

_м_о_л_о_д_ц_ы_ ;)
c127

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

ну епрст... не надо понимать меня буквально....
давайте под дубиной будем подразумевать количество бабок, которые контора может выделить на какой-то проект, или число работников, занятых в проекте, или уровень подготовленности менеджеров или адвокатов... или еще что-то...
целенаправленным применением этих средств можно выдавить конкурента с рынка, или купить его...
и это не беспредел - это будет конкуренция
27 янв 05, 07:12    [1276852]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
alex-ls
Member

Откуда: Иркутская обл - Пенза - Москва
Сообщений: 7079
StalkerS
На самом деле, этот топик просто замечательный пример. Alex-ls утверждал в начале, что mssql не имеет никаких шансов при работе с деревьями. После тестирования кода на таблице с почти миллионом записей, он углядел разницу в производительности в 5 мс. (!) в пользу оракл, после чего вцепился мертвой хваткой в эти несчастные миллисекунды, типа вот ! глядите как отстойно работает mssql, при этом совершенно бессовестно замалчивая тот факт, что сервер с mssql обладал явно меньшими вычислительными возможностями.

Так... Однако Вы перешли от сарказма, на личные оскорбления.
1. Я писал, что мое мнение насчет MS SQL изменилось в лучшую сторону. Первоначальное мнение, до общения с Вами у меня сформировалось по программам ТехноПро и TFlex, если кто с ними работал меня поймет. Сейчас я его (мнение) пересмотрел, но Oracle все же выигрывает по скорости (здесь я согласен всего несколько мс, но помните я тестировал в ОДНОПОЛЬЗОВАТЕЛЬСКОМ режиме). Записей было не миллион, а около 300 000
2. Мертвой хваткой я не вцеплялся. Приводите еще алгоритмы, я их с удовольствием потестирую.
3. Вычислительные возможности обоих серверов я приводил, это уже полное вранье. Также я предлагал ЛЮБОМУ желающему протестировать эти же данные на своей паре серверов с более равными характеристиками.
4. Я извлек много полезного для себя из этой дискуссии, как по MS SQL, так и по Oracle. Если кто-то считает, что в этом топике нет ничего полезного, то никто не заставляет его суда постить.
5. Я не говорил (или говорил давно ), что MS SQL - отстой. Я считаю, что Oracle лучше, чем MS SQL. И это только ИМХО.

softwarer
Еще Alex-ls утверждал, что его опыт работы c Oracle - семь месяцев.

Да, утверждал. И утверждаю еще раз с 1 июля 2004 года работаю с Oracle'ом.
27 янв 05, 08:58    [1276979]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
IgorM
Member

Откуда: Тула - Москва, транзит
Сообщений: 633
tygra
Поворачивать отдельно каждым колесом!!!

Поясняю - это когда не двумя передними и двумя задними, что несомненно поможет при перестроениях, а например одним передним направо а другим передним налево Это приведет к печальным последствиям :)

Оказывается этого не только ты хочешь... :) Jeep Hurricane
27 янв 05, 09:48    [1277109]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67530
Блог
andy st
а разве рекурсия - это не есть вложенный? ;)

Нет. Рекурсия - это самореализация, самоопределение, итп - самоНЕЧТО.

Простейший пример - математический метод доказательства по индукции. Он безусловно рекурсивен, но чтобы найти там вложенность, требуется весьма нетривиальное определение "что есть вложенный".
27 янв 05, 10:53    [1277387]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
gardenman
Member

Откуда: С-Петербург
Сообщений: 2347
рекурсия - вызов самого себя. рекурсивный запрос - вызвает себя же с входными данными которые сам же и приготовил.
27 янв 05, 11:04    [1277452]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67530
Блог
StalkerS
советую поглядеть соседние топики, возможно, вы найдете там для себя много нового и интересного

Не думаю, честно говоря ;-)

StalkerS
у меня нет такого опыта разработок, как у вас, но мне предсталяется весьмя сомнительным, что за разумное время вы прикините на пальцах, какие фичи вам потребуются для данного проекта, а какие нет.

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

StalkerS
Но ведь это не значит, что оракл -
the only and the best. Я собственно потому сразу и говорил о конечном результате, а не о методах его достижения

Если я не ошибаюсь, Вы начали говорить о выборе СУБД для некоего конкретного проекта (точнее, будет ли Oracle действительно лучше для конкретного проекта, уже реализуемого/реализованного на MSSQL).

Что касается "результата без учета методов" - это слишком далекая от практики теория. Сам по себе результат мало когда нужен; обычно нужен оправданный результат.

StalkerS
softwarer

Я, сколь помнится, упоминал о том, что тот же самый Selko, если понадобиться, могу реализовать как встроенный механизм базы. MSSQL это умеет?
Почему Вы это замалчиваете?

Возможно, расширенной хранимой процедурой. А в yukon, при помощи .net почти наверняка ;)
[/quot]
И как оно будет интегрировано с базой? Только возможность вызова?

Пример: чтобы рассчитать и поддерживать дерево в моем гипотетическом картридже потребуется команда наподобие create index tree_i on tree (id, parent_id) indextype celko_by_softwarer. Но самая вкусность, как я уже говорил - интеграция в оптимизатор; запрос с деревянными данными будет оптимизироваться на общих основаниях согласно предоставленным мной данным стоимости.

Подчеркну: я имею в виду не развитие работы с деревьями, я пример того, что так можно сделать совершенно что угодно.
27 янв 05, 11:08    [1277476]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
StalkerS
Member

Откуда: Melbourne
Сообщений: 1345
alex-ls

Так... Однако Вы перешли от сарказма, на личные оскорбления.


неправда ;) никого я не оскорблял, тем более лично

alex-ls

Сейчас я его (мнение) пересмотрел, но Oracle все же выигрывает по скорости


Просто смешно, ну обьясните наконец, почему 9 мс. на двух процах 1.7 Гц и 4 мс. на 2-х проц. 2.4 Гц называется "выигрывать по скорости" ?
На основании чего сделан такой вывод ? Вот я могу предположить, что на 2-х проц. 2.4 Гц время работы будет ~ 5 мс., и это звучит логично,
а не взято с потолка. Правда, вы все равно можете сказать, что оракл быстрее на миллисекунду, а значит выигрывает по скорости и это
"поражение MSSQL" (тоже ваша цитата).

alex-ls

Я считаю, что Oracle лучше, чем MS SQL. И это только ИМХО.


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

softwarer

Если я не ошибаюсь, Вы начали говорить о выборе СУБД для некоего конкретного проекта (точнее, будет ли Oracle действительно лучше для конкретного
проекта, уже реализуемого/реализованного на MSSQL).


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

softwarer

Что касается "результата без учета методов" - это слишком далекая от практики теория. Сам по себе результат мало когда нужен; обычно нужен
оправданный результат.


В понятие "оправданный результат" входит слишком много всего разного. С одной стороны время разработки. С другой - выходной результат. С третьей -
последующее обслуживание. Тут надо смотреть, что-же все-таки важнее. Вдруг последующее обслуживание является критически важным, с надежность
системы не очень ? Тогда access возможно предпочтительнее. Если время разработки - возможно оракл. А в золотой середине, возможно, окажется
mssql ;) т.к. время разработки будет возможно дольше, но и управлять им легче (при ~ равной степени надежности систем). Причем понятие
"легче управлять" не означает "нельзя сделать то-то", во многих руководствах по mssql делается упор на то, что при разработке системы это было
одно из важных условий.

softwarer

И как оно будет интегрировано с базой? Только возможность вызова?


не могу вам точно сказать, я никогда не пользовался такими ХП, и не собираюсь, в связи с грядущим появлением интегрированной .net
27 янв 05, 17:17    [1279642]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
Alexey Sh
Member

Откуда: SPB
Сообщений: 1930
Что означает "интегрированная" .net ?

Переключение контекста TSQL <-> CLR будет?
27 янв 05, 17:25    [1279689]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
>> уже реализованный проект переводить на другую платформу будет только человек, которого поспешили выписать из психушки.

А я вот, помню, с Оракла на MS SQL переводил. На MS SQL работало быстрее!
27 янв 05, 17:30    [1279714]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
Dogen
Member

Откуда: Гондурас
Сообщений: 2976
www.fun4me.narod.ru
>> уже реализованный проект переводить на другую платформу будет только человек, которого поспешили выписать из психушки.

А я вот, помню, с Оракла на MS SQL переводил. На MS SQL работало быстрее!


А почему нет? Шило на мыло менять - это да, а на более "тяжелую" - почему нет?
Опять же "переводить" может подразумевать и полное переписывание
27 янв 05, 17:37    [1279750]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67530
Блог
StalkerS
В понятие "оправданный результат" входит слишком много всего разного.

Безусловно. Это очередная инкарнация того, что я пытаюсь донести уже тридцать страниц: разумный, имеющий смысл результат получить не всегда легко, но обсуждать нечто оторванное от реальности вовсе не имеет смысла.

С одной стороны время разработки. С другой - выходной результат. С третьей -
StalkerS
А в золотой середине, возможно, окажется
mssql ;) т.к. время разработки будет возможно дольше, но и управлять им легче (при ~ равной степени надежности систем).

Я сталкивался с точкой зрения, что "золотая середина" для MSSQL - это проекты, выполняемые малоквалифицированными разработчиками. Грубо говоря, его сложнее "убить".

StalkerS
Причем понятие
"легче управлять" не означает "нельзя сделать то-то", во многих руководствах по mssql делается упор на то, что при разработке системы это было
одно из важных условий.

Затрудняюсь прокомментировать. Про звучавший, кажется, именно здесь мой вопрос про гистограммы (where a=:a and b=:b) мне пока никто не смог сказать - как же таки добиться оптимальной работы приложения.

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

StalkerS
softwarer

И как оно будет интегрировано с базой? Только возможность вызова?

не могу вам точно сказать, я никогда не пользовался такими ХП, и не собираюсь, в связи с грядущим появлением интегрированной .net

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

Следующий вопрос: если Вы придаете столь большое значение интеграции .net, как этот вопрос будет решен там?
27 янв 05, 17:46    [1279799]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67530
Блог
www.fun4me.narod.ru
А я вот, помню, с Оракла на MS SQL переводил. На MS SQL работало быстрее!

На самом деле было бы интересно увидеть хорошо оформленный тестовый случай - что делалось, за счет чего быстрее итп. Вот пример весьма интересного и грамотного исследования.

На уровне же "помню" - слишком много факторов, шум. Я почти уверен, что если я вдруг вздумаю перевести что-то на MSSQL, оно значительно замедлится :)
27 янв 05, 17:50    [1279825]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
>> На уровне же "помню" - слишком много факторов, шум. Я почти уверен, что если я вдруг вздумаю перевести что-то на MSSQL, оно значительно замедлится :)

Думаю, если перевести оборатно на Оракл, будет работать ещё немножко быстрее. :)
27 янв 05, 19:01    [1280082]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
StalkerS
Member

Откуда: Melbourne
Сообщений: 1345
softwarer

Затрудняюсь прокомментировать. Про звучавший, кажется, именно здесь мой вопрос про гистограммы (where a=:a and b=:b) мне пока никто не смог сказать
- как же таки добиться оптимальной работы приложения.


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

Не надо обладать даром предвидения, что-бы угадать содержание ответных постов - "профи все равно сделает лучше какого-то там встроенного мастера !"
Да, профи все равно настроит лучше, но зачем нужен профи в том месте, где может справиться и не профи ?
Т.е. речь идет например о системе в 30-50 пользователей, не очень интенсивной работе с базой. В случае с ораклом нужен грамотный специалист,
в случае с mssql - нет.

softwarer

Мало того, меня больше пугает то, что производящий пока наиболее компетентное впечатление из знакомых мне MSSQL-щиков (Merle) говорил про некое
"магическое число", про которое можно сказать только то, что похоже оно существует


Попробуйте спросить в форуме по MSSQL у Glory, может скажет что полезное

softwarer

Следующий вопрос: если Вы придаете столь большое значение интеграции .net, как этот вопрос будет решен там?


Я лучше дам вам ссылку на интервъю с Джимом Греем, разработчиком одной из самых больших в мире (если не самой большой) базы данных, содержащей
снимки земной поверхности и космоса (на 2002 г. обьем был 12 терабайт и 7 миллионов посещений их сайта в день). Построена система на MSSQL.
А то и в самом деле часто встречаются высказывания, типа mssql - так, детям поиграться, а для серьезной работы нужен оракл.
Так что при наличии вынутых из задницы рук, проект любой сложности реализуется на mssql.
Там и про .net есть.

http://newsletter.narod.ru/sql_pages/sql_mar_2002.htm


P.S. а я пошел спать, так поздно ночью вредно на такие темы разговаривать, а то рискую вместо снов о красивых девушках увидеть терабайтные сервера
и СУБД разного пошиба ;)
27 янв 05, 21:25    [1280289]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
c127
Guest
2 andy st

>а разве рекурсия - это не есть вложенный? ;)

Вы в своем предыдущем посте говорили о каких-то иерархических запросах: "есть название "иерархические запросы", который в полной мере отражает суть запроса и не привязан к конкретной реализации". Теперь съезжаете на циклы. Рекурсия и цикл в теории эквивалентны. Мы с этого начали.

>и почему в заданиях по программированию в различных учебных заведениях постоянно встречаются задания типа: реализовать вычисление количества уровней в дереве 1. с применением рекурсии , 2. без применения рекурсии.

Потому что студентов, кроме всего прочего, учат технике программирования. Есть техника, а есть фундаментальные вещи. Я это Вам пытался объяснить с в самом начале.

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

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

>у ms как раз проблем нету - проблемы у тех, кто успеху MS завидует... ;)

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

>надо продавать как можно дороже?

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

>некто Дейкстра пытался даже формализовать это процесс. Правда, если бы ему это удалось и это было бы принято во всем мире, ни о каком коммерческом применении программирования не могло бы быть и речи (срок окупаемости давит везде, кроме фундаментальных научных работ). тогда о таком прогрессе в области компьютерной техники и речи не могло бы быть. и сидели бы мы сейчас и дырявили бы перфокарты вместо игры в half life 2 или doom 3.

Вы ошибаетесь. Процесс давно формализован, еще в 40-х годах прошлого века, и ничего страшного не случилось. Я же напсал, что наука программирования точная, т.е. формализованная. Формализацией процесса вычислений и программирования есть, например, машина Тьюринга, машина Поста и не к ночи помянутые рекурсивные функции. Не знать такие вещи стыдно. Почитайте книгу Мальцева, я приводил ссылку, которая называется "Алгоритмы и рекурсивные функции". И давным давно было доказано, что все 3 модели эквивалентны.
28 янв 05, 01:46    [1280492]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
andy st
Member

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

Опять вы о реализации. Это мы пошли по кругу. Именно, что рекурсия может быть (и была) изначально записана краской на заборе, а точнее, что то же самое, чернилами на бумаге. Я же говорил, что это понятие базовое, фундаментальное. Вы вообще знаете, что такое рекурсия? Если не знаете - посмотрите на приведенный пример запроса, это и есть рекурсия в самом чистом виде.

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

c127

В какой книжке сказано, что рекурсия не может быть реализована в виде циклов?

ВО ВСЕХ КНИЖКАХ!!!

c127

На каких курсах Вас научили, что чтобы распознать рекурсию нужно лезть в реализацию?

если я напишу программу, которая будет считать факториал заданного числа Вы однозначно сможете определить по внешнему виду программы, что я использовал рекурсию? или циклы?

c127

Более того, некоторые компиляторы реализуют рекурсию циклом, это я тоже уже говорил.

некоторые, и далеко не всегда, только простейшие типы рекурсии

c127

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

проблемы для Вас, но не для MS. может быть для ms это далеко не самая приоритетная задача (как Вам могло бы показаться). Если прижмет - сделают, ресурсов до черта.
Вы на 100% уверены, что тот Юкон, который выйдет не будет дотягивать до того, что обещали? а если это маркетинговый ход? или Вы с Балмером пиво пили и он поделился?
по поводу 64бит - вы уверены, что линукс и бсд не заметили этого перехода?
вы знаете, сколько разработчики занимались этой проблемой?
сколько было затрачено человеко-часов?
поделитесь, плз, информацией.... для общего развития
и не стоит попытки сделать выводы, основываясь лишь на тех фактах, которые и приведут к нужным выводам... т.е, одним словом, фантазировать.

c127

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

дык подайте на ms в суд. разорите ее к едреней фене... ;)
и так всех разработчиков софта, которые выпускают глючный, полный багов софт.
никого не останется - 100% софтверных производителей выпускают такой софт.
а так - какая разница, куда лазить за заплатками: на support.microsoft.com или metalink.oracle.com ?
кстати, а какой именно неликвид и по каким большушим ценам ms продает?
c127

Вы ошибаетесь. Процесс давно формализован, еще в 40-х годах прошлого века, и ничего страшного не случилось. Я же напсал, что наука программирования точная, т.е. формализованная. Формализацией процесса вычислений и программирования есть, например, машина Тьюринга, машина Поста и не к ночи помянутые рекурсивные функции. Не знать такие вещи стыдно. Почитайте книгу Мальцева, я приводил ссылку, которая называется "Алгоритмы и рекурсивные функции". И давным давно было доказано, что все 3 модели эквивалентны.

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

и я не совсем понял, какие три модели эквивалентны?
рекурсия никакого отношения к машинам Тьюринга и Поста не имеет - это совершенно разные вещи.
28 янв 05, 09:26    [1280759]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67530
Блог
StalkerS
я имел в виду администрирование. Не знаю почему, но бытует мнение, что оракл сложнее в администрировании. Для автоматизации таких задач не нужен профессиональный админ. Например есть мастер планирования

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

Но c моей точки зрения вопрос скорее в другом. Лично я полагаю, что потратить двести-триста баксов на разовую просьбу настроить сервер гораздо разумнее, чем просить сделать несколько щелчков мыши человека, который не понимает, что такое "сбор статистики". Если же человек понимает - я не имею ничего против щелчка мышью, но и создать job с единственным вызовом dbms_stats.gather_system_stats не слишком сложнее.

StalkerS
Т.е. речь идет например о системе в 30-50 пользователей, не очень интенсивной работе с базой. В случае с ораклом нужен грамотный специалист, в случае с mssql - нет.

Мне не приходилось ставить такие системы, поэтому не могу сказать, насколько хорошо в таких условиях будет работать Oracle, просто поставленный из дистрибутива. Но: система на 30-50 пользователей, это $3.000-$5.000 на лицензии. Имхо, при этом заплатить еще $200-$300 и получить профессиональный результат - вполне разумно.

StalkerS
Попробуйте спросить в форуме по MSSQL у Glory, может скажет что полезное

В этом форуме слишком большой траффик даже для меня :)

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

StalkerS
Так что при наличии вынутых из задницы рук, проект любой сложности реализуется на mssql.

При наличии правильных рук проект любой сложности реализуется и на FoxPro :)

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

В то же время согласитесь с тем, что если MSSQL - "база для взрослых", то и относиться к ней надо соответственно. Пару дней назад в форуме Delphi некто pkarklin подтвердил высказывание о запросах, которые в MSSQL парсятся (строится план) "по двадцать минут", и дал ссылку на запрос, который не парсится вообще. Я ради интереса прогнал такое же на оракле -
три секунды суммарно, то есть на парсинг, выполнение и фетч. Меня как разработчика это бы несколько напрягало - пусть я (обычно) и не пишу такого кода.
28 янв 05, 11:37    [1281325]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
>> Т.е. речь идет например о системе в 30-50 пользователей, не очень интенсивной работе с базой. В случае с ораклом нужен грамотный специалист, в случае с mssql - нет.

На самом деле, в мире существует очень много оракловых систем, абсолютно без DBA. И они даже работают!
28 янв 05, 13:55    [1282112]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
Vadim_Maximov
Member

Откуда: Москва
Сообщений: 3571
Да есть. Только в итоге зачастую вот что получается...
28 янв 05, 13:58    [1282126]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67530
Блог
Vadim_Maximov
Да есть. Только в итоге зачастую вот что получается...

Это вряд ли зависит от базы. Или в MSSQL есть кнопка "поменять пароль sys'а и все починить"?
28 янв 05, 14:06    [1282174]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
Vadim_Maximov
Member

Откуда: Москва
Сообщений: 3571
Я имел в виду то, что если за БД присматривать, хоть иногда, то АБД такой ситуации просто не допустит.
А если не присматривать, то соответственно имеем, что имеем по ссылке.
28 янв 05, 14:08    [1282189]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67530
Блог
Vadim_Maximov
Я имел в виду то, что если за БД присматривать, хоть иногда, то АБД такой ситуации просто не допустит.
А если не присматривать, то соответственно имеем, что имеем по ссылке.

Не совсем согласен. В данном случае железнячник должен был присматривать за своим железом :)

Вообще - безусловно, нужно иметь "знакомого админа" - именно того, который изначально настроит, может, раз в год будет заходить делать профилактику, а при необходимости все поднимет. И для подобной базы именно это - адекватный уровень администрирования. Плюс - я не разбирался с alert-ами десятки, может они самое то - но какая-то обвеска сообщений о грозящих опасностях, чтобы решать их заранее, а не по факту.
28 янв 05, 14:12    [1282207]     Ответить | Цитировать Сообщить модератору
 Re: MS SQL > Oracle = True?  [new]
killed
Member

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


неа, админ должен был разработать политику рез.копирования.
28 янв 05, 15:02    [1282527]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 22 23 24 25 26 [27] 28 29 30 31   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить