Завершив мой уровень Computing A в 2003 году и получив степень в области вычислительной техники в 2007 году, а также изучив свою профессию в компании с большим использованием SQL, я был воспитан на идее использования реляционных баз данных для хранения.
Таким образом, несмотря на то, что я относительно новичок в разработке, я был ошеломлен, прочитав комментарий (на /software//q/89994/12436 ), в котором говорилось:
[Некоторые разработчики] презирают [SQL] и думают, что это и RDBMS - это увлечение
Очевидно, что компетентный разработчик будет использовать правильный инструмент для правильной работы и не будет создавать реляционную базу данных, когда, например, уместен плоский файл или другое решение для хранения, но RDBM полезны в огромном количестве обстоятельств, так как они могут быть считается причуда?
Ответы:
Ключ находится в R в RDBMS, что означает реляционный. Вопреки распространенному мнению, это означает не отношения между таблицами, а тот факт, что каждая таблица является отношением в математическом смысле слова .
Реляционная модель имеет довольно существенные последствия. Вы должны смоделировать свои данные, чтобы соответствовать отношениям и нормализовать эту модель . Если ваше приложение спроектировано как объектно-ориентированная модель, реляционная модель не подходит. Это широко известно как несоответствие объектно-реляционного импеданса .
Одним из подходов к этому несоответствию являются ORM (сопоставители объектных отношений), которые приобрели большую популярность. Но они не являются верным решением, они больше похожи на решение проблемы. Они до сих пор не решают проблему отображения наследования классов на реляционную модель.
Истинным решением для объектно-реляционного несоответствия являются OODBMS , которые, к сожалению, не получили большого распространения. Популярным движком, изначально поддерживающим OOBD, является PostgreSQL, который является гибридной OO / RDBMS. Другая OODBMS - это Zope Object DB , которая построена на Python и в типичной установке использует RDBMS в качестве базового движка.
Альтернативный подход состоит в том, чтобы реализовать больше логики на уровне приложений или промежуточного программного обеспечения и использовать решение NoSQL для базового хранилища.
Ни OODBMS, ни NoSQL не являются «простым файлом».
источник
Я сделал заявление, которое вы цитировали в вопросе выше. Если вы хотите, чтобы цитата подтвердила мои предположения о разработчиках на этом сайте, прочитайте мой ответ на следующий вопрос и просмотрите ответную реакцию на полученные комментарии и отрицательные отзывы, которые я до сих пор считаю приемлемым ответом.
Должны ли опытные программисты знать запросы к базе данных?
Я сделал утверждение, что если используется база данных RDBMS, то, несмотря на Linq или ORM, разработчик должен обладать глубокими знаниями SQL.
Это было крайне непопулярное утверждение, которое, по-видимому, объясняется существенными различиями во мнениях о важности SQL и менее респектабельным мнением о том, что СУБД по своей природе уступает базам данных NoSQL, таким как MongoDB.
РЕДАКТИРОВАТЬ: Чтобы добавить к моей претензии, я процитирую пользователя SK-logic:
источник
причуда :
СУРБД существуют уже целую вечность (по крайней мере, в терминах CS), так что кто бы ни сказал, что это означает либо сказать что-то другое, либо не имеет смысла.
источник
Альтернатива РСУБД - это не просто файл. Когда я учился в школе, OODBMS была новой вещью, и мой профессор был прав, когда назвал это увлечением. Вы должны взглянуть на различные модели и отметить тенденции. Я видел растущую зависимость от OLAP и был бы готов сделать ставку на новую многомерную систему, которая может обрабатывать данные быстрее, не за горами.
источник
Проблема в том, что многие разработчики ошибочно приравнивают СУБД к SQL. SQL - действительно ужасный язык по современным стандартам. Это ошибочная и неполная реализация «реляционного» языка (SQL на самом деле не совсем реляционный, и это является частью проблемы), который не сильно развился за последние 30 лет. Многие люди, использующие SQL, едва понимают реляционную модель - все, что они знают, это SQL, и поэтому они предполагают, что реляционная модель является причиной их разочарования.
источник
Без контекста трудно определить, кто / почему утверждает, что RDBM считаются модными.
В краткосрочном и среднесрочном периоде (5 -10 лет) и я бы подумал еще дольше, что не собирается уходить. RDBM предоставляет эффективный и действенный метод хранения, обработки и поиска реляционных данных, который есть у большинства компаний, будь то клиенты / заказы, пассажиры / билеты и т. Д.
Существуют и другие альтернативы, такие как NoSQL, которые, похоже, растут в популарности с открытым исходным кодом.
Как и OLAP, это действительно (на мой взгляд) специализированные базы данных, разработанные, чтобы позволить бизнесу предоставлять своевременную и полезную статистическую информацию о компании и запускать сценарии «что если» на текущих данных. Конечно, почти во всех случаях эти текущие данные поступали из RDMB, обрабатывались и затем вставлялись в базу данных OLAP.
источник
Реляционные базы данных - это увлечение в том же смысле, что и микрокомпьютинг.
источник
Простой ответ - нет. СУБД не увлечение. Когда вы читаете что-то на веб-сайте LinqPad, имейте в виду, что их целью является продажа лицензий на их продукт.
источник
Причудливое не подходящее слово, так как они были вместе долгое время. Я думаю, что вы могли бы начать утверждать, что технология очень старая и, возможно, пришло время придумать следующий следующий шаг - возможно, архитектуры NoSQL
источник
Wiki Защита. «Причуда» определяет термин «причуда» следующим образом: «Причуда» - это любая форма поведения, которая развивается среди большой популяции и коллективно сопровождается энтузиазмом в течение некоторого периода, обычно в результате того, что поведение каким-то образом воспринимается как новое. Говорят, что причуда «завоевывает популярность», когда число людей, принимающих ее, начинает быстро расти. Поведение, как правило, быстро исчезнет, как только исчезнет ощущение новизны.
Поскольку последователи СУБД не исчезли быстро и не собираются уходить через много лет (благодаря огромной куче производственных приложений, использующих их), мы не можем сказать, что это причуда. На самом деле основные концепции RDBMS оставались достаточно стабильными, когда многие другие технологии сильно изменились (и продолжают меняться).
Концепция СУБД (и ее основного средства, SQL) представляет собой шаг в технологии, который, как и многие другие, может быть заменен лучшими, вот и все.
источник