Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 6 [7] 8 9 10 11 .. 83   вперед  Ctrl
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33172
Блог
Тьфу! Ошибся! Вместо 729 (9*9*9) в самом внешнем цикле следует поставить 27 (9+9+9). Но это не важно. Если даже с лишними циклами время расчета фактически равно 0.
6 июн 03, 12:24    [224020]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
2 Garya

Я что, непонятно выражаюсь что-ли???... Я ведь специально уточнил - что именно вы меряете скриптом-то???.... Вы ответили - "Эффективность реализации ядром операций JOIN SQL". Я запустил ядро и посмотрел, с какой скоростью этот пример будет работать. Цифирьки - см. выше.

Ну а алгоритм я и сам на чем угодно (С/Pascal/VBA) написать могу....
6 июн 03, 12:30    [224030]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33172
Блог
С 8-ю циферьками:
calc

Результат= 4816030 Время вычисления 3.00000000000047 сек
6 июн 03, 12:34    [224042]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
С 8-ю циферьками...

Мдя???... Мне как объяснить, чтобы понятно было - что если бы вместо тестового примера, который реалитуется вложенными циклами, были бы реальные числовые данные объемом 10^8 строк, то расчет происходил бы с той же скоростью, м???




ЗЫ. А будвайзер все равно по прямой не догнать... ТОлько огородами, огородами, выдумывая хитренькие задачки с сильно неоднороными данными...

6 июн 03, 12:42    [224052]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
AI
Member

Откуда: Москва
Сообщений: 2817
2 Garia

С MS SQLServer никогда не работал. Поэтому не знаю. С оракулом работаю с 1995г.

Процессор обычный P3-800EB. Без разгона.

На этот запрос мог получить 14.7, 5.08, 4.01, 2.6 секунд (с разными видами хранения таблицы, добавления/убивания индексов, включения/выключения параллелизации и планов соединения в запросе). После некоторых извращений сделал сотые секунды. Сам SQL-запрос не менялся.

В любом случае, на Р4 1.8Г с наилучшей оптимизацие без извращеий будет быстрее 1.5 секунд.

Но, как всегда кто-то скажет, что это незаконно. То оракл говорит, что TPC-C тесты MS выигрывает неправильно, то наоборот, оракл использует "запрещенные приемы".
6 июн 03, 13:06    [224093]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33172
Блог
2 ЦК. А вы не могли бы показать Ваш скрипт? Я сильно подозревают, что того селекта с 6-ю алиасами, который требуется для выполнения JOIN-ов ядром (а не лично Вами) там не наблюдается. Кстати, изложенный на VBA скрипт я перекатал в MS SQL Server 2000 в виде хранимой процедуры. Для билетиков из 8 цифр она отрабатывает 118 сек (то есть, почти 2 минуты). Я о том же - каждый инсрумент должен использоваться для того, для чего он предназначен. Если мы сравниваем быстродействие в СУБД и именно запроса SELECT по 6-ю алиасам, то сравнение должно быть чистым.
6 июн 03, 13:11    [224101]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33172
Блог
Ладно, не будем разводить флейм. Продолжу по существу.

1. Программы и подпрограммы в COS (аки и MUMPS) могут быть с параметами. Например, объявление заголовка программы:
MyProg(A,B,C)
A,B и C - параметры. Как и положено для MUMPS - безтиповые. А как обстоит с передачей параметров по ссылке и по значению? Великолепно обстоит! Для этих двух случаев объявление программы совершенно одно и то же. Это вообще одна и та же программа. Только обращение к ней разное. Передача параметров по значению:
Set X=1, Y=2, Z=3
Do MyProg(X,Y,Z)
А теперь по ссылке:
Do MyProg(.X,.Y,.Z)

2. Все переменные в программах автоматом становятся Public и Static. В каком еще языке вы подобное видели? Если нужно скрыть переменные, нужно В КАЖДОЙ ПРОГРАММЕ/ПОДПРОГРАММЕ явно вызывать команду NEW, которая это делает. То есть, превращает Public в Private. Да и то, полноценно это сделать врядли удастся, потому что в какой-нибудь 1000-й программе обязательно забудешь это сделать и обратишься не к той переменной, на которую думаешь, а к той, которая торчит из чужого контекста. А если к тому же нужно переменную превратить из Static в Dynamic (каковыми они по умолчанию являются во всех остальных языках), то нужно в конце каждой подпрограммы командой KILL грохать статические переменные, чтобы они выглядели как динамические. И это в языке, который имеет название Cache Object Script! А как же один из важнейших принципов ООП, именуемый инакпсуляцией? Похоже, революционный во всех отношениях Cache реализовал новый принцип ауткапсуляции... :)

3. Кстати, ранее я уже говорил о том, что одна и та же команда или функция в COS имеет тьму тьмущую вариантов функциональности в зависимости от использованного числа аргументов. Это еще не все. Функциональность некоторых функций (в частности, работы с текстовыми строками) еще зависит и от ЗНАЧЕНИЙ этих параметров. Например, если в функции выделения подстроки из строки в качестве номера позиции задать число -1, то она превратиться из экскаватора в грейдер. Тким образом, чтение программ, написанных другими программистами, превращается в сущий ад. Нужно не только разбираться в синтаксисе, чтобы понять, какое действие происходит в данной строке, но и еще отслеживать ЗНАЧЕНИЯ аргументов. Во класс!
6 июн 03, 13:34    [224155]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
2 Garya

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

А что касается сравнений серверов - они бессмыслены по определению. Это очень легко показать тому, кто понимает, что такое многомерная функция. Что обычно сравнивается??? ВРЕМЯ.

Напишем:
T1=F1(x1,x2,...xn,z1,z2,...,zk)
T2=F2(x1,x2,...xn,y1,y2,...ym)

F1 и F2 - функции, выдающие некие значения времени и иллюстрирующие работу сервера. Параметры, от которых они зависят - железо, аппаратная платформа, память, настройки и т.д. и т.п. Для определенности пусть F1 выдает данные какого-то сервера Оракл, F2 - MS SQL.

Вопрос - что больше T1 или T2 ???... Он не имеет смысла - функции заданы на разных множествах, даже если вы уравняете часть общих параметров (иксы - железо, память, система, вид запроса), все равно вариацией других (y & z) всегда можно изменить результат. О чем и было сказано AI.

Для конкретных фиксированых точек XY* и XZ* могут быть получены как соотношения T1<T2 так и T2>T1. Имхо, 98% споров о производительности серверов сводятся к сравнению частных случаев - сравниваются две конкретные точки и из этого делается вывод, что F1>F2 (или F2<F1) на всей области задания этих функций. Что есть полный бред, ес-сно. Пример со счастливыми билетиками именно к такому случаю и относится.

А сравнить-то хочется. С чисто практической целью, между прочим - чтобы понять "что лучше" и чем надо пользоваться. Единственный подход, претендующий хоть на какую-то объективность - СТАНДАРТИЗИРОВАНЫЙ набор РАЗНОРОДНЫХ тестов на БОЛЬШИХ объемах данных, включающих в себя набор некоторых операций, считающимися "типичными". Но и тогда результат теста F1>F2 говорит лишь о том, что скорее всего, с большей вероятностью, если ваша задача попадает под определение "типичных", если ее будут решать некими "стандартными подходами" некие "стандартные" программеры, то тогда при выборе первого сервера все будет работать быстрее, чем при выборе второго. Но вероятность - штука хитрая и совершенно необязательно, что выбрав сервер 1 вы получите быструю и надежную систему. Говно можно из чего угодно сотворить-то.

Маркетологам такой объективный подход к оценке серверов, ес-сно, не выгоден - очень хочется орать что наши яйца круче всех. А от воплей суть дела в общем-то не меняется.
6 июн 03, 14:00    [224196]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
А что такое встраиваемые СУБД?

Трудные времена, которые сейчас диктуют условия работы многим производителям ПО, вывели InerSystems на первое место в рынке встраиваемых СУБД, согласно исследованию Gartner. Компания занимает лидирующую позицию, опережая системы, реализованные на основе СУБД Progress, Sybase и Pervasive. На сегодня перед компанией стоит цель удержать эти позиции и закрепиться на них в долгосрочной перспективе.

Ну судя по тем, кого опередили, цели не очень амбизиозные.
6 июн 03, 14:21    [224229]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33172
Блог
2 SergSuper. Если я понимаю, то встраиваемые СУБД - это те, которые можно встроить в собственное приложение и распространять как их составную часть. Возможно, в приведенной выдержке подразумевалось что-то другое. Но РСУБД LINTER (кстати, Воронежская разработка) считается удобной именно для этого. И на семинаре "Корпоративные базы данных 2003" данный термин употреблялся именно в этом смысле.
6 июн 03, 14:47    [224274]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
...встраиваемые СУБД - это те, которые можно встроить в собственное приложение и распространять как их составную часть.

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

Но у пирога есть и обратная сторона - обычно теряется универсальность... :о( На специфических задачах - полный рулез, Оракл и NSSQL отдыхают, но... Как только надо сделать что-то непредусмотренное - ситуация с точностью до наоборот... :о(
6 июн 03, 15:09    [224308]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
Дык а серверная часть при этом есть? Если нет - то получается что это файл-сервер, если есть - значит не все встраивается и чем тогда это отличается от обычной клиент-серверной архитектуры? У меня тоже пользователи не знаю что такое сервер, для них это одна программа.

Или это относится только к лицензионной политики?
6 июн 03, 15:21    [224338]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33172
Блог
Я могу назвать полноценной встраиваемой СУБД только LINTER. Она может быть представлена всего-навсего модулем, напрямую включаемым в ваше приложение. Причем, если приложение не использует какие-то функциональные возможности этой СУБД, то можно их просто отключить, уменьшив размер этого модуля. Подробнее можно заглянуть сюда.
6 июн 03, 15:59    [224401]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
Я могу назвать полноценной встраиваемой СУБД только LINTER

По сравнению с какими "неполноценными" СУБД?

Да, кстати, интересно по каким критериям оценивалась "полноценность"???
6 июн 03, 16:46    [224490]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
Есть два вопроса
1) По линтер. Значит ли встраиваемость, что БД, используемая программой, доступна только для этой программы? Поясню. СУБД типа MS SQL и ORACLE можно рассматривать как программы, реализующие сервер часть, и данные из всех БД, которые они поддерживают, доступны для многих клиентов. Если же СУБД реализована в виде встраиваемой библиотеки, то, насколько я понял, никакими серверными возможностями тут и не пахнет.
2) По быстродействию (очень общий вопрос). Интересно, если припомнить самую крутую конфигурацию машин десятилетней давности, можно ли хотя бы приблизително сказать, во сколько раз медленее выполнялись бы на них ваши тестовые запросы? (если следовать закону Мура - 2 раза за 1.5 года- то должно быть в ~64 раза медленнее)
6 июн 03, 16:57    [224510]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
Судя по тому как я понял описание Линтер, встраиваются только некие модули для однопользовательских сиситем. Если нечто большее - то обычный клиент-сервер.
Кэш же, как я опять же понял, изначально клиент-сервер. Где же тут встраиваемость?
6 июн 03, 17:24    [224565]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33172
Блог
Похоже, мою фразу не совсем правильно поняли (только SergSuper понял верно). Видимо, этому способствовала опечатка (буква Й на конце слова "полноценно"). Я приведу ее повторно без опечатки: Я могу назвать полноценно встраиваемой СУБД только LINTER.

2 SergSuper. Linter может работать просто как чать EXE-шника сделанного тобой приложения в однопользовательском режиме. Но он может работать и как отдельный сервер для реализации полноценной клиент-серверной технологии и многопользовательского доступа. Можно распространять однопользовательское приложение. А можешь отцепить от него встраиваемый модуль СУБД и только немного изменить интерфейс взаимодействия с ЛИНТЕР - и оно уже многопользовательское. Другие производители не смогли добиться ТАКОЙ масштабируемости - от супер-микро до полноценного клиент-сервера. MSDE, в частности, изначально многопользовательская. И жрет на порядки больше ресурсов, чем встраиваемый ЛИНТЕР. Линтер же можно даже на Pocket PC запустить.
6 июн 03, 18:02    [224652]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
2 U-gene

Если же СУБД реализована в виде встраиваемой библиотеки, то, насколько я понял, никакими серверными возможностями тут и не пахнет

Ну почему же???... Если, скажем, реализована в каком-то виде поддержка транзакций - это уже что-то от сервера. Причем чем лучше реализовано, тем "серверней" получается
9 июн 03, 11:27    [225461]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
Я бы не стал говорить, что идея "клиент-сервер" и идея "транзакции" прямо вот так неразрывно связаны. Например тот же Акцесс транзакции реализует (причем эти транзакции организуются средствами не SQL, а VBA ), хотя "клиент-серверную" идею не реализует.Или. Есть такая программа - micrisoft word :). Там можно вносить изменения в документы (т.е. данные), а потом он тебя спрашивает - "Сохранить изменения?" (вроде "COMMIT или ROLLBACK?"). Можно сохранить, можно не сохранять. Это транзакция или не транзакция?

Другое дело, что хорошая СУБД должна включать средства организации транзакций. Но вот утверждать, что "есть транзакции - значит что-то серверное" я бы не стал. Скорее наоборот.
9 июн 03, 11:49    [225499]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
2 U-gene

Я бы не стал говорить, что идея "клиент-сервер"...

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

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


ЗЫ. Опр: Транзакция - некое действие (набор действий), обладающее свойством атомарности и переводящее систему из одного согласованного состояния в другое.
9 июн 03, 14:52    [225819]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
U-gene
Member

Откуда: Москва. Россия
Сообщений: 1576
2 ЦК

Такой стиль общения можно охаратеризовать как "рефлексивно-негативисткий с элементами фантазии". Причем это наблюдается многократно.

Перед тем, как задать вопрос, следует ВНИМАТЕЛЬНО прочитать предыдущии топики, и не выдумывать ничего из головы. Я же написал, что хорошая СУБД должна включать средства организации транзакций. Нахрена же спрашивать, а как без них обойтись?

Потом(точнее перед). Говоря о серверных возможностях, я перед этим УТОЧНЯЮ в пяти строках, что речь идет именно о ДОСТУПЕ к данным. Если ВНИМАТЕЛЬНО все это прочитать, то вопрос о транзакциях вообще не должен возникнуть (конечно, за исключением случай, когда хочется блеснуть знаниями ).
9 июн 03, 15:50    [225939]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Циничный Кот
Member

Откуда: Moscow / St. Petersburg
Сообщений: 6496
2 U-gene

Такой стиль общения можно охаратеризовать как "рефлексивно-негативисткий с элементами фантазии". Причем это наблюдается многократно.

Самокритика???


Перед тем, как задать вопрос, следует ВНИМАТЕЛЬНО прочитать предыдущии топики, и не выдумывать ничего из головы.

Следовательно, голову надо содержать пустой, а иже вопрос возникнет, искать истину в топиках... Я, правда, неможко для других целей голову использую...


Если ВНИМАТЕЛЬНО все это прочитать, то вопрос о транзакциях вообще не должен возникнуть

Перечитал. Увидел. Было такое дело - разговор про доступ. Вопрос все равно возник, ибо непонятно, что конкретно понимать под "серверными возможностями". Если интерпретировать только как "возможности доступа к данным" - тогда да. Возможно, сыграло свою роль и то, что намаялся в свое время с обеспечением хоть какого-то механизма транзакций... :о)
9 июн 03, 18:28    [226237]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
cab
Member

Откуда:
Сообщений: 126
А что скажет народ про Pick System и D3.
www.rainingdata.com
30 июн 03, 18:05    [246386]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД  [new]
Andreww
Member [заблокирован]

Откуда:
Сообщений: 1752
Я могу высказаться про D3.

Работал с ней почти 3 года, впечатления просто ужасающие.

Куча маркетинговых соплей (тут есть что-то общее с Cache) - Самое лучшее, без администрирования, просто и быстро и т.п.

Основной упор делается на то, что система ОТЛИЧНАЯ ОТ ДРУГИХ ( и тут есть пугающая аналогия с Cache).

Нешуточная цена - сравнимая с MSSQL.
Никакой особой функциональности, в принципе нет, новых возможностей не добавлялось с 70-х годов.
Скорость просто удручающе низкая - 100\200 тыс записей и SELECT идёт минуты.
Отвратительный способ хранения файлов (старый и неэффективный).
Планирования индексов нет, генераторов нет, триггеров нет, вместо них какие-то подпорки. Ошибки какие-то детские, студенческие даже и их там полно. ODBC драйвер не работает с момента появления, доступ только в терминальном режиме (Telnet, RS-232).

Работает только там где работала ещё при царе горохе.

В принципе за те несколько лет успел разобраться достаточно хорошо, если какие вопросы, или нужно более полное мнение : ahitrin@mail.ru
4 июл 03, 17:06    [251903]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
bushmen
Member

Откуда: г. Москва
Сообщений: 828
To Garya:
Интересно, чем закончились Ваши исследования Cache?
9 июл 03, 09:52    [255315]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 6 [7] 8 9 10 11 .. 83   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить