8 Praca z połączeniami i źródłami danych

Wiele operacji wymaga nawiązania połączenia ze źródłem danych zewnętrznym względem kostki. Można to zrealizować skutecznie, korzystając z połączeń i źródeł danych, które są tworzone i zapisywane w Oracle Essbase jako obiekty wielokrotnego użytku.

Na przykład można skonfigurować partycję między kostką a tabelami RDBMS, udostępniać dane między kostką i Oracle Database, tworzyć filtry zabezpieczeń (z użyciem zmiennych) do pobierania nazw elementów lub nazw użytkowników z odległych danych źródłowych oraz ładować dane z punktów końcowych REST API.

Wiele operacji związanych z kostkami wymaga informacji o połączeniu, takich jak szczegóły logowania, pozwalających uzyskać dostęp do odległych hostów lub danych źródłowych. Połączenia te i źródła danych można zdefiniować raz, a następnie używać ich w różnych operacjach, tak że — wykonując jakieś zadanie — nie trzeba za każdym razem określać szczegółów.

Zapisane połączenia i źródła danych można implementować globalnie lub dla poszczególnych aplikacji. Takie rozwiązanie ułatwia następujące operacje:

  • Ładowanie wymiarów i danych

  • Importowanie kostek

  • Definiowanie filtrów zabezpieczeń z użyciem zmiennych

  • Łączenie kostek za pomocą partycji i uzyskiwanie danych w czasie rzeczywistym

  • Drążenie skrośne do odległych źródeł danych

Mając łączność sieciową między zewnętrznym źródłem danych a Essbase, można zdefiniować połączenia i źródła danych w Essbase, aby z łatwością ściągać dane ze źródła zewnętrznego. Nie mając łączności sieciowej między Essbase a zewnętrznym źródłem danych, należy strumieniować ładowanie danych lub konstruowanie wymiarów danych, używając narzędzia CLI: najpierw tworząc połączenie lokalne, a następnie uruchamiając polecenie dataload lub dimbuild z opcją strumieniowania.

Połączenie przechowuje informacje o zewnętrznym serwerze i uwierzytelnieniach logowania, wymaganych do uzyskania dostępu. Definiując połączenie, które może być używane w wielu procesach i artefaktach, upraszcza się wiele aspektów wykonywanych analiz. Na przykład, gdy trzeba będzie zmienić hasło do systemu, wystarczy zaktualizować tylko jedno połączenie.


Źródła globalne > interfejs Połączenia. Zostały utworzone następujące połączenia: 1) Nazwa: Essbase2; typ: Essbase; opis: Connection to second Essbase instance. 2) Nazwa: Oracle Database; typ: Oracle Database; opis: Connection to Oracle PDB. 3) Nazwa: UserDetails; typ: File; opis: CSV file of user details

Źródło danych to kolejny obiekt, który definiuje się raz i którego można wielokrotnie używać, pomagający zarządzać przepływem danych do/z używanych kostek. Można zdefiniować źródło danych, reprezentujące dowolne zewnętrzne źródło danych, którym może być np. system relacyjny, tabela, plik lub inna kostka.


Źródła > interfejs Źródła danych w interfejsie internetowym Essbase. Zostały utworzone następujące globalne źródła danych: 1) Nazwa: Essbase2_Datasource; połączenie: Essbase 2; 2) Nazwa: OracleDB_Datasource; połączenie: Oracle Database; 3) Nazwa: UserDetails_Datasource; połączenie: UserDetails.

Można zdefiniować jedno połączenie i używać go do uzyskiwania dostępu do wielu źródeł danych. Na przykład może być używany serwer Oracle Database, zawierający osobne tabele dla produktów, odsprzedawców i regionów sprzedaży. Do uzyskania dostępu do bazy danych Oracle jest potrzebne tylko jedno połączenie, lecz można utworzyć różne źródła danych i uzyskiwać dostęp do różnych tabel.

Przykładowy przypadek użycia, w którym można zdefiniować kilka źródeł danych dla jednego połączenia: jeśli do tworzenia wymiaru w kostce zostaną użyte osobne reguły ładowania, to każdy plik reguł można skonfigurować tak, aby był uzyskiwany dostęp do odpowiedniej tabeli w bazie danych Oracle. Na przykład kostka zawiera wymiar Market, a użytkownik regularnie konstruuje wymiary, używając reguły ładowania Dim_Market do wypełnienia wymiaru Market danymi z tabeli SALES_TERRITORIES. Analogicznie, użytkownik wypełnia wymiar Product danymi z tabeli PRODUCT, korzystając z reguły ładowania Dim_Product. Obie reguły ładowania mogą używać tego samego połączenia, lecz — ponieważ pobierają dane z osobnych tabel — zostały zdefiniowane dwa różne źródła danych.

Wcześniej trzeba było trwale kodować szczegóły połączenia i źródła danych w artefaktach Essbase, takich jak pliki reguł, aliasy lokalizacji i partycje. Mimo że trwałe kodowanie informacji jest nadal obsługiwane dla tych artefaktów, to można jednak pracować skuteczniej, definiując połączenia i źródła danych globalnie (lub na poziomie aplikacji).