Реляционный лагерь и “реальная” разработка базы данных

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

Вам нужно будет обратить внимание на все обещания, которые использует ваш код, включая запрос и все пакетные коммиты. Вы не можете игнорировать любое обещание, возвращаемое любым API, иначе работа будет прекращена до того, как она будет выполнена.

6
задан 6 revs, 3 users 100% 30 June 2011 в 21:11
поделиться

7 ответов

Объектно-ориентированные базы данных являются оксюмороном. чем больше Вы пытаетесь сделать базу данных OO, тем больше Вы оказываетесь в реляционном мире так или иначе. по-моему, они - просто шумиха. Обратите внимание, что ORM's является базами данных NOT OO. Ни один не Наборы данных. Я услышал, что аргумент прежде, таким образом, я говорю это только, чтобы ясно дать понять вещи.

4
ответ дан 8 December 2019 в 13:51
поделиться

Я видел много дискуссий за эти годы о том, как OOD, как предполагается, настигает Реляционные базы данных "в ближайшее время"; то, что Реляционная модель является способом прошлого; та инерция от огромного установленного основания (ehm... наследие) - то, что сдерживает достижения по OOD. "Это - просто вопрос времени, прежде чем 'достаточно хорошая' реализация наконец выйдет и успешно выполнится при смещении RDBMSs".

Я не эксперт никаким фрагментом; но я много раз думал об этом, и я пришел к убеждению, что эти представления полностью упускают суть.

В большинстве сценариев "реального мира", большой вещи, единственной вещи, которая вопросы являются данными.

Методы программирования, инструменты и изменение языков; технология развивается. Корпоративные "Автоответчики" становятся гневом, затем почти исчезают позади тени "сети". Приложения приходят и уходят; некоторые из них хороший, некоторые не так; некоторые очень важные, некоторые просто удобные; несколько прошлых 3 месяца, несколько прошлых 3 десятилетия. Но в конце дня, информация, которая подает все эти приложения, является основой системы и должна пережить колебание вида. Данные остаются.

Так, ядро "Системы" должно развиться вокруг той одной цели: сохраните и защитите данные.

Подумайте об этом: Базы данных SQL в особенности дают нам автономный, (главным образом) стандартизированный репозиторий со старой десятилетиями доказанной записью и могут быть получены доступ в любое время с тем, что является, совсем не устаревшее, по существу Функциональный язык! Это - довольно хорошее место для доверия для самого ценного компонента.

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

Чтобы не сказать, что я верю, все в мире должно войти в таблицу SQL. Подобные OOD решения имеют место также и большой потенциал. Но необходимо посмотреть в местах, где "приложение" является королем, и "данные" вторичны: игры, одноразовые приложения и инструменты, системы, которые содержат не-критические-данные или данные, которые не имеют никакой долговременной ценности мимо продолжительности жизни приложения.

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

Для помещения его в звуковой байт он никогда не был о "приложении"; это всегда было о "данных".

10
ответ дан 8 December 2019 в 13:51
поделиться

Мы видим некоторые способы, которыми объектное моделирование входит в свет для управления нашими данными. У нас есть Linq и NHibernate, который позволяет нам отображать данные в базе данных к объектам в нашем коде.как бы то ни было. Я думаю, что мы - все еще длинный путь от наличия реальной объектно-ориентированной базы данных. Я не уверен, что мы когда-либо будем. В то время как работа с "объектами" имеет, это - преимущества, рассматривание данных как наборы с реляционной моделью данных имеет много преимуществ.

1
ответ дан 8 December 2019 в 13:51
поделиться

До сих пор OODBMSs, которые вышли, кажется, не имеют столь широкое принятие, как некоторые хотели их, и причина была проста: OODBMSs только обращаются к проблемам разработчиков ООП, но не всех остальных, которые включают DBAs, аналитиков, профессионалов MIS и огромное количество разработчиков, которые не объектно-ориентированы, но вместо этого "управляемы данными".

Однако огромный объем данных предприятия остается в RDBMSs, подобным образом что огромный объем данных предприятия также остается в системах COBOL/CICS-powered.

Что касается фактов, Вы можете Google в течение многих часов для поиска статистики, но Вы не найдете никого. Все, что Вы нашли бы, является Oracle по сравнению с SQL Server MS по сравнению со статистикой принятия RDBMSs с открытым исходным кодом MySQL/PostGre/other друг по сравнению с другом, и OODBMSs как db4o в основном проигнорированы.

1
ответ дан 8 December 2019 в 13:51
поделиться

В обработке бизнес-данных реляционная модель твердо укреплена и не может быть удалена. Это является центральным и часто высоко злоупотребляется для несоответствующих вещей. Люди будут использовать (злоупотребляют) реляционной базой данных как надежной очередью сообщений, потому что - хорошо - они рассматривают каждую проблему как проблему базы данных.

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

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

В настоящее время реляционные базы данных обходятся без помощи высказывания. Все спрашивают, "какой механизм базы данных", таким образом, они могут высказать мнение о Oracle по сравнению с IBM по сравнению с Microsoft по сравнению с дебатами MySQL. Никто не спрашивает, "какова модель данных будет? Объект или Реляционный?"

ORM продолжит предпринимать шаги. Объектно-ориентированное программирование продолжит расти, ведя к все большему количеству ORM. Убегание из этого поля трудно - почти невозможный - потому что бизнес-IT фокусируется на устойчивости, не инновациях. Их цель почти всегда, "Сохраняют Световые сигналы На". Это означает отказываться от изменения, пока оно не вызывается на них поставщиком, обанкротившимся или заканчивающим поддержку продукта.

1
ответ дан 8 December 2019 в 13:51
поделиться

Нет единственное явное изменение появилось совсем недавно посредством появления облачных вычислений, где сторонники не обязательно хранят данные способом отношения.

0
ответ дан 8 December 2019 в 13:51
поделиться

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

Я однако нашел простую модель компромисса с наборами данных.NET. Так как они "сам буферизуют" к диску, они являются великими для контакта с блоками данных, которые могут или не могут уместиться в памяти - таким образом, я использую их для своих "объектных наборов".

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

Работы для запросов, возвращая 1 результат миллиону - и модель класса очень легко копировать - с тех пор в основном весь класс, внутренние переменные данных являются просто полями на recordset.

0
ответ дан 8 December 2019 в 13:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: