Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 3 4 5 6 7 [8] 9 10 11 12 .. 83   вперед  Ctrl
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
IBMer
Guest
Немного не в темую... Кто сказал что полиморфизм, инкапсуляция, наследование - это основные характеристики ООЯ??? Это всего лишь инструменты облегчающие программирование. Что вы все на них так помешались. Что не может быть ООЯ без наследования или полиморфизма???
9 июл 03, 11:23    [255496]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
bushmen
Member

Откуда: г. Москва
Сообщений: 828
To IBMer:

А ты посмотри любую книгу, посвящённую, например, C++. Там с самого начала идёт фраза типа "Изучение ОО языка программирования невозможно без понимания терминов полиморфизм, инкапсуляция, наследование". Так что это не мы говорим.
9 июл 03, 11:28    [255507]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
2 IBMer. Объектно-ориентированное программирование "всего лишь" облегчает программирование по сравнению с обычным алгоритмическим. Более оно ничего не делает. Точно так же как информационные технологии вообще "всего лишь" облегчают решение задач тем, кто раньше пользовалася счетами и многоэтажными картотеками. Всего лишь. А так это, конечно же, полная туфта, совершенно ничего нового - 2*2=4 по-прежнему :).

2 bushmen. Пока они не кончились. Cache в моих глазах сильно упал, но небольшая надежда на то, что из него что-то получится сделать, пока остается. Все языковые проблемы COS на самом деле не на столько существенны. Позднее я узнал, что кроме инструментов, доставшихся COS от MUMPS он включает некоторые конструкции, более приближенные к реалиям сегодняшнего дня. И вообще, COS я использовать не собираюсь. В 5-й версии появился Cache Basic, не отягощенный грузом MUMPS-овских анахронизмов. Две самые существенные проблемы лично для меня - это:
1. Отсутствие полноценных механизмов репликации. То, что в Cache подразумевают под репликацией, тянет не более чем на понятие прилинкованного сервера.
2. Очень низкое быстродействие того тестового SQL-запроса, о котором шла речь выше. Я подозреваю, откуда оно может проистекать, хотя точно в этом не уверен. Дело в том, что в глобалях хранится безтиповая информация, которая фактически приводится к строковому типу. Числовая или строковая интерпретация производится "на лету". А для того, чтобы ее произвести, пирходится каждый раз строковое значение преобразовывать к числовому. Это совершенно бесполезное и никчемное (с точки зрения достижения цели при решешии поставленной задачи) преобразование съедает груду вычислительных ресурсов. Это мое предположение. Я уже придумал вариант тестового SQL-запроса, который будет находить счастливые билетики не числовым суммированием, а строковой конкатенацией. Если быстродействие такого запроса окажется более близким к MS SQL Server, значит мое предположение правильное. Когда проведу его - сообщу результаты.

Почему я пока еще держусь за Cache? Потому что в том проекте, который я намерен реализовать, требуется древовидная иерархическая организация данных, причем с большой глубиной иерархии. Когда я пытаюсь построить подобные вещи на реляционных таблицах, получаю не просто тормоз, а ТОРМОЗИЩЕ. Вполне возможно, что при всей прочей убогости Cache окажется более эффективным инструментом именно для той задачи, на которую я нацелен. Если я все-таки остановлюсь на Cache, то...
...проблему №1 придется, видимо, самостоятельно, угробив на ее решение колоссальное количество времени и сил. Потому что даже в готовящейся к выпуску версии 6 никаких качественно новых механизмов репликации не предвидится. Для этого придется разработать специальный базовый класс типов данных, который должен будет использоваться ВМЕСТО %Persistent.
...с проблемой №2 я еще не все до конца понял. Разбираться и разбираться. Может оказаться, что для повышения быстродействия придется максимально избегать использования SQL-запросов и везде, где это возможно, заменять их операциями прямого доступа к данным.
9 июл 03, 14:49    [255948]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
bushmen
Member

Откуда: г. Москва
Сообщений: 828
To Garya:
По поводу запросов на SQL я с тобой согласен - я проводил эксперимент по сравнению с SQL Server 2000. Результаты у Cache SQL сравнимы с MSSQL, а в некоторых случаях даже хуже. Зато при переходе на COS производительность резко увеличилась. Но меня смущает тот факт, что на COS можно делать только хранимые процедуры, т.к. клиент у меня написан на VB и выборки в Grid я могу получить только при использовании Cache SQL. Получится какой-то гибрид. Правда, у нас стоит 4 версия. 5 я ещё не смотрел. Но твои слова о появлении в ней Cache Basic вдохновили :)
9 июл 03, 15:35    [256027]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
2 bushmen. Если ты программируешь на VB, то можешь использовать не только ODBC, но и специальный ActiveX компонент, при использовании которого становится доступным полноценно объектно-ориентированный доступ к данным. Можешь обращаться к свойствам объектам, а можешь вызывать и методы (что через ODBC не возможно в принципе).
9 июл 03, 17:44    [256312]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Maksim UM
Member

Откуда: SPb
Сообщений: 432
2 Garya:
Обращаться напрямую к Cache через ODBC вполне реально.
Достаточно написать класс-обертку, который, который будет получать параметры ODBC запроса (COS комманды) и выполнять их, возвращая
результат через fetch.
Что касается VB в cache, то у него есть некоторые ограничения по
сравнению с COS. Если я не ошибаюсь, эти ограничения описаны в
документации.
10 июл 03, 08:47    [256721]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
bushmen
Member

Откуда: г. Москва
Сообщений: 828
To Gary:
Смотрел я эти ActivX компоненты под Cache 4 - две компоненты. Grid там какая-то обрезанная.
10 июл 03, 09:59    [256801]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
2 Maksim UM. Я же не говорю, что через ODBC нельзя. Конечно, можно. Но при этом прозрачно получается работать только с ДАННЫМИ. А с методами классов можно только в том случае, если они оформлены в виде хранимой процедуры. Если же это классические методы, то через ODBC с ними работать не получится. Необходимо использовать ActiveX. Кстати, их действительно два.
10 июл 03, 11:02    [256936]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
2 bushmen. Grid-а там вообще нет. Это уже втое личное дело, как зацепить Grid к этим данным. Там ты можешь кувыркаться как хочешь. Хочешь - строки и стобцы поменяй местами, хочешь функциональность сделай антагонистическую традиционной. Правда, для этого опять же требуется уйти от абстрагирования и заняться не решением поставленной задачи, а превращение просто Gridа в DBGrid_на_Cache_ActiveX. Ясный пень, что скорость разработки приложений при этом сильно страдает.
10 июл 03, 11:07    [256949]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Maksim UM
Member

Откуда: SPb
Сообщений: 432
2 Garya
>Я же не говорю, что через ODBC нельзя. Конечно, можно. Но при этом
>прозрачно получается работать только с ДАННЫМИ. А с методами классов
>можно только в том случае, если они оформлены в виде хранимой процедуры.
>Если же это классические методы, то через ODBC с ними работать не
>получится. Необходимо использовать ActiveX. Кстати, их действительно два.

Как я уже написал, через ODBC можно работать со всем - и с классами, и
с данными и с методами. Только это прийдется делать самому
(но это не сложно)...
10 июл 03, 11:16    [256969]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
bushmen
Member

Откуда: г. Москва
Сообщений: 828
To Garya:
Вот и получается, что для отображения данных проще пользоваться ODBC - никаких заморочек
10 июл 03, 11:44    [257033]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
2 Maksim UM. Что-то я не въехал... Ты утверждаешь, что через ODBC, к примеру, можно безо всяких проблем вызвать метод класса или методв экземпляра класса, которые предварительно специально не затачивались под подобный вызов? Если не затруднит, то в двух словах - как это делается? Можно на мыло, чтобы не засорять топик.
10 июл 03, 12:11    [257098]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
IBMer
Guest
2bushmen: не правильные значит книжки читаете. Веселые картинки какие-то :)
10 июл 03, 18:45    [257909]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
bushmen
Member

Откуда: г. Москва
Сообщений: 828
To IBMer:
Так подскажите в чем я не прав, укажите на мою ошибку. Реальный пример: нужно НД из таблицы отобразить на клиенте (VB6) в Gridе. Кроме как взять элемент ADODC и в нем указать на DSN я не знаю.
11 июл 03, 09:56    [258236]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Vetal
Member

Откуда: Киев
Сообщений: 1019
>2 Maksim UM. Что-то я не въехал... Ты утверждаешь, что через ODBC, к
>примеру, можно безо всяких проблем вызвать метод класса или методв
>экземпляра класса, которые предварительно специально не затачивались
>под подобный вызов? Если не затруднит, то в двух словах - как это
>делается? Можно на мыло, чтобы не засорять топик.

А почему это засорять топик. Тема очень интересная. Я б например тоже хотел бы узнать, как это делается. А если не в топик, то хотя бы на мыло и мне тоже. Мое мыло: test777@ukrpost.net

Заранее спасибо.
11 июл 03, 19:34    [259410]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Maksim UM
Member

Откуда: SPb
Сообщений: 432
Вызывать метод класса просто - его нужно при создании объявить
SqlProc (хранимая процедура, я не считаю это специальным
затачиванием).
Вызвать метод экземпляра нельзя. Правильно это или не нет,
вопрос сложный и, думаю, его обсуждать не стоит.
Тем не менее в SQL запросе можно передать хранимой процедуре
специальный параметр - %ID (это ROW ID записи), в ней создать объект
и что-нибудь с ним сделать нехорошее :)
Можно воспользоваться свойством M систем выполнять (интерпретировать)
находу, и сделать один из параметров строкой, которая будет выполняться
в хранимой процедуре. Можно передавать в хранимую процедуру
Row ID и имя метода, открывать класс и выполнять метод экземпляра.
*** Естественно, что все это снизит скорость (надеюсь,
это никого не удивит ?!) ***
И, в конце концов, можно в SELECT`е, в одном из полей указать
функцию COS и делать все, что угодно в базе
и за ее пределами :)
14 июл 03, 11:51    [260452]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
> Но можно создать метод класса (хранимую процедуру) и передать ему разные параметры (в том числе и ID текущей записи), а там делай, что хочешь.

А разве можно хранимую процедуру вызвать в том синтаксисе, который ты
привел? То есть, как функцию, без оператора Call - например, как часть
арифметического выражения в тексте SQL-запроса?
14 июл 03, 12:44    [260552]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Vetal
Member

Откуда: Киев
Сообщений: 1019
Вот, протестировал на своей машине производительность трех различных серверов базы данных. Запустил скрипт подсчета счастливых билетиков.
Машина: PIII-800, 256Mb:
MS SQL Server: 2c
Firebird (Interbase): 8c
Cache' (демо-версия): 14c
Из этого следует вывод, что Cache практически на порядок медленнее MS SQL, не говоря уже есстественно о Oracle. Насколько я понял, это происходит вследствие специального занижения производительности демо-версии. Кстати непонятно, зачем ограничивать свой продукт от коммерческого использования именно таким образом? Ведь можно было бы просто ограничить колличество коннектов или сделать ограничение на срок использования демо-версии. А так получается, что в вопросах производительности Cache' нужно полностью положится на слово разработчиков Кеша.

Garya>> "Я отправил специалисту в InterSystems просьбу произвести подобный тест на полноценной версии Cache и сообщить мне результаты, но ответа пока нет"
Garya, Скажите пожалуйста, пришел ли ответ от Intersystems, и разобрались ли Вы c проблемой производительности в Cache'
21 июл 03, 16:03    [269847]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
> Garya, Скажите пожалуйста, пришел ли ответ от Intersystems, и разобрались ли Вы c проблемой производительности в Cache'

Вопрос задавался повторно, но ответ так и не пришел. Из чего я сделал вывод, что ответ мог быть НЕ в пользу Cache.
Запрос со стороквой конкатенацией, заменяющей арифметическое сложение в алгоритме расчета счастливых билетиков, пока не запускал. Некогда было.
21 июл 03, 23:35    [270317]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Vetal
Member

Откуда: Киев
Сообщений: 1019
2Garya: если вы проведете тестирование с конкатенацией, Вы не могли бы сообщить результат сюда либо мне на электронный адрес: test777@ukrpost.net
22 июл 03, 00:36    [270343]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
bushmen
Member

Откуда: г. Москва
Сообщений: 828
Пожалуйста, ответ пишите здесь, т.к. всем интересен результат.
22 июл 03, 09:12    [270416]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
IBMer
Guest
А что у нас C++ имеет лучшую реализацию ООП что книги по нему за бибилию считать???
22 июл 03, 10:43    [270523]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Garya
Member

Откуда: Москва
Сообщений: 33163
Блог
> А что у нас C++ имеет лучшую реализацию ООП что книги по нему за бибилию считать???

Не обязательно. Можно, например, прочитать книжку по Cache (выше была ссылка). Но в ней раздел, знакомящий с принципами ООП, тоже начинается с разьяснения принципов "трех китов", на которых эта концепция строится - инкапсуляция, полиморфизм, наследование. Недавно прочитал книжку по C# - надо же, и там все то же! Можно, конечно, настоящую Библию прочитать - там точно эти термины не встречаются, правда там не встречаются также термины "ООП" и "ООЯ" :)...
22 июл 03, 10:57    [270557]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
Maksim UM
Member

Откуда: SPb
Сообщений: 432
>Можно, конечно, настоящую Библию прочитать - там точно эти термины не
>встречаются, правда там не встречаются также термины "ООП" и "ООЯ" :)...

А как же Отец, Сын и Святой дух?-))))
22 июл 03, 11:03    [270573]     Ответить | Цитировать Сообщить модератору
 Re: Сравнение объектно-ориентированных, реляционных и объектно-реляционных СУБД   [new]
n
Guest
Печальная статистика

Стоимость тестирования составляет 50% всей цены начальной разработки и 70% всей цены поддержки ПО. Сегодняшняя техника тестирования создавалась в 1960-1970 х гг. Но тогда речь шла о десятках Кбайт кода, сегодня - о сотнях Мбайт.

Только 50% разработчиков следуют международным стандартам.

Около 70% используют ОО дизайн.

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

Язык С++ дает на 25% больше ошибок, чем традиционные Си или Паскаль, а исправление ошибок в ОО программах на С++ требует в 2-3 раза больше времени. Наследование порождает в 6 раз больше ошибок.

33% всех ошибок случаются реже, чем 1 раз за 5 тыс. лет работы системы. Не более 2% - это общие ошибки, происходящие чаще, чем раз в 5 лет.

http://www.osp.ru/os/1998/06/46.htm
Свыше 70% всех компаний-разработчиков находятся на уровне 1 СММ.

Программное обеспечение, установленное на отдельном компьютере, в среднем удваивается каждые 18 месяцев, однако количество ошибок после отладки и тестирования сегодня такое же как и 30 лет назад - 0,5-2,0 ошибки на каждый Kбайт код
24 июл 03, 19:46    [275002]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 3 4 5 6 7 [8] 9 10 11 12 .. 83   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить