![]() |
![]() |
#76 |
Спам-робот
|
![]()
Там дело намного хуже - видал я эту бадягу. Эта странная приблуда вместо пары строчек на SQL сгенерит скрипт на 1000 строк, в начале которого откроет транзакцию, залочит таблицы и начнет медленно пережевывать данные курсором.
__________________
My Church is Black... |
![]() |
![]() |
Зарегистрируйтесь или войдите под своим именем, чтобы спрятать этот рекламный блок |
![]() |
#77 | |
Спам-робот
|
![]()
Архитектурной правильности
![]() Цитата:
![]() |
|
![]() |
![]() |
![]() |
#78 |
Спам-робот
|
![]()
Смешно
![]()
__________________
My Church is Black... |
![]() |
![]() |
![]() |
#79 |
Спам-робот
|
![]() |
![]() |
![]() |
![]() |
#80 |
Активный Участник
|
![]() |
![]() |
![]() |
![]() |
#81 | |
Спам-робот
|
![]()
Как СУБД (одна!) может обеспечить их разделение? Она же хранилище! Сам по себе факт запихивания БЛ в СУБД - уже отсутствие оного разделения (особенно мне нравится, когда параметры процедур объявляются в виде "тип такой-то колонки такой-то таблички").
А потом, для полноты картины, разработчики (те самые лабатели) начинают дергать эти самые процедуры прямиком из какой-нибудь jsp/php/... Пэстня. Дальше - лучше, менеджеры начинают создавть функциональные(!) спецификации приложения в терминах "данные из таблички ТТТ попадают на экран ЭЭЭ". И все - от большого уважения к данным и СУБД! Мной было обнаружено, что в компании, успешно разрабатывавшая как бы жабские веб приложения в течении нескольких лет во всем CVS (во всех проектах) нет файла типа User.java ни в каком виде - ибо аутентификация проходила из фронтенда прямо в базочку. Убивав бы. svu добавил 30.04.2010 в 14:22 Цитата:
svu добавил 30.04.2010 в 14:23 http://en.wikipedia.org/wiki/Object_database Starting in 2004, object databases have seen a second growth period when open source object databases emerged that were widely affordable and easy to use, because they are entirely written in OOP languages like Smalltalk, Java or C#, such as db4o (db4objects), DTS/S1 from Obsidian Dynamics and Perst (McObject), available under dual open source and commercial licensing. Последний раз редактировалось svu, 30.04.2010 в 13:29. Причина: Добавлено сообщение |
|
![]() |
![]() |
![]() |
#82 |
Просто Зануда
|
![]()
В хорошей архитектуре целостность данных обеспечивается на уровне хранилища.
__________________
The misuse of language induces evil in the soul © Socrates ![]() |
![]() |
![]() |
![]() |
#83 |
Спам-робот
|
![]() |
![]() |
![]() |
![]() |
#84 |
READ ONLY
|
![]()
Вот именно что Хранилище, а не свалка. Сама Таблица это уже элемент БЛ, ведь можно было бы сваливать все данные в файл и пусть потом приложение обрабатывает их. Далее, Поле таблицы еще один элемент БЛ, так как имеет определенный тип, а соотвественно и ограничения. Первичный ключ, Вторичный ключ, Уникальные индексы - также элементы БЛ. Глупо проверять уникальность информации вне базы данных, какой бы гениальной не казалась архитектура. Продолжая далее последовательно придем к тому что имеет каждая уважающая себя СУБД.
__________________
Хотели всё и сразу, а получили ничего и надолго. [url=http://www.visited.ru][img]http://www.visited.ru/flagmap.php?visited=ATBEBGCZFRDEIEITMTNLRUESUKVATR[/img][/url] |
![]() |
![]() |
![]() |
#85 |
Просто Зануда
|
![]()
Под целостностью данных я понимаю целостность данных. Они либо целостные, либо нет.
__________________
The misuse of language induces evil in the soul © Socrates ![]() |
![]() |
![]() |
![]() |
#86 | |
Активный Участник
|
![]() Цитата:
вот например в одном из офисов кто-то умудрились накатить новый функционал на базу (DDL), жаба почему-то не обновилась. в результате туча хлама в базе, которую 2 недели разгребали. мне, оракловому дба это было настолько дико видеть, я думал эти проблемы остались в далеких 80х. в оракле бы логика разложенная по pl/sql пакетам пометилась бы как инвалид и субд не позволила бы запуститься инвалидной логике ни при каких условиях, вот оторванный от данных орм никто не проинформировал что структура пары таблиц изменилась и он как ни в чем не бывало запускал ставший кривым код. имхо огромный шаг назад в развитии. ЗЫ. посмотрите данные Gartner, IDC доля ОО-субд сокращается и на данный момент меньше погрешности вычисления. |
|
![]() |
![]() |
![]() |
#87 | |
Спам-робот
|
![]() Цитата:
Тут в проектировании надо подходить с пониманием что натурально-связанные между собой данные должны быть целостными при любой бизнес-модели. У человека всегда должны остаться одна голова и один ППС номер все зависимости от изменения внешних бизнес-моделей.
__________________
My Church is Black... |
|
![]() |
![]() |
![]() |
#88 |
Спам-робот
|
![]()
Она не элемент БЛ. Она - хранилище для структур данных, позволяющих наиболее эффективно реализовывать БЛ. В принципе, приложению должно быть пофиг, будет там БД или файл или ЛДАП какой-нибудь - лишь бы были удобные механизмы "вынуть-всунуть". Дайте удобный интерфейс хранения объектов - а на нижнем уровне хоть глиняные таблички испольуйте... Соббсно мой пойнт именно в этом - для прикладного ОО программиста сущность "БД" в некотором смысле лишняя. Это дело для ДБА и пр. Разработчику нужен гибкий универсальный интерфейс персистенции объектов. Безглючный и по возможности эффективный. Если этот интерфейс предоставляется (на сегодня) лучше всего реляционными СУБД (+ОРМ) - ура, я рад за их производителей. Пусть ускоряют индексы, вылизывают ОРМ, пусть сертифицируют дб админов - это замечательная и интересная ниша, в ней есть и будет много бабла - но прикладников это все не должно интересовать. Абстрагироваться от этих деталей реализации надо бы, по хорошему.
Если в терминах http://en.wikipedia.org/wiki/Data_integrity, то не вижу противоречий. Пусть БД за них отвечает. Другое дело, что могут существовать высокоуровневые бизнес-правила, исключающие некоторые состояния объектов - их стоит реализовывать в бизнес-логике (и, изредка, вообще на фронтенде в виде валидации). Проблемы на уровне менеджмента процесса разработки и поддержки - это для отдельного флейма. Они могут любое дело загубить ![]() ![]() Статистика всякая бывает. Конечно, я вижу - пока оно тухло. Но чем чорт не шутит. Тем более что в Оракле и пр. объектные фишки не перестают добавлять. Вполне вероятно, однажды мы доживем до того, что оракл начнет нативно воспринимать какой-нибудь OQL, EJB QL (особенно любопытно, в свете покупкой ораклом сана). Тогда всем наступит щасте. |
![]() |
![]() |
Зарегистрируйтесь или войдите под своим именем, чтобы спрятать этот рекламный блок |
![]() |
#89 | |
Спам-робот
|
![]()
Скорее - горе
![]() Цитата:
Но таких приложений нет - это то же самое что начать строить дом с посадки дерева из которого потом сделают крышу. Ты опять путаешь целостность данных с правилами поведения. Это разные понятия, хотя и включающие одно в другое в большинстве случаев.
__________________
My Church is Black... |
|
![]() |
![]() |
![]() |
#90 |
Активный Участник
|
![]()
проблемы ормов и вообще оо подхода в том, что он провоцирует девелопера мыслить не множествами при обработки информации, а объектами. в результе 9 из 10 девелоперов плодит кривой код который на рсубд не одевается ни как, какие бы чудеса не выдумывал оракл.
воротить под этих девелоперов осубд, дело гиблое и по моему уже пройденое в 70х. вот кто-то может сходу рассказать принципиальную разницу между иерархическими субд из 70х и сегодняшними осубд ? >что Вы скажете о языках, где нет компиляции вообще лично мне жутко нравиться пхп, когда он на своем месте и отвечает только на валидацию инпута и отрисовку хтмл. опять же 2 конструкции пхп заменяют сотни мегов монстроидальных жавовских фреймворков и кода обвязки и во многом благодаря отсутствию строгой типизации. |
![]() |
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщ. |
Вопросик | Asiza | Вопросы и предложения | 13 | 13.02.2010 21:44 |
Вопросик! | ProGameR | Автотранспорт | 14 | 31.01.2010 20:59 |
вопросик | Ратобор | Вопросы и предложения | 5 | 25.01.2010 16:03 |
вопросик. | xandrey | Иммиграция | 9 | 15.12.2009 21:31 |
Вопросик | Irinak | Работа в Ирландии | 12 | 20.01.2006 11:20 |