Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 Инструмент для реализации системы с динамической структурой данных  [new]
VitalkaDrug
Member

Откуда: Комсомольск-на-Амуре
Сообщений: 11
В процессе анализа очередной задачи автоматизации явно вырисовывается объектная модель организации данных и методов по работе с ними. Сразу же напрашивается вопрос - на чем это реализовывать? Либо использовать объектно-ориентированную СУБД, либо ORM-прослойку между приложением и обычной реляционной СУБД. Поскольку до этого плотно работали только с реляционными СУБД - испытываем трудности выбора инструмента. Хочется услышать совет людей, уже сталкивающихся с похожими задачами и имеющими опыт в реализации на той или иной платформе.

Из требований, которым должен отвечать выбранный инструмент, или которые должны быть выполнимы с его помощью, есть следующие:
1. Ведение истории параметров объектов (а возможно - и методов классов) с возможностью выборки значений, актуальных на указанную дату.
2. Отслеживание целостности связей между объектами (как минимум - невозможность удаления объекта, на который ссылается другие объекты).
3. Язык методов должен быть достаточно универсальным или расширяемым - на нем предполагается описать всю логику работы приложения, от работы с другими объектами до интерфейса с внешним миром.
4. Динамическое изменение структуры объектов и методов классов без блокировки работы всей системы. Этот пункт особенно акутален, поскольку предполагается функционирование приложения 24 часа в сутки 365 дней в году. Изменения должны вноситься без блокировки клиентов и сразу же отражаться на их работе (т.е. без переинициализации клиентского приложения, при очередном обращение к методу объекта выполняется модифицированный код).
5. Необязательно, но крайне желательно, функционирование серверной части на Unix-системе. Во многом обуславливается теми же запросами по доступности сервера - 24x365, и наличием команды специалистов по работе именно с Unix-серверами.

Есть мнения по выбору инструментария?
16 мар 05, 15:37    [1391056]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для реализации системы с динамической структурой данных  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67424
Блог
VitalkaDrug
Есть мнения по выбору инструментария?

Есть мнение, что сейчас и Вам тоже посоветуют Versant :) Впрочем, для разнообразия, для этой задачи он может оказаться хорошим выбором.
16 мар 05, 15:41    [1391093]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для реализации системы с динамической структурой данных  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
Ну, судя по описанию задачи, Versant Developer Suite разрабатывался именно для ее решения.

1. Ведение истории параметров объектов - есть (но тут важно понять, в каком виде вы потом хотите получать доступ к этой истории - возможно вам лучше реализовывать этот механизм самостоятельно на основе обработки событий "изменение объекта")

2. Отслеживание целостности связей между объектами - есть.

3. Язык методов должен быть достаточно универсальным или расширяемым - Java (может потребовться использование вспомогательного сервиса Versant SQL) (важно понять, хотите ли вы обязательно хранить методы в базе данных вместе с объектами или возможно использование сервера приложений, т.е. методы могут храниться в коде программ, работающих на сервере приложений)

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

5. Крайне желательно, функционирование серверной части на Unix-системе. -
есть (HP-UX, AIX, Linux, Solaris)

6. 24x365 - есть (в т.ч. Fault Tolerant, High Availability ... )

Можете почитать также здесь. Цены для крупного проекта в России сегодня могут быть снижены значительно по сравнению с прайсовыми.


Но ставка на ООСУБД может быть оправдана не всегда. Поэтому "до кучи" порекомендую вам и еще один продукт - Versant Open Access, который как-раз позволяет работать в объектной парадигме с традиционными РСУБД (например, Oracle или MS SQL). Но вот динамическое изменение структур здесь уже может оказаться проблематичным (хотя и возможно при определенных усилиях).
16 мар 05, 17:33    [1391787]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для реализации системы с динамической структурой данных  [new]
VadimF
Member

Откуда: InterSystems Russia
Сообщений: 513
Добрый вечер,

Рекомендую Вас рассмотреть возможность использования Cache'.
В этом случае Вам не придется реализовывать объектную прослойку над реляционными СУБД. Делать самим объектную прослойку - сложный проект с как правило не слишком удачным результатом.

Разработчики, которые привыли РСУБД, достаточно легко осваивают Cache'.
Основная проблема начать использовать объектный подход.

Все что Вам нужно в Cache' есть. И много дополнительных возможностей.
Можно обсудить все в форуме, но лучше Вам пообщаться с консультантами или посетит вводный семинар по Cache' (Cache' Entree).

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

Более подробную информацию, можно получить в InterSystems.

С уважением, Вадим
16 мар 05, 18:55    [1392184]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для реализации системы с динамической структурой данных  [new]
VitalkaDrug
Member

Откуда: Комсомольск-на-Амуре
Сообщений: 11
Alexey Rovdo
Ну, судя по описанию задачи, Versant Developer Suite разрабатывался именно для ее решения.

...

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


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

А есть какие либо аналоги подобным продуктам в низшей ценовой категории, или распостраняемые по открытой лицензии?
17 мар 05, 01:19    [1392579]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для реализации системы с динамической структурой данных  [new]
Разработчик
Guest
А че вы цен то ихних испугались ? Если вам для себя эту систему делуть нужно, то просто берете 1 лицензию на разработку за 4-5 тыс. уев и получаете возможность юзать етот Версант хоть на всех своих серверах. Проблемы могут быть только когда вы захотите в тираж свой продукт пустить (то бишь другим его запродать). А так они сейчас в наших краях новички и на все это не то что сквозь пальцы, а даже с радостью смотреть должны (и так и делают).
17 мар 05, 11:12    [1393432]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для реализации системы с динамической структурой данных  [new]
Alexey Rovdo
Member

Откуда: Москва
Сообщений: 913
В чем-то он прав - стучите и вам откроют! :-)
17 мар 05, 11:37    [1393587]     Ответить | Цитировать Сообщить модератору
 Re: Инструмент для реализации системы с динамической структурой данных  [new]
f2f
Guest
Alexey Rovdo
стучите

Призыв в данной ситуации двусмысленный :)
18 мар 05, 14:41    [1397905]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить