Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4 5 6 7 8   вперед  Ctrl      все
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
>> Когда программист пишет программу он работает с объектами

Сдается мне, Вы не с того конца программу разрабатываете. Всё же данные первичны, и алгоритмы их обработки вторичны.

Дело в том, что одни и те же данные могут быть представлены как совершенно различные объекты в зависимости от точки зрения пользователя. Следовательно, мапинга Вам избежать не удастся. А так как вы точку зрения одного приложения (одной маленькой и ничтожной частички большой и прекрасной системы) делаете основной, то Вы затрудняете работу других приложений с теми же данными.
17 дек 04, 12:36    [1188694]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
Почему бы не абстрагироваться наконец от поведения объектов и сосредоточится на их сути, то есть данных?
17 дек 04, 12:38    [1188705]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
funikovyuri
Member

Откуда: Симферополь
Сообщений: 4045
А JDO зачем сюда приплетать? Т.е. пожалуйста - только его наличие скорее на руку РСУБД чем чему-то еще. Ведь jdo позволяет получить слой из бизнесс-сущностей на java, хранящий свое состояние в РСУБД...
17 дек 04, 12:43    [1188732]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
tygra
Member

Откуда: Тверь (Иркутск, Край)
Сообщений: 9997
А вот интересно, зачем мне данные в виде объектов ООП???
Данные - они и есть данные, зачем мне их видеть на клиенте в виде именно объектов ООП (объектов кода)? Я и так с ними очень прекрсно работаю и без проблем. Зачем лишнюю шелуху сверху наворачивать? А если еще учесть то, что вся бизнес-логика сосредоточена на клиенте - ну извините, мне это нафиг не нужно. Быть привязанным к клиенту на веки вечные?

-- Tygra's --
17 дек 04, 12:49    [1188772]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
автор
Когда программист пишет программу он работает с объектами, не так ли. Они существуют в памяти компьютера. Это данные, правильно? Чтобы их сохранить в РБД надо преобразовать эти данные к виду таблиц. Сделать маппинг.

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

автор
Просто дать команду commit и объект уже в базе данных. Я так понимаю объектные СУБД.

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

P.S. Я лично вообще не работаю в задачах с обьектами. Я работаю с информацией, ее сбором, обработкой, преобразованием, аналитикой. Обычно информации "множество" и алгоритмы обработки требуются для "множеств". Никого не интересует одна запись (обьект), разве что клиентские приложения, когда они формочку на ее ввод, редактирование делают. И то у тех уже на обьектной иерархии нужные компоненты работы с множествами реализованы, которые кстати в первую очередь используют коллекции, кои в каком то плане можно назвать убогим аналогом таблиц РСУБД.
17 дек 04, 13:00    [1188822]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
tygra
А если еще учесть то, что вся бизнес-логика сосредоточена на клиенте - ну извините, мне это нафиг не нужно. Быть привязанным к клиенту на веки вечные?

А сервер приложений это тоже клиент?
17 дек 04, 13:17    [1188900]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
www.fun4me.narod.ru
Сдается мне, Вы не с того конца программу разрабатываете. Всё же данные первичны, и алгоритмы их обработки вторичны.

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

www.fun4me.narod.ru

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

Значит это разные классы.
17 дек 04, 13:34    [1188969]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
www.fun4me.narod.ru
Почему бы не абстрагироваться наконец от поведения объектов и сосредоточится на их сути, то есть данных?

Данные - это всего лишь один из аспектов проблемы. Ведь суть приложения не чтение и сохранение данных, а их обработка. В основном суть информационной системы - автоматизация процессов, поведения данных.
ИМХО
17 дек 04, 13:36    [1188981]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
funikovyuri
А JDO зачем сюда приплетать? Т.е. пожалуйста - только его наличие скорее на руку РСУБД чем чему-то еще. Ведь jdo позволяет получить слой из бизнесс-сущностей на java, хранящий свое состояние в РСУБД...

Да, именно! Бизнес-сущности!
А объектные базы данных просто более эффективно работают с ними. Я реально видел сравнительные тесты. JDO быстрее работает с объектной базой данных, чем с реляционной.
17 дек 04, 13:39    [1188989]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
>> Разработка информационной системы начинается с описания проблемы, задачи, функционала

Любой функционал описывается набором входных и выходных потоков данных и его, в пределе, можно заменить табличной функцией.
17 дек 04, 13:40    [1188996]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

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

Ты работал непосредственно с заказчиком, который формулирует проблему для автоматизации?
17 дек 04, 13:46    [1189022]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
>> Ты работал непосредственно с заказчиком, который формулирует проблему для автоматизации?

Ну работал. Давно это правда было. Ничего особого... Если у заказчика есть что-то, что он хочет автоматизировать, то у него уже есть входные и выходные данные для этого чего-то, которые, быть может, нуждаются в некоторой формализации.
17 дек 04, 13:51    [1189044]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Виталий Гаврилов
Member

Откуда: Санкт-петербург
Сообщений: 15
www.fun4me.narod.ru
>> Разработка информационной системы начинается с описания проблемы, задачи, функционала

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

Мысль не нова, и поднята в тему!!!
Но гараздо эффективнее этот функционал реализовывать в виде входного и выходного списка объектов, т.е. экземпляров классов с присущими им методами работы с данными.
А то такими темпами мы докатимся до процедурного програмирования, и будем утверждать, что все остальное излишество :).
Да, так действительно можно работать, но нужно ли? Вопрос именно в этом.
17 дек 04, 13:55    [1189069]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
tygra
А вот интересно, зачем мне данные в виде объектов ООП???
Данные - они и есть данные, зачем мне их видеть на клиенте в виде именно объектов ООП (объектов кода)? Я и так с ними очень прекрсно работаю и без проблем. Зачем лишнюю шелуху сверху наворачивать? А если еще учесть то, что вся бизнес-логика сосредоточена на клиенте - ну извините, мне это нафиг не нужно. Быть привязанным к клиенту на веки вечные?

Объектный подход - это просто технология разработки.
На сегодняшний день лучше не придумали. Почитай Брукса.
Реляционная модель мешает ему последовательно следовать.
Да, этот подход предъявляет повышенные требования к программисту в плане разработки классов. Каждый класс должен быть как отдельное приложение. Но он окупается за счет ряда преимуществ - повторное использование кода, более точное описание действительности, высокий уровень абстракции и т.п.
Если нужно единовременно переработать некое ограниченное кличество данных, которые уже есть, - не нужен объектный подход.
17 дек 04, 13:57    [1189078]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Константин Лисянский
Member

Откуда: Москва
Сообщений: 902
vadiminfo
Можно вспомнить еще и системы принятия решений. Если используется OLAP, то он не является РМД, даже если там применяютя рел таблицы (звезда, снежинка). Причем, сам Кодд автор рел модели и предложил этот OLAP, признав, что РМД подходит только для OLTP.


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

К тому, что РСУБД хороши только для OLTP - существует несколько специализированных СУБД для систем поддержки принятия решений - Teradata, Sybase IQ, RedBrick. Они имеют все атрибуты реляционных СУБД, однако для OLTP не используются.

Ну, и, наконец, можно привести пример инструментов класса ROLAP (типа Microstrategy), которые OLAP-функционал реализуют с помощью сложного многопроходного SQL поверх тех же реляционных СУБД.

Более того, основные производители СУБД (например, Oracle и Microsoft) идут к конвергенции технологий хранения данных. Об этом свидетельствует тот факт, что функционал OLAP постепенно становится частью ядра СУБД.

Хотя, с другой стороны, например IBM не очень с этим спешит.

В результате, наезд на РСУБД с этой стороны считаю не очень корректным.

По существу топика, не думаю, что ООСУБД может быть быстрее, скажем, той же Терадаты, DB2 или Sybase IQ при решении задач поддержки принятия решений (читай, сложной обработки больших объёмов данных).


С уважением,
Константин Лисянский
http://lissianski.narod.ru
17 дек 04, 14:06    [1189129]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
www.fun4me.narod.ru
>> Ты работал непосредственно с заказчиком, который формулирует проблему для автоматизации?

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

У заказчика есть проблема. Он не мыслит набором данных.
Тем не менее нужно определить набор данных. Но кто сказал, что это нельзя представить в виде объектной модели? Есть CASE-средства для этого. Которые, кстати, могут на основе модели создавать прототипы классов.
Профессиональному программисту (а не администратору баз данных) этого уже достаточно.
ИМХО
17 дек 04, 14:06    [1189132]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Lankaster
Он не мыслит набором данных.
Тем не менее нужно определить набор данных. Но кто сказал, что это нельзя представить в виде объектной модели? Есть CASE-средства для этого. Которые, кстати, могут на основе модели создавать прототипы классов.
Профессиональному программисту (а не администратору баз данных) этого уже достаточно.
ИМХО

А что - CASE уже генерить физические модели для РСУБД по логическим уже не умеют ?
17 дек 04, 14:18    [1189191]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
автор
Профессиональному программисту (а не администратору баз данных) этого уже достаточно.

И еще пожалуйста определите, причем тут администратор БД и может ли профессиональный программист быть проектировщиком БД, не занимаясь кодированием (я например таковым себя считаю) ?
17 дек 04, 14:19    [1189206]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
ASCRUS
А что - CASE уже генерить физические модели для РСУБД по логическим уже не умеют ?

Умеют. А зачем?
Зачем программисту на Java, например, физическая структура данных? Если он может работать с логической.
17 дек 04, 14:22    [1189220]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
ASCRUS
автор
Профессиональному программисту (а не администратору баз данных) этого уже достаточно.

И еще пожалуйста определите, причем тут администратор БД и может ли профессиональный программист быть проектировщиком БД, не занимаясь кодированием (я например таковым себя считаю) ?

Все IMHO:
Мое личное мнение, что программист проектирует систему (ее архитектуру), а не структуру данных. Точнее даже не программист, а архитектор.
Программист реализует эту архитектуру.
Администратор баз данных - тот, кто следит за оптимизацией хранения (чтения-записи) данных.
17 дек 04, 14:25    [1189251]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
www.fun4me.narod.ru
Member

Откуда: Moscow
Сообщений: 2406
Java, Linux, XML!

Java, Linux, XML!!

Java, Linux, XML!!!


А XML в FastObjects есть?
17 дек 04, 14:26    [1189257]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
AI
Member

Откуда: Москва
Сообщений: 2817
Lankaster
www.fun4me.narod.ru
>> Ты работал непосредственно с заказчиком, который формулирует проблему для автоматизации?

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

У заказчика есть проблема. Он не мыслит набором данных.
Тем не менее нужно определить набор данных. Но кто сказал, что это нельзя представить в виде объектной модели? Есть CASE-средства для этого. Которые, кстати, могут на основе модели создавать прототипы классов.
Профессиональному программисту (а не администратору баз данных) этого уже достаточно.
ИМХО


Объясните мне тогда, что такое объекты? Бизнес-данные классифицируются, определяются их взаимосвязи, учитываются дополнительные правила обработки и т.д. Почему это не является работой с объектами. Почему та же ER-модель не объектна? Потому что нет наследования и методов?

Тогда четко говорите, что имеете дело с определенным методом работы, в котором некоторые математические абстракции бизнес-объектов называются объектами в программистском смысле. Эти программистские объекты не имеют ничего общего с объектами в природе, бизнесе и т.д., поскольку являются лишь определенным и приблизительным способом описания. Примерно так же, как теория относительности Галилея описывает механическое движение. И применяются методы ООП, в котором понятие "объект" узурпировало термин "объект", имеющийся в человеческом языке.
17 дек 04, 14:30    [1189284]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
Lankaster
Member

Откуда:
Сообщений: 34
AI

Почему та же ER-модель не объектна? Потому что нет наследования и методов?

Как минимум поэтому.
AI

Тогда четко говорите, что имеете дело с определенным методом работы, в котором некоторые математические абстракции бизнес-объектов называются объектами в программистском смысле. Эти программистские объекты не имеют ничего общего с объектами в природе, бизнесе и т.д., поскольку являются лишь определенным и приблизительным способом описания. Примерно так же, как теория относительности Галилея описывает механическое движение. И применяются методы ООП, в котором понятие "объект" узурпировало термин "объект", имеющийся в человеческом языке.

Да, это определенный метод работы.
Естественно, невозможно абсолютно точно отобразить реальность. "Программистские объекты" - лишь попытка приблизиться к реальности. На мой взгляд, пока - самая удачная.
17 дек 04, 14:37    [1189315]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Lankaster
ASCRUS
А что - CASE уже генерить физические модели для РСУБД по логическим уже не умеют ?

Умеют. А зачем?
Зачем программисту на Java, например, физическая структура данных? Если он может работать с логической.

Я не очень понимаю, как на Java можно работать с логической структурой данных. Если Вы считаете, что обьект в ООП можно назвать логической (чистой) структурой, один в один соотвествущей реальному обьекту в мире, то Вы глубоко ошибаетесь.

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

Не возможно спроектировать систему и ее архитектуру без формализации ее структуры и описания ее бизнес-процессов. Все это элементарно делается на РСУБД, где на DDL описываются структуры хранения данных, а на SQL, DML и языке хранимых процедур прописывается бизнес-логика. БД получается законченным самостоятельным модулем системы. Дальнейшая разработка клиентской части - это уже вторичное дело и без разницы на чем ее делать - на ООП языках, веб-технологиях или вообще работать напрямую через ISQL. Соотвествующе пытаться подогнать СУБД только под критерий "чтоб было удобно одной из технологии разработки клиентских приложений" мне кажется не рациональным.
17 дек 04, 14:38    [1189321]     Ответить | Цитировать Сообщить модератору
 Re: ООСУБД быстрее ЛЮБЫХ решений с реляционными системами ?  [new]
ASCRUS
Member

Откуда: МО Электросталь
Сообщений: 5994
Lankaster
"Программистские объекты" - лишь попытка приблизиться к реальности. На мой взгляд, пока - самая удачная.

На мой взгляд это не удачная, а устаревшая модель приближения к реальности. Концепция обьединения формализованных данных с методами их обработки, да еще с поддержкой посредством наследования расширения аттрибутов обьекта мне лично в последнее время не нравиться. Можно подумать, что если у меня в иерархии классов от класса "Обезьяна" будет наследован класс "Человек", то я в любой момент смогу "привести" человека к обезьяне и получить размер хвоста и модель ее поведения.
17 дек 04, 14:47    [1189380]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4 5 6 7 8   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить