Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Независимость приложения от СУБД / 25 сообщений из 50, страница 1 из 2
14.09.2012, 19:43
    #37958420
Максим Н
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Описать БД и запросы к ней на чистом ANSI SQL и закатать все это дело в один из новомодных ORM (Hibernate например), а потом безболезненно менять СУБД для приложения как перчатки (позабыв про многочисленные уговоры Т. Кайта и других не менее уважаемых специалистов) - миф или реальность ?

А если серьезно, то поделитесь опытом построения таких приложений: плюсы, минусы, особенности в реализации и работе.
Вопрос пока чисто теоретический, поэтому технические подробности системы не описываю, но речь не о среднем сайте, а достаточно крупном приложении, с несколькими модуля, сотнями пользователей и т.д.
...
Рейтинг: 0 / 0
14.09.2012, 19:51
    #37958432
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Максим Нмиф или реальность ?
Миф.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.09.2012, 19:51
    #37958434
Cane Cat Fisher
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
А бизнес-логика? Она вообще предполагается? Она тоже будет через ORM?
...
Рейтинг: 0 / 0
14.09.2012, 20:25
    #37958473
Максим Н
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Cane Cat FisherА бизнес-логика? Она вообще предполагается? Она тоже будет через ORM?
А БЛ на стороне клиента соответсвенно
...
Рейтинг: 0 / 0
14.09.2012, 20:36
    #37958480
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Dimitry SibiryakovМиф.1C?
...
Рейтинг: 0 / 0
14.09.2012, 20:38
    #37958485
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Relic Hunter1C?
фиг:
Максим Нречь не о среднем сайте, а достаточно крупном приложении, с несколькими
модуля, сотнями пользователей и т.д.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.09.2012, 20:50
    #37958495
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Dimitry SibiryakovМаксим Нречь не о среднем сайте, а достаточно крупном приложении, с несколькими
модуля, сотнями пользователей и т.д.
И по какому пункту 1С не пролазит?
...
Рейтинг: 0 / 0
14.09.2012, 20:56
    #37958498
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Relic HunterИ по какому пункту 1С не пролазит?

Как человек, обслуживавший 1С с полусотней пользователей, могу обоснованно сказать: по
обоим. Железо на такую задачу для 1С потребовалось бы выше среднего. В то время как
прилично сделанное приложение с учётом особенностей СУБД обойдётся и начальным уровнем.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.09.2012, 21:22
    #37958517
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Dimitry Sibiryakov,

Я бы не был столь категоричным. Есть куча примеров систем, которые натягиваются на любую популярую СУБД, как CMR, VSC, BugTracker-ы, мониторинговые системы (etc zabbix), СУП как SAP/R3, Siebel, 1C.
...
Рейтинг: 0 / 0
14.09.2012, 21:30
    #37958521
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Relic HunterЕсть куча примеров систем, которые натягиваются на любую популярую СУБД

....пока эта СУБД - MS SQL или Oracle. (c) почти Г.Форд.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.09.2012, 21:57
    #37958532
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Dimitry Sibiryakov....пока эта СУБД - MS SQL или Oracle. (c) почти Г.Форд.
Вот видишь, время машин крашеных в один цвет безвозвратно прошло ;)
...
Рейтинг: 0 / 0
14.09.2012, 22:29
    #37958549
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Relic HunterВот видишь, время машин крашеных в один цвет безвозвратно прошло ;)

В таком случае: критерий популярности - В СТУДИЮ!!! Какого уровня популярности должна
достигнуть СУБД, чтобы с ней работал и SAP/R3 и 1С и какой-нибудь BugTracker?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
14.09.2012, 22:33
    #37958551
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Максим Нмиф или реальность ?Миф.
Relic HunterЯ бы не был столь категоричным. Есть куча примеров систем, которые натягиваются на любую популярую СУБД, как CMR, VSC, BugTracker-ы, мониторинговые системы (etc zabbix), СУП как SAP/R3, Siebel, 1C.Они не натягиваются просто изменением имени БД в конфиге, так, что бы:
Максим Нбезболезненно менять СУБД для приложения как перчатки (позабыв про многочисленные уговоры Т. Кайта и других не менее уважаемых специалистов)К тому же ни в одной из этих систем не используются "один из новомодных ORM (Hibernate например)"

Вообще не видел ни одной системы, подходящей под определение "речь не о среднем сайте, а достаточно крупном приложении, с несколькими модуля, сотнями пользователей и т.д.", в которой использовалась бы такая технология, даже если не брать топовые известные системы.
...
Рейтинг: 0 / 0
14.09.2012, 22:38
    #37958556
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Dimitry SibiryakovRelic HunterВот видишь, время машин крашеных в один цвет безвозвратно прошло ;)

В таком случае: критерий популярности - В СТУДИЮ!!! Какого уровня популярности должна
достигнуть СУБД, чтобы с ней работал и SAP/R3 и 1С и какой-нибудь BugTracker?Да в общем понятно - когда объём продаж под эту СУБД превышает стоимость портирования на неё. И в принципе поставщики некоторых приложений, бывает, поддерживают немало СУБД.

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

Вот такая она, светлая и недостижимая мечта ТС :-)
...
Рейтинг: 0 / 0
14.09.2012, 22:47
    #37958559
Максим Н
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
alexeyvgВот такая она, светлая и недостижимая мечта ТС :-)
Не, не, не - вы меня не правильно поняли. Я как раз таки сам большой противник "обезличивания" БД! Просто вот возник вопрос такой, небольшое сомнение закралось, а в друг и правда есть такая возможность? :)
...
Рейтинг: 0 / 0
14.09.2012, 22:48
    #37958560
Максим Н
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
В догонку:

Какая цель обычно приследуется при построении универсального приложения, не привязанного к СУБД ?

Производительность?
Но ведь одна и та же ANSI-шная болванка (без заточки под конкретную СУБД, под ее особенности и расширенный функционал) будет работать примерно с одинаковой скоростью как на дорогущих Oracle и MSSQL так и на халявных PG и (пока еще) MYSQL ?

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

Что нибудь еще?
...
Рейтинг: 0 / 0
14.09.2012, 23:08
    #37958581
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Максим НПросто вот возник вопрос такой, небольшое сомнение закралось, а в друг и правда есть такая возможность? :)Нет никаких сомнений, нету возможности :-)

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

Ну и вопрос не только в стоимости лицензий, нужен же штат людей, какая то школа по СУБД. Не может же в самом деле компания при покупке решения не обращать внимание на то, что для этого решения нужно, кроме апаратной части.
...
Рейтинг: 0 / 0
14.09.2012, 23:13
    #37958585
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Почитайте про патерн программирования MVC и его реализацию "Code First". Там вообще проектируется приложение под бизнес модель и только потом модель генерирует базу данных, для которой есть соответствующий EF драйвер.
...
Рейтинг: 0 / 0
14.09.2012, 23:21
    #37958597
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Максим НА если серьезно, то поделитесь опытом построения таких приложений: плюсы, минусы, особенности в реализации и работе.
Практически даже "Oracle + Firebird" было изрядным геморроем.

Даже в рамках ANSI SQL существует изрядное количество несовместимостей. Практически "одинаково на всех СУБД" могут выполняться только приложения, построенные на запросах SELECT FIELD FROM TABLE WHERE ID = ? и соответствующих однострочных операторах модификации. А писать приложение при таких ограничениях... мягко говоря, скучно.
...
Рейтинг: 0 / 0
14.09.2012, 23:30
    #37958604
timda
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Relic Hunter, почитать почитаем, но использовать это можно только для макетов. Для этого кросс-платформенность нужна, чтобы при сборке показательных стендов, которые я называю макетами, на этапах пресейла - конфигурировать в достаточно простом режиме различные варианты для Заказчика.
В продакте надеюсь вы не предлагаете базы пересобирать ? :)

Максим Н, думал холивары о кроссплатформенности ушли в небытие, но реальность говорит об обратном :)
ИМХО, платформа всегда определена конкретной средой и обстоятельствами.
Представляете себе компанию, которая под Новый Год выпускает приказы о назначении руководителей отделов с доверенностями и заодно приказы об эксплуатируемом сервере баз данных на будущий год ?
Говорить о выборе СУБД можно чисто гипотетически, потому что как правило на этот выбор влияют совершенно другие критерии от исходного ресурса до философии (вернее "тараканов") руководителей.
...
Рейтинг: 0 / 0
14.09.2012, 23:39
    #37958609
Arhat109
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Максим Н,
не знаю, надо ли.
Как правило этим вопросом задаешься в самом начале проектирования, потому как ещё много неизвестных... Как обычно, хочется "всего и сразу и нахаляву"... зато какое преимущество! Фигня это.

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

Как пример, знаю место, где ДОСовским парадоксом пользовались до 2010года "вовсю" в бизнес процессах в не самой маленькой организации. Одна из причин жизни разных mumps. :)

Опять же, заточенное под конкретную БД приложение - работает шустрее. Главное, чтобы "затачиваемость" совпадала с потребностями задачи.
...
Рейтинг: 0 / 0
15.09.2012, 01:06
    #37958645
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
Если речь о
Максим Ндостаточно крупном приложении, с несколькими модуля, сотнями пользователей
то
Максим НОписать БД и запросы к ней на чистом ANSI SQL
нереально уже само по себе.

Поэтому
Максим Нзакатать все это дело в один из новомодных ORM
или нет - уже не принципиально.

Максим Нподелитесь опытом построения таких приложений
По-любому придётся как-то на уровне не выше построения запросов определять типа сервера, к которому выполнено подключение, и соответственно менять код SQL. Выбирать имена для сущностей такие, чтобы были для всех СУБД корректными. Впрочем последнее относится скорее к модели БД. А с моделью будет отдельная особая пляска с бубнами и баянами.
Короче говоря, это работа в целом - для аккуратных дотошных зануд, не побоюсь этого слова. И проблемы программиста с чистым ANSI SQL и тем более всякими ORM даже после поддержки 3 разных СУБД в одной модели и одном большом проекте вам покажутся детской забавой. Это прежде всего проблема архитектуры и проектирования.
...
Рейтинг: 0 / 0
15.09.2012, 06:27
    #37958686
Alexsalog
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
А как вам мысль описывать запросы в неком СВЕРХ SQL из которого потом путем "компиляции" будут генерироваться процедуры на конкретном языке SQL.

Конечно компиляция может быть не столь интеллектуальной, как мозги программиста. Но это как сказать, как сказать..
И потом в сгенерированный SQL, который подойдет скажем процентов на 70, пусть будет допустимо вносить изменения вручную.
Все равно работы будет меньше.
...
Рейтинг: 0 / 0
15.09.2012, 11:33
    #37958744
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
AlexsalogА как вам мысль описывать запросы в неком СВЕРХ SQL из которого потом путем "компиляции" будут генерироваться процедуры на конкретном языке SQL.
Она здравая и правильная, имхо. Но учитывая необходимый объём работ (необходимый на самом деле, а не кавалерийским наскоком), она будет оправдана только в весьма крупных проектах. Кроме того, не стоит забывать ещё о двух вещах: разработка такого продукта будет означать необходимость отладки/тестирования под все платформы (то есть тупо увеличение затрат в эн раз), а список возможностей получившегося "сверх скл" будет пересечением возможностей платформ с объединением мелких несовместимостей и различных багов.

Я как-то говорил: я в своё время сконструировал скрипт на анси скл (ну вернее оператор, а всё остальное - создание таблиц и заполнение данными), который при выполнении на трёх разных СУБД даст три разных результата. И "компилятору сверхскл" придётся каким-то образом обеспечить одинаковый результат на всех трёх.

AlexsalogИ потом в сгенерированный SQL, который подойдет скажем процентов на 70, пусть будет допустимо вносить изменения вручную.
Это несопровождаемо.
...
Рейтинг: 0 / 0
15.09.2012, 11:54
    #37958757
Alexsalog
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Независимость приложения от СУБД
А что вообще опыт генерации SQL на основе каких то отношений так уж неудачен ?
Вот предлагали взять ОРМ. Там между прочим SQL генерируется.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Независимость приложения от СУБД / 25 сообщений из 50, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]