У нас есть наши витрины/хранилища данных на Oracle 11g, реализованные в виде звездной схемы. Бизнес-отчеты создаются с использованием OBIEE. Я исхожу из опыта ETL и имею очень мало знаний в OBIEE.Настройка OBIEE сгенерированных запросов SELECT
После разработки OBIEE RPD я вижу, что OBIEE начинает генерировать запросы SELECT в фоновом режиме для подачи данных в отчеты. Во многих случаях я заметил, что запросы SELECT не оптимизированы (большая таблица фактов полностью сканируется более одного раза в отдельных предложениях WITH).
Когда производительность отчета плохая, запросы OBIEE отправляются в команду ETL для настройки производительности. Я смущен тем, как я могу их настроить, потому что они сгенерированы автоматически. Я знаю, что есть возможность писать пользовательский sql в OBIEE (без прохождения через RPD) для каждого отчета, но наши стандарты этого не позволяют, и я также думаю, что он не использует преимущества OBIEE.
У кого-нибудь возникли проблемы, как указано выше? Как настроить такие запросы?
Thanks Roger. Да, я понимаю, что план выполнения может быть проанализирован, и любой индекс может быть добавлен для повышения производительности. Что делать, если OBIEE сгенерированный запрос плох, есть ли способ справиться с этим? – museshad
Я не знаком с OBIEE, но я сделал много реляционного сопоставления объектов из Java в Oracle. В этом случае сопоставитель O-R иногда генерирует плохой исполняемый SQL со сложными условиями соединения. Чтобы решить в этих случаях, я обычно создавал настроенное представление соединения на стороне Oracle, а затем сопоставлял его. Преимущество стороны заключалось в том, что если бы мне нужно было настроить запрос в будущем, мне не нужно было касаться стороны приложения, только стороны Oracle. Я думаю, что одна и та же концепция может быть использована в OBIEE, где пользовательский запрос создается против представления, а не из базовых таблиц. –
Спасибо Роджер. Существует способ написать собственный SQL (как и ваши представления) в OBIEE, но это, как правило, не является хорошей практикой, поскольку после этого вы можете делать другие оптимизации RPD (например: применение статистических функций) в OBIEE. – museshad