Руководство по созданию эффективных запросов


 Разработка приложений и производительность Интерфейсы



Download 17,08 Mb.
Pdf ko'rish
bet142/210
Sana25.06.2022
Hajmi17,08 Mb.
#704548
TuriРуководство
1   ...   138   139   140   141   142   143   144   145   ...   210
Bog'liq
OptimizZaprvPostgreSQL

188

Разработка приложений и производительность
Интерфейсы
Еще одна причина неоптимального взаимодействия между приложением 
и базой данных кроется на уровне интерфейсов. Обычно приложения ис-
пользуют обобщенный интерфейс, такой как ODBC или JDBC. Эти интерфей-
сы слишком упрощенно представляют базы данных в виде набора плоских 
таблиц. И приложение, и база данных могут работать со сложными структу-
рированными объектами; однако интерфейс не позволяет им обмениваться 
подобными высокоуровневыми структурами. Таким образом, даже если база 
данных поддерживает высокоуровневую модель, приложение от этого не 
выигрывает.
Чтобы получить сложный объект базы данных, приложение вынуждено 
отдельно запрашивать каждую часть объекта или, как вариант, разбирать 
плоское текстовое представление, возвращаемое через интерфейс, и созда-
вать на его основе сам сложный объект.
Несовершенство доминирующих практик разработки хорошо известно 
профессионалам. Почему же они так распространены?
Причины лежат вне технической плоскости. Разработчики приложений 
почти всегда работают в условиях нехватки времени. Крайний срок выпуска 
нового продукта или новой функции часто определяется фразой «как можно 
скорее». Выпустить продукт как можно раньше существенно выгоднее, чем 
выпустить продукт лучшего качества, но позже.
Добро пожаловать в мир 
ORM
Желание изолировать язык базы данных (например, SQL) от разработчиков 
приложений и таким образом упростить им задачу (а также уменьшить по-
требность в навыках работы с базами данных) приводит к появлению про-
граммного обеспечения, преобразующего функции базы данных в объект-
ные методы.
Инструмент
объектно-реляционного
отображения
(ORM) – это программа, которая 
отобра жает объект базы данных в объект приложения в памяти.
Некоторые ORM-разработчики заявляют, что проблема потери соответ-
ствия решена. Объекты однозначно отображаются в таблицы баз данных, 
а структура базы данных, как и сгенерированный для взаимодействия с ней 
SQL, не имеет значения для разработчика приложения. К сожалению, цена 
такого решения – недопустимое снижение производительности.
Как работает объектно-реляционное отображение? Процесс показан на 
рис. 10.2.
1. Приложение разбирает объект на неделимые (скалярные) части.
2. Эти части отправляются в базу данных или из нее по отдельности.


В поисках более подходящего решения 

189
3. База данных использует сложную структуру данных, но все запросы 
выполняются отдельно.
Модель приложения
ORM
JDBC
Плоские 
таблицы
Плоские 
таблицы
Модель базы данных

Download 17,08 Mb.

Do'stlaringiz bilan baham:
1   ...   138   139   140   141   142   143   144   145   ...   210




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish