Čítať v angličtine

Zdieľať cez


Pripojenie k zdrojom údajov SAP HANA pomocou režimu DirectQuery v službe Power BI

K zdrojom údajov SAP HANA sa môžete pripojiť priamo pomocou režimu DirectQuery, ktorý sa často vyžaduje pre veľké množiny údajov, ktoré presahujú dostupné zdroje na podporu modelov importu. Existujú dva prístupy na pripojenie k databáze SAP HANA v režime DirectQuery. Každý z nich má rôzne možnosti:

  • považovať databázu SAP HANA za multidimenzionálny zdroj (predvolené): v tomto prípade je správanie podobné, ako keď sa služba Power BI pripojí k iným multidimenzionálnym zdrojom, napríklad k zdroju SAP Business Warehouse alebo Analysis Services. Keď sa pripojíte k databáze SAP HANA ako k multidimenzionálnemu zdroju, vyberie sa jedno zobrazenie analýzy alebo výpočtu a všetky mierky, hierarchie a atribúty tohto zobrazenia sú k dispozícii v zozname polí. V sémantickom modeli nie je možné pridávať vypočítané stĺpce ani iné prispôsobenia údajov. Pri vytváraní vizuálov sa agregované údaje načítajú priamo z databázy SAP HANA. Považovať databázu SAP HANA za multidimenzionálny zdroj je predvoleným zdrojom nových zostáv DirectQuery prostredníctvom databázy SAP HANA.

  • považovať databázu SAP HANA za relačný zdroj: V tomto prípade služba Power BI považuje databázu SAP HANA za relačný zdroj údajov. Tento prístup ponúka väčšiu flexibilitu. Okrem iného môžete pridať vypočítané stĺpce a zahrnúť údaje z iných zdrojov. Treba však zabezpečiť, aby sa mierky agregovali očakávaným spôsobom. Vyhnite sa mierkam bez pripočítania. Tiež sa uistite, že používate jednoduché zobrazenia s niekoľkými stĺpcami a spojenia, aby ste sa vyhli problémom s výkonom. Zvážte opätovné vytváranie mierok v sémantickom modeli, ale majte na pamäti, že zložité mierky sa nemusia postupne posúvať. Hierarchie SAP HANA nie sú k dispozícii pri použití databázy SAP HANA ako relačného zdroja.

Spôsob pripojenia je určený možnosťou globálneho nástroja, ktorú je možné nastaviť tak, že vyberiete položky SúborMožnosti a nastavenia a potom MožnostiDirectQuery a potom vyberiete možnosť Považovať SAP HANA za relačný zdrojový, ako je to znázornené na nasledujúcom obrázku.

Snímka obrazovky dialógového okna Možnosti zobrazujúca možnosti režimu DirectQuery.

Možnosť považovať databázu SAP HANA za relačný zdroj ovláda metódu pripojenia pre všetky nové zostavy používajúc režim DirectQuery cez SAP HANA. Nemá žiadny vplyv na existujúce pripojenia databázy SAP HANA v aktuálnej zostave, ani na pripojenia v žiadnych ďalších otvorených zostavách. Ak táto možnosť v súčasnosti nie je začiarknutá, po pridaní nového pripojenia k databáze SAP HANA pomocou funkcie získať údaje, toto pripojenie považuje databázu SAP HANA za multidimenzionálny zdroj. Ak je však otvorená iná zostava, ktorá sa tiež pripája k databáze SAP HANA, táto zostava sa naďalej správa podľa možnosti, ktorá bola nastavená v čase vytvorenia. To znamená, že všetky zostavy, ktoré sa pripájajú k databáze SAP HANA ako relačnému zdroju, naďalej považujú databázu SAP HANA za relačný zdroj, aj keď táto možnosť nie je začiarknutá.

Tieto dve metódy pripojenia databázy SAP HANA predstavujú odlišné správanie a nie je možné prepnúť existujúcu zostavu z jednej metódy pripojenia na druhú.

Považovať databázu SAP HANA za multidimenzionálny zdroj (predvolené)

Všetky nové pripojenia k databáze SAP HANA predvolene používajú tento spôsob, priom ktorým považujú databázu SAP HANA za multidimenzionálny zdroj. Pri pripájaní k databáze SAP HANA ako multidimenzionálnemu zdroju platia nasledujúce informácie:

  • Na získať údaje navigátorje možné vybrať jedno zobrazenie databázy SAP HANA. Nie je možné vybrať jednotlivé mierky alebo atribúty. V čase pripojenia nie je definovaný žiadny dotaz, čo je rozdielom oproti importu údajov alebo použitiu režimu DirectQuery, keď sa SAP HANA považuje za relačný zdroj. Toto hľadisko tiež znamená, že pri výbere tohto spôsobu pripojenia nie je možné priamo použiť dotaz SQL databázy SAP HANA.

  • Všetky mierky, hierarchie a atribúty vybratého zobrazenia sa zobrazujú v zozname polí.

  • Keď je mierka použitá vo vizuáli, databáza SAP HANA je dotazovaná na načítanie hodnoty mierky na úrovni agregácie potrebnej pre vizuál. Pri práci s mierkami bez pripočítania, ako sú napríklad počítadlá a pomery, všetky agregácie vykonáva databáza SAP HANA a služba Power BI nevykonáva žiadnu ďalšiu agregáciu.

  • Ak chcete zabezpečiť, aby bolo vždy možné získať z databázy SAP HANA správne agregované hodnoty, je potrebné zaviesť určité obmedzenia. Nie je napríklad možné pridať vypočítané stĺpce alebo kombinovať údaje z viacerých zobrazení databázy SAP HANA v rámci tej istej zostavy. Nie je tiež možné odstrániť stĺpce alebo zmeniť ich typy údajov.

Považovať databázu SAP HANA za multidimenzionálny zdroj ponúka menšiu flexibilitu ako alternatívna prístupu relačných, ale je to priamočiarejšie. Táto metóda pripojenia zaručuje správne agregované hodnoty pri práci so zložitejšími mierkami databázy SAP HANA a vo všeobecnosti má za následok vyšší výkon.

Zoznam Field obsahuje všetky mierky, atribúty a hierarchie zo zobrazenia databázy SAP HANA. Všimnite si nasledujúce správanie, ktoré sa uplatňuje pri použití tohto spôsobu pripojenia:

  • Každý atribút zahrnutý aspoň v jednej hierarchii je predvolene skrytý. V prípade potreby ich však možno zobraziť výberom položky Zobraziť skryté z kontextovej ponuky v zozname polí. Z tej istej kontextovej ponuky môžu byť v prípade potreby viditeľné.

  • V databáze SAP HANA je možné definovať atribút tak, že ako svoje označenie použije iný atribút. Napríklad Produkt s hodnotami 1, 2, 3atď. Môžu ako svoje označenie použiť NázovProduktus hodnotami Bike, Shirt, Glovesatď. V tomto prípade sa v zozname polí zobrazí jedno pole Produkt, ktorého hodnotami sú označenia Bike, Shirt, Glovesatď., ale ktoré sú zoradené podľa a s jedinečnosťou určenou podľa kľúčových hodnôt 1, 2, 3. Vytvorí sa tiež skrytý stĺpec Product.Key, ktorý v prípade potreby umožní prístup k základným hodnotám kľúčov.

Všetky premenné definované v základnom zobrazení databázy SAP HANA sa zobrazujú v čase pripojenia a je možné zadať potrebné hodnoty. Tieto hodnoty je možné neskôr zmeniť tak, že na páse s nástrojmi vyberiete položku Transformovať údaje a potom v zobrazenej rozbaľovacej ponuke Upraviť parametre.

Povolené operácie modelovania sú prísnejšie ako vo všeobecnom prípade použitia režimu DirectQuery, pretože je potrebné zabezpečiť, aby bolo vždy možné získať z databázy SAP HANA správne agregované údaje. Stále je však možné vykonať niekoľko doplnení a zmien vrátane definovania mierok, premenovania a skrytia polí a definovania formátov zobrazenia. Všetky takéto zmeny sa pri obnovení zachovajú a všetky nekonfliktné zmeny zobrazenia databázy SAP HANA sa použijú.

Ďalšie obmedzenia modelovania

Okrem vyššie uvedených obmedzení si uvedomte aj nasledujúce obmedzenia modelovania pri pripájaní k databáze SAP HANA ako multidimenzionálnemu zdroju:

  • Žiadna podpora pre vypočítané stĺpce: Vypnutá možnosť vytvárať vypočítané stĺpce. Táto skutočnosť tiež znamená, že nie je k dispozícii ani zoskupovanie a klastrovanie, ktoré sa spolieha na vypočítané stĺpce.
  • Ďalšie obmedzenia pre mierky: Existujú aj iné obmedzenia stanovené pre výrazy jazyka DAX, ktoré možno použiť v mierkach, aby odrážali úroveň podpory, ktorú ponúka databáza SAP HANA. Nie je napríklad možné použiť na tabuľku agregačnú funkciu.
  • Žiadna podpora pre definovanie vzťahov: V rámci zostavy je možné dotazovať iba jedno zobrazenie, a preto neexistuje žiadna podpora pre definovanie vzťahov.
  • Žiadne zobrazenie tabuľky: zobrazení tabuľky zvyčajne zobrazuje údaje na úrovni podrobností v tabuľkách. Vzhľadom na povahu multidimenzionálnych zdrojov nie je toto zobrazenie k dispozícii, keď sa databáza SAP HANA používa ako multidimenzionálny zdroj.
  • Podrobnosti stĺpcov a mierok sú pevne dané: Stĺpce a mierky v zozname polí sú určované základným zdrojom a nemožno ich upravovať. Nie je napríklad možné odstrániť stĺpec ani zmeniť jeho typ údajov. Dá sa však premenovať.

Ďalšie obmedzenia vizualizácií

Existujú obmedzenia vizuálov pri pripájaní k databáze SAP HANA ako multidimenzionálnemu zdroju:

  • Žiadne agregácie stĺpcov: Nie je možné zmeniť agregáciu pre stĺpec vo vizuáli. Ten je vždy Nezhrnúť.

Považovať databázu SAP HANA za relačný zdroj

Ak sa chcete pripojiť k databáze SAP HANA ako k relačnému zdroju, vyberte položky SúborMožnosti a nastavenia a potom MožnostidirectQuerya potom vyberte možnosť Považovať SAP HANA za relačný zdroj.

Keď používate databázu SAP HANA ako relačný zdroj, k dispozícii je väčšia flexibilita. Môžete napríklad vytvoriť vypočítané stĺpce, zahrnúť údaje z viacerých zobrazení databázy SAP HANA a vytvoriť vzťahy medzi výslednými tabuľkami. Existujú však rozdiely od správania pri pripájaní k databáze SAP HANA ako multidimenzionálnemu zdroju, najmä ak zobrazenie databázy SAP HANA obsahuje mierky bez pripočítania, napríklad jedinečné počty alebo priemery namiesto jednoduchých súčtov. Mierky bez pripočítania môžu spôsobiť nesprávne výsledky. Mierky môžu tiež znížiť efektivitu optimalizácie plánu dotazu v databáze SAP HANA a mať za následok slabý výkon dotazov a časové limity.

Princíp databázy SAP HANA ako relačného zdroja

Je dobré začať objasnením správania relačného zdroja, ako je napríklad SQL Server, keď dotaz definovaný v súbore Získať údaje alebo Editore Power Query vykoná agregáciu. V nasledujúcom príklade dotaz definovaný v Editore Power Query vráti priemernú cenu podľa ProductID.

diagram znázorňujúci dotaz definovaný v Editore Power Query, ktorý vracia priemernú cenu podľa ID produktu.

Ak by sa údaje namiesto použitia režimu DirectQuery importovali do služby Power BI, výsledkom by bola nasledujúca situácia:

  • Údaje sa importujú na úrovni agregácie definovanej dotazom vytvoreným v Editore Power Query. Napríklad priemerná cena podľa produktu. Výsledkom tejto skutočnosti je tabuľka s dvomi stĺpcami PRODUCTID a stĺpcom AveragePrice (PriemernáCena), ktorý je možné použiť vo vizuáloch.
  • Vo vizuáli sa každá ďalšia agregácia, napríklad Sum, Average, Mina ďalšie, uskutoční v rámci týchto importovaných údajov. Napríklad zahrnutie stĺpca AveragePrice do vizuálu predvolene používa agregáciu Sum a vráti súčet AveragePrice (PriemernáCena) pre každý productID (IDProduktu) v tomto príklade 13,67. To isté platí pre všetky alternatívne agregačné funkcie, ako napríklad Min alebo Priemer, použitej vo vizuáli. Napríklad Priemerná hodnoty AveragePrice (PriemernáCena) vráti priemer 6,66, 4 a 3, ktorý sa rovná 4,56, a nie priemer Price na šesť záznamov v základnej tabuľke, čo je 5,17.

Ak sa použije režim DirectQuery pre ten istý relačný zdroj namiesto funkcie Importovať, použije sa rovnaká sémantika a výsledky budú presne rovnaké:

  • Keďže dotaz je rovnaký, logicky sa vrstve zostavy odovzdajú presne tie isté údaje – aj keď sa tieto údaje v skutočnosti neimportujú.

  • Vo vizuáli sa každá ďalšia agregácia, napríklad Sum, Averagea Min, znova uskutoční v rámci tejto logickej tabuľky z dotazu. A znova, vizuál obsahujúci priemernústĺpca AveragePrice (PriemernáCena) vráti rovnaký výsledok 4,56.

Databázu SAP HANA považujte za relačný zdroj, ak sa pripojenie považuje za relačný zdroj. Služba Power BI môže pracovať so analytickými zobrazeniami a výpočtovými zobrazeniami v databáze SAP HANA, ktoré môžu obsahovať mierky. Napriek tomu sa súčasný prístup k databáze SAP HANA riadi rovnakými zásadami, ako je popísané vyššie v tejto časti: dotaz definovaný v Získať údaje alebo v Editore Power Query určuje dostupné údaje a potom všetky následné agregácie vo vizuáli budú v rámci týchto údajov a to isté platí pre režim importu aj režim DirectQuery. Vzhľadom na povahu databázy SAP HANA je však dotaz definovaný v počiatočnom funkcie Získať údaje dialógovom okne alebo editora Power Query je vždy agregačným dotazom a vo všeobecnosti zahŕňa mierky, v ktorých sú skutočné agregácie, ktoré používajú, definované zobrazením databázy SAP HANA.

Ekvivalentom predchádzajúceho príkladu s SQL Serverom je zobrazenie databázy SAP HANA obsahujúce ID, IDProduktu , IDSkladu a mierky vrátane AveragePrice (PriemernáCena) definovanú v zobrazení ako Average of Price.

Ak bola v možnosť Získať údaje, výbery pre productID a mierku AveragePrice, ktorá definuje dotaz v zobrazení a žiada tieto agregované údaje. V predchádzajúcom príklade sa pre jednoduchosť používa jazyk pseudo-SQL, ktorý nezodpovedá presnej syntaxi jazyka SQL databázy SAP HANA. Všetky ďalšie agregácie definované vo vizuáli potom ďalej agregujú výsledky takéhoto dotazu. Opäť platí, že ako bolo popísané vyššie pre SQL Server, tento výsledok sa vzťahuje aj na prípad Importovať aj Režim DirectQuery. V prípade režimu DirectQuery sa dotaz z Získať údaje alebo z Editora Power Query použije v podvýbere v rámci jedného dotazu odoslaného do databázy SAP HANA, a teda v skutočnosti sa nenačítajú všetky údaje pred ďalšou agregáciou.

Všetky tieto informácie a druhy správania vyžadujú nasledujúce dôležité informácie, ktoré je potrebné zvážiť pri používaní režimu DirectQuery s databázou SAP HANA ako relačného zdroja:

  • Treba venovať pozornosť každej ďalšej agregácii vykonávanej vo vizuáloch vždy, keď je mierka v databáze SAP HANA bez pripočítania, napríklad nie na jednoduchú Sum, Minalebo Max.

  • V Získať údaje alebo Editore Power Query by sa na získanie potrebných údajov mali zahrnúť iba požadované stĺpce vzhľadom na skutočnosť, že výsledkom je dotaz, ktorý musí byť primeraným dotazom, ktorý je možné odoslať do databázy SAP HANA. Ak by napríklad boli vybraté desiatky stĺpcov, pretože možno budú potrebné v ďalších vizuáloch, potom by aj pre režim DirectQuery jednoduchý vizuál znamená, že agregovaný dotaz použitý v podvýbere obsahuje tieto desiatky stĺpcov, ktoré vo všeobecnosti majú slabý výkon a môžu sa vyskytnúť časové limity.

V nasledujúcom príklade vyberiete päť stĺpcov (CalendarQuarter, Color, LastName, ProductLine , SalesOrderNumber) v dialógovom okne Získať údaje. spolu s mierkou OrderQuantity znamená, že neskôr sa vytvorením jednoduchého vizuálu obsahujúceho min orderquantity vytvorí nasledujúci dotaz SQL do databázy SAP HANA. Podfarbená časť je podvýber obsahujúci dotaz z Získať údaje/Editor Power Query. Ak je po tomto podvýbere vysoká kardinalita, výsledný výkon databázy SAP HANA bude pravdepodobne veľmi slabý alebo bude mať za následok časové limity. Vplyv na výkon nie je spôsobený tým, že služba Power BI požaduje všetky polia v podvýbere, ale preto, že služba Power BI požaduje všetky polia v podvýbere, je to dôležité. väčšina z týchto polí sa premieta do vonkajšieho dotazu. Tento vplyv je skôr spôsobený tým, že mierky v podvýbere ho nútia, aby sa realizoval na serveri Hana.

Snímka obrazovky príkladu dotazu zobrazujúca dotaz SQL na SAP HANA.

Vzhľadom na toto správanie odporúčame, aby boli položky vybraté vo možnosti Získať údaje alebo v Editore Power Query obmedzené na tie položky, ktoré sú potrebné, a zároveň aj tak vedú k primeranému dotazu pre databázu SAP HANA. Ak je to možné, zvážte opätovné vytvorenie všetkých požadovaných mierok v sémantickom modeli a skôr použitie databázy SAP HANA ako tradičného relačného zdroja.

Najvhodnejšie postupy

V prípade oboch metód na pripojenie k databáze SAP HANA dodržiavajte všeobecné odporúčania na používanie režimu DirectQuery, najmä odporúčania súvisiace so zabezpečením dobrého výkonu dotazov. Ďalšie informácie nájdete v používaní režimu DirectQuery v aplikácii Power BI.

Dôležité informácie a obmedzenia

V nasledujúcom zozname sú popísané všetky funkcie SAP HANA, ktoré nie sú úplne podporované, alebo funkcie, ktoré sa správajú inak pri používaní služby Power BI.

  • hierarchie typu nadradený-podriadený: hierarchie typu nadradený-podriadený sa v službe Power BI nezobrazujú. Je to preto, lebo služba Power BI pristupuje k databáze SAP HANA pomocou rozhrania SQL a hierarchie typu nadradený-podriadený nie sú plne prístupné pomocou SQL.
  • Ďalšie metaúdaje hierarchie: V službe Power BI sa zobrazuje základná štruktúra hierarchií, ale niektoré metaúdaje hierarchie, ako napríklad kontrola správania nepravidelných hierarchií, nemajú žiadny vplyv. Opäť je to z dôvodu obmedzení stanovených rozhraním SQL.
  • pripojenie pomocou protokolu SSL: môžete sa pripojiť pomocou importu a multidimenzionálne s protokolom TLS, ale nemôžete sa pripojiť k inštanciám DATABÁZY SAP HANA nakonfigurovaným na používanie protokolu TLS pre metódu relačného pripojenia.
  • Podpora pre zobrazenia atribútov: služba Power BI sa môže pripojiť k zobrazeniam analýzy a výpočtu, ale nemôže sa pripojiť priamo k zobrazeniam atribútov.
  • podpora pre objekty katalógu: služba Power BI sa nemôže pripojiť k objektom katalógu.
  • Zmeniť na premenné po publikovaní: Po publikovaní zostavy nie je možné zmeniť hodnoty premenných SAP HANA priamo v službe Power BI.

Známe problémy

V nasledujúcom zozname sa popisujú všetky známe problémy pri pripájaní k databáze SAP HANA (DirectQuery) pomocou služby Power BI.

  • problém databázy SAP HANA pri dotaze na počítadlá a ďalšie mierky: Z databázy SAP HANA sa vrátia nesprávne údaje, ak sa pripájate k analytickému zobrazeniu a ten istý vizuál obsahuje mierku počítadla a ďalšiu mierku pomeru. Tento problém je popísaný poznámku 2128928 (Neočakávané výsledky pri dotaze na vypočítaný stĺpec a počítadlo). Mierka pomeru je v tomto prípade nesprávna.

  • viacerých stĺpcov služby Power BI z jedného stĺpca databázy SAP HANA: V prípade niektorých zobrazení výpočtu, kde sa stĺpec databázy SAP HANA používa vo viacerých hierarchiách, sa databáza SAP HANA zobrazí ako dva samostatné atribúty. Výsledkom tohto prístupu je vytvorenie dvoch stĺpcov v službe Power BI. Tieto stĺpce sú však predvolene skryté a všetky dotazy týkajúce sa hierarchií alebo priamo stĺpcov sa správajú správne.

Ďalšie informácie o režime DirectQuery získate v nasledujúcich zdrojoch: