Database Programming & Design


Гипотетическое финансовое приложение - часть 3


независимо от других баз данных.

К сожалению, чем меньше делается таких изменений, тем большая

нагрузка ложится на программное обеспечение верхнего уровня и тем

более сомнительны перспективы оптимального выполнения. Часто

требуется производить обмен промежуточными результатами между

объектной и реляционной базами данных. Рассмотрим, как будет

выполняться в этих условиях приведенный выше запрос по поводу

бирж. Проверки, относящиеся к столбцам Exchange, Industry,

Earnings можно было бы выполнить в реляционной базе данных.

Вычисления же BETA и %CHANGE в большей степени подходят для

объектной базы данных. Поэтому программное обеспечение верхнего

уровня должно согласовать два набора частичных результатов. В

результате вместо применения простого просмотра файла (возможно,

с использованием индекса) придется использовать соединение.

Предполагается, что внешнее программное обеспечение отвечает за

слияние двух промежуточных наборов результатов и создание общего

результирующего набора данных, возвращаемого прикладной

программе. Очевидно лучшим решением для этого простого случая

было бы заставить реляционную СУБД как можно тщательнее отобрать

подходящие строки, а затем передать эти строки объектной СУБД для

формирования окончательного результата. Дополнительные накладные

расходы этого решения связаны с потребностью сериализации этих

двух операций, включая необходимость передачи сообщений между

двумя СУБД.

А как обстоят дела со столь важным для VLDB распараллеливанием?

Для обеспечения конкурентоспособности федеративной архитектуры

каждая из баз данных должна быть оптимизирована для параллельного

выполнения запросов. Технология распараллеливания в настоящее

время больше развита в области чисто реляционных баз данных, чем

в области чисто объектных баз данных. Многое можно заимствовать,

если объектная модель данных ограничена таблицами, состоящими из

строк и столбцов, как это делается в объектно-реляционных

системах. Однако подобное изменение работающей объектной базы




- Начало -  - Назад -  - Вперед -