У меня есть довольно маленькое веб-приложение CRUD с некоторыми отчетами о выводах. Отчеты создаются с использованием представлений базы данных DROOLS и Oracle. Мне трудно понять, что делают представления, и практически не имеет шансов изменить вид (некоторые представления составляют около 100 строк кода запроса). Является ли это лучшей практикой, хранящей данные, представляющие интерес, в представлении? Я не очень опытный пользователь базы данных, но я пытаюсь выяснить, требуется ли изменение архитектуры или мне просто нужно копаться в базах данных, чтобы лучше понять представления базы данных.База данных веб-приложений
0
A
ответ
0
Я закончил использование именованных запросов в своих классах доменов, чтобы сделать код более управляемым. Я также разбил много просмотров на более мелкие запросы, чтобы я мог точно определить шею бутылки и применить кэш. Я думаю, что это чудеса, имеющие запросы в классе домена, в том, что касается управления кодом и помогли мне разобраться в узких местах.
Смежные вопросы
- 1. База данных и база данных
- 2. Многонациональная база данных база данных с MySQL
- 3. Горизонтальная база данных и вертикальная база данных
- 4. Однопользовательская база данных и многопользовательская база данных
- 5. База данных Blob, чрезвычайно динамическая база данных
- 6. Реляционная база данных или база данных NoSQL
- 7. База данных Нормализация Словарная база
- 8. База данных - Версии данных
- 9. База данных данных мыла
- 10. Сервер Java SE + база данных + база отдыха
- 11. База данных сущности + база преимуществ: UDF
- 12. База данных - получение многомерных данных
- 13. База данных для последовательных данных
- 14. База данных «события» базы данных
- 15. База данных базы данных Mysql
- 16. База данных + модель модели данных
- 17. База данных базы данных Firebase
- 18. база данных ---- нормализация базы данных
- 19. SQL-база данных базы данных
- 20. База данных базы данных MYSQL
- 21. База данных базы данных модель
- 22. Добавление данных База данных Neo4J
- 23. PostgreSQL (база данных/модель данных)
- 24. База данных C# Вставка данных
- 25. База данных базы данных Laravel
- 26. База данных базы данных SQLite
- 27. База данных для ENORMOUS данных?
- 28. SQL - однопользовательская база данных vs автономная база данных
- 29. База данных с памятью и база данных графиков
- 30. CQRS, база данных событий и база данных NoSQL
Нет ничего плохого в том, чтобы использовать представления базы данных как таковые. Как вы описали, они инкапсулируют некоторые сложные запросы. Где еще вы могли бы поставить те же самые запросы? Обратите внимание, что вы не храните ничего в представлении. Это скорее виртуальная таблица. – Steve
Мне было бы проще включить логику в конец java. Я бы указал более простой запрос во время транзакции. Обратите внимание, что я использую структуру Grails, Hibernate и GORM. Я хотел бы написать методы обслуживания для некоторых сложных запросов и просто вызвать их по мере необходимости. Что-то не так с этим? Я понимаю, что, вероятно, это связано с производительностью, но из того, что я обнаружил при тестировании своего веб-приложения, представления базы данных работают довольно медленно. –
В этом нет ничего плохого. В современных базах данных нет серьезных последствий для этого, поскольку они автоматически оптимизируют часто называемые запросы. Таким образом, нет большого улучшения производительности при использовании представлений или хранимых процедур. Хотя, если они являются «материализованными представлениями», они кэшируют результаты и, как таковые, могут быть значительно быстрее, чем код в вашем приложении. – Steve