Я не администратор базы данных или архитектор, поэтому я должен спросить тех, кто это делает 24/7. Насколько установлена концепция ORM (реляционное сопоставление объектов) в мире администрирования и архитектуры баз данных? Это все еще происходит, широко одобряется, но все еще находится на ранней стадии или вообще не одобряется? Я изучаю эту область и хочу получить представление о том, будет ли это знание оценено более широким сегментом этой области.Как установлено ORM (реляционное сопоставление объектов) в мире баз данных
ответ
Широко используется и определенно настоящее и ближайшее будущее. Доступ к базе данных с помощью ручного кода генерации SQL всегда был чреват тяжелым трудом и опечатками, и в лучшем случае был громоздким. ORM позволяют использовать хранилище сохранения в программировании.
Я думал, что этот блог аргументировал это хорошо: http://jonkruger.com/blog/category/fluent-nhibernate/ и SO сообщения вроде этого (nHibernate versus LLBLGen Pro) показывают, сколько людей использует их.
Я могу рассказать вам по моему опыту. Мы являемся производителем солнечной продукции стоимостью 2,5 млрд долларов, и мы основываем наше следующее поколение продуктов на технологиях ORM. Мы используем Linq-To-SQL, довольно успешно. Мы очень этому довольны.
Linq-To-SQL не является полным инструментом ORM, но LINQ to Entities (ADO.Net Entity Framework) является API-интерфейсом ORM (Object Relational Mapper). См. Здесь http://stackoverflow.com/questions/8676/entity-framework-vs-linq-to-sql –
@ A-Var - «Завершить» субъективно. Просто потому, что L2S составляет 1: 1 с таблицами базы данных, не делает его неполным. В этом смысле каждая ORM является неполной по сравнению с продуктом, который имеет большинство функций, звонков и свистов. –
Концепция существует не менее 20 лет.
Если вы посмотрите на любой достойный веб-фреймворк, будь то Java, Ruby, PHP, C# или Python, все они включают ORM. Как правило, это воспринимается как более профессиональный выбор, если у вас нет особых требований к высокой производительности или пользовательскому SQL.
Re высокой производительности, это не совсем точно. Многие ORM позволят вам использовать пользовательский SQL, если вы хотите иногда брать на себя ответственность за производительность. – samquo
Несомненно, это хорошо, чтобы указать на это. – JAL
Я предполагаю, что моя мысль была, если вы используете собственный SQL, вы в значительной степени используете ORM, чтобы получить соединение с базой данных, и на самом деле это не использует ORM. – JAL
ORM широко используются. Django (инфраструктура веб-приложений python) использует SQLAlchemy. Hibernate популярен для программ Java. ORM ускоряют разработку приложений SQL, уменьшают количество кода шаблона, который вы должны написать, и скрываете, какую базу данных вы используете из остальной части приложения. Производительность может пострадать при использовании ORM, поэтому будьте готовы настроить вещи по мере необходимости.
Много мест используют их, это не значит, что они хорошо их используют или что они являются хорошей идеей для долгосрочного здоровья базы данных. Это не значит, что они тоже не являются, обычно это означает, что люди, выбирающие их, не думают о том, как это влияет на дизайн базы данных, обслуживание и производительность с течением времени.
- 1. Реляционное сопоставление объектов в Node.js
- 2. Реляционное сопоставление объектов
- 3. Реляционное сопоставление объектов в Граале
- 4. Реляционное сопоставление между двумя динамическими суммами объектов
- 5. объектно-реляционное сопоставление
- 6. Объектно-реляционное сопоставление
- 7. Реляционное сопоставление с использованием Peewee
- 8. Объект Реляционное сопоставление и производительность
- 9. Spring/Hibernate и реляционное сопоставление
- 10. Объектно-реляционное сопоставление (?) С JPA/Eclipselink
- 11. Intersystems caché - реляционное сопоставление (заказное хранилище sql)
- 12. Какой ORM поддерживает сопоставление существующих баз данных?
- 13. Объектно-реляционное сопоставление и уровень абстракции базы данных
- 14. Какая CMS использует ORM (объектно-реляционное сопоставление)
- 15. Сопоставление отношений 1: m
- 16. Как сделать реляционное сопоставление между объектами, использующими mongoDB в sprinboot?
- 17. Сопоставление: значение по умолчанию для баз данных
- 18. Сопоставление значений из отдельных баз данных
- 19. Сопоставление отношения m: n дважды
- 20. Как удалить класс домена grails, который имеет реляционное сопоставление?
- 21. Сопоставление данных для объектов JSON.NET: как реализовать?
- 22. сопоставление объектов объектов NHibernate
- 23. Сопоставление отношений из нескольких баз данных в NHibernate
- 24. Сопоставление объектов
- 25. Как создать правильное сопоставление объектов?
- 26. Сопоставление объектов в swift
- 27. Объектно-реляционное сопоставление с гибернацией - что означает «Sessionbound»?
- 28. Сопоставление объектов с ASPNETDB.MDF MVC3
- 29. Как использовать реляционное деление?
- 30. сопоставление динамических отношений объектов
Желаю, чтобы наши dba были 24/7 ... Мне повезло, если я смогу найти один между 9 и 5! Я клянусь, что это требование работы dba, что они способны исчезнуть как раз перед тем, как вам это понадобится. haha – CaffGeek
@chad, мы выпустили наш плащ invisibilty в первый день. – HLGEM