Azure Cosmos DB v2 (beeta)
Yhteenveto
Kohde | Kuvaus |
---|---|
Julkaisutila | Beeta |
Tuotteet | Power BI (semanttiset mallit) Power BI (tietovuot) Fabric (Tietovuo Gen2) |
Tuetut todennustyypit | Syöteavain |
Edellytykset
- Azure Cosmos DB - tili.
Tuetut toiminnot
- Tuo
- DirectQuery (semanttiset Power BI -mallit)
- Lisäasetukset
- Uudelleentettujen tilojen määrä
- Ota käyttöön AVERAGE-funktio Passdown
- Sort-väliajon ottaminen käyttöön useille sarakkeille
Yhdistä Azure Cosmos DB:hen
Yhteyden muodostaminen Azure Cosmos DB -tietoihin:
Käynnistä Power BI Desktop.
Valitse Aloitus-välilehdessä Nouda tiedot.
Kirjoita hakuruutuun Cosmos DB v2.
Valitse Azure Cosmos DB v2 (beeta) ja valitse sitten Yhdistä.
Anna Azure Cosmos DB v2 -yhteyssivun Cosmos Endpoint -kohdassa sen Azure Cosmos DB -tilin URI-osoite, jota haluat käyttää. Valitse Tietoyhteys-tilassa käyttötapauksellesi sopiva tila seuraavien yleisten ohjeiden mukaisesti:
Valitse pienemmissä tietojoukoissa Tuo. Tuontitilaa käytettäessä Power BI tuo Cosmos DB:n kanssa visualisoinneissa käytettävän koko tietojoukon sisällön.
DirectQuery-tila mahdollistaa kyselyn työntämisen Cosmos DB -säilöön suorittamista varten ja parantaa liittimen suorituskykyä. Osioiduissa Cosmos DB -säilöissä välitetään koostefunktiolla varustettu SQL-kysely Cosmos DB:hen, jos kysely sisältää myös osion avaimen suodattimen (WHERE-lauseen). Jos osion avaimeksi on määritetty esimerkiksi "Tuote", sql-kysely, joka voidaan välittää ja suorittaa Cosmos DB -palvelimessa, voi olla seuraava:
SELECT SUM(ColumnName) FROM TableName where Product = 'SampleValue'
Muistiinpano
Käytä Azure Synapse Link for Azure Cosmos DB:tä, jos haluat suorittaa ristiin osioituja koostefunktioita Cosmos DB -säilössä.
Lisätietoja:
Anna tietolähteen todentamisen määrityskehotteessa Tiliavain. Valitse Yhdistä. Tietohakemisto, tietokannat ja taulukot näkyvät Siirtymistoiminto-valintaikkunassa.
Valitse Näyttöasetukset-ruudussa sen tietojoukon valintaruutu, jota haluat käyttää.
Optimaalinen tapa määrittää osion avaimen suodatin (jotta koostefunktiot voidaan siirtää Cosmos DB:hen) on käyttää dynaamisia M-parametreja. Jos haluat käyttää dynaamisia M-parametreja, luo tietojoukko, jolla on yksilöivät osion avainarvot, luo parametri, lisää se suodattimena päätietojoukkoon, sido se yksilölliseen osioavaintietojoukkoon ja käytä sitä päätietojoukon osittajana. Seuraavien vaiheiden avulla voit ottaa käyttöön dynaamiset M-parametrit osion avaimen suodatusta varten.
a. Luo tietojoukko, jossa on yksilöiviä osion avainarvoja:
Tuo Power Query -editori näkyviin valitsemalla siirtymistoiminnossa Muunna tiedot Lataa-toiminnon sijaan. Napsauta hiiren kakkospainikkeella kyselyiden tietojoukkoa ja valitse sitten Monista luodaksesi uuden tietojoukon.
Anna uudelle osion avainmallille uusi nimi ja napsauta sitten Cosmos DB -osion avainsaraketta hiiren kakkospainikkeella. Tässä esimerkissä Product on Cosmos DB -osion avainsarake. Valitse Poista muut sarakkeet ja valitse sitten Poista kaksoiskappaleet.
b. Dynaamisen suodatuksen parametrin luominen:
Valitse Power Query -editorissa Parametrien>hallinta Uusi parametri. Nimeä uusi parametri uudelleen vastaamaan suodatinparametria ja anna kelvollinen arvo nykyiseksi arvoksi.
c. Parametrisoidun suodattimen käyttö päätietojoukossa:
Valitse Osion avain -sarakkeen avattavan valikon kuvake ja valitse sitten Tekstisuodattimet>on yhtä suuri kuin. Muuta suodatintyyppi tekstistä parametriksi. Valitse sitten vaiheessa b luotu parametri. Valitse Power Query -editorin vasemmasta yläkulmasta Sulje ja käytä .
d. Osion avainarvojen osittajan luominen parametrin sidonnalla:
Valitse Power BI:ssä Malli-välilehti. Valitse sitten Osion avain -kenttä. Valitse Ominaisuudet-ruudusta Lisäsi>sido parametriin. Valitse vaiheessa b luotu parametri.
Valitse Raportti-välilehti ja lisää osittaja, jolla on yksilöivä osion avain.
e. Visualisointien lisääminen ja osion avain -suodattimen käyttäminen osittajasta:
Koska osittajan valittu osion avainarvo on sidottu parametriin (kuten vaiheessa d) ja parametrisoitua suodatinta käytetään päätietojoukossa (kuten vaiheessa c), valittua osion avainarvoa käytetään suodattimena päätietojoukossa ja osion avainsuodatinta käyttävä kysely välitetään Cosmos DB:hin kaikissa visualisoinneissa.
Lisäasetukset
Power Query tarjoaa joukon lisäasetuksia, joita voit tarvittaessa lisätä kyselyyn.
Seuraavassa taulukossa on luettelo kaikista lisäasetuksista, joita voit määrittää Power Queryssa.
Lisäasetus | Kuvaus |
---|---|
Uudelleentettujen tilojen määrä | Kuinka monta kertaa uudelleen yritetään, jos HTTP-palautuskoodeja 408 - Request Timeout on , 412 - Precondition Failed tai 429 - Too Many Requests . Uudelleenyhteyksien oletusmäärä on 5. |
OTA AVERAGE-funktion Passdown käyttöön | Määrittää, salliiko liitin AVG-koostefunktion siirtämisen Cosmos DB:hen. Oletusarvo on 1, ja liitin yrittää siirtää AVG-koostefunktion oletusarvoisesti Cosmos DB:hen. Jos argumentti sisältää merkkijono-, totuusarvo- tai tyhjäarvoja AVG-koostefunktiolle, Cosmos DB -palvelin palauttaa määrittämättömän tulosjoukon. Kun arvona on 0, AVG-koostefunktiota ei välitetä Cosmos DB -palvelimeen, ja liitin käsittelee AVG-koostetoiminnon itse. |
Sort Passdown -toiminnon ottaminen käyttöön useille sarakkeille | Määrittää, salliiko liitin useiden sarakkeiden siirtämisen Cosmos DB:hen SQL-kyselyn ORDER BY -lauseessa määritetyllä tavalla. Oletusarvo on 0, ja jos ORDER BY -lauseessa on määritetty useampi kuin yksi sarake, liitin ei oletusarvoisesti välitä sarakkeita ja sen sijaan käsittelee tilauksen yksinään. Kun arvoksi on asetettu 1, liitin yrittää välittää useita sarakkeita Cosmos DB:hen, jos se on määritetty SQL-kyselyn ORDER BY -lauseessa. Jos haluat sallia useiden sarakkeiden siirtämisen Cosmos DB:hen, varmista, että kyseisten kokoelmien sarakkeisiin on määritetty yhdistelmäindeksit. Osioitujen kokoelmien osalta SQL-kysely, jossa on ORDER BY, välitetään Cosmos DB:hen vain, jos kysely sisältää suodattimen osioidussa avaimella. Lisäksi jos ORDER BY -lauseessa on määritetty enemmän kuin kahdeksan saraketta, liitin ei läpäise ORDER BY -lausetta ja sen sijaan käsittelee itse järjestyksen. |
Tunnetut ongelmat ja rajoitukset
Osioiduissa Cosmos DB -säilöissä välitetään koostefunktiolla varustettu SQL-kysely Cosmos DB:hen, jos kysely sisältää myös osion avaimen suodattimen (WHERE-lauseen). Jos koostekysely ei sisällä suodatinta osion avaimessa, liitin suorittaa koosteen.
Liitin ei siirrä koostefunktiota, jos sitä kutsutaan TOP- tai LIMIT-funktion käyttöönoton jälkeen. Cosmos DB käsittelee TOP-toiminnon lopussa kyselyä käsiteltäessä. Esimerkiksi seuraavassa kyselyssä alikyselyssä käytetään TOP-funktiota, kun taas koostefunktiota käytetään tämän tulosjoukon päällä:
SELECT COUNT(1) FROM (SELECT TOP 4 * FROM EMP) E
Jos koostefunktiossa on DISTINCT-arvo, liitin ei siirrä koostefunktiota Cosmos DB:hen, jos koostefunktiossa on DISTINCT-lause. Cosmos DB SQL -ohjelmointirajapinta ei tue DISTINCT-funktiota koostefunktiossa.
SUM-koostefunktiolle Cosmos DB palauttaa määrittämättömän tulosjoukon, jos jokin SUM-funktion argumenteista on merkkijono, totuusarvo tai tyhjäarvo. Jos kuitenkin tyhjäarvoja on, liitin välittää kyselyn Cosmos DB:hen siten, että se pyytää tietolähdettä korvaamaan tyhjäarvon nollalla osana SUM-laskelmaa.
Cosmos DB palauttaa AVG-koostefunktiolle määrittämättömän tulosjoukon, jos jokin SUM-funktion argumenteista on merkkijono, totuusarvo tai tyhjäarvo. Liitin näyttää yhteysominaisuuden, joka estää AVG-koostefunktion siirtämisen Cosmos DB:hen, jos tämä cosmos DB -oletustoiminta on ohitettava. Kun AVG-läpivienti on poistettu käytöstä, sitä ei välitetä Cosmos DB:hen, ja liitin käsittelee AVG-koostamistoiminnon itse. Lisätietoja on lisäasetusten kohdassa Ota AVERAGE-funktio käyttöön Passdown.
Azure Cosmos DB -säilöjä, joissa on suuri osion avain, ei tällä hetkellä tueta liittimessä.
Koosteen välitys on poistettu käytöstä seuraavalle syntaksille palvelinrajoitusten vuoksi:
Kun kysely ei suodata osion avainta tai kun osion avainsuodatin käyttää OR-operaattoria toisella predikaatin avulla WHERE-lauseen ylimmällä tasolla.
Kun kyselyssä on yksi tai useampi osion avain, ne näkyvät WHERE-lauseen IS NOT NULL -lauseessa.
V2-liitin ei tue monimutkaisia tietotyyppejä, kuten matriiseja, objekteja ja hierarkkisia rakenteita. Suosittelemme Fabric Mirroring for Azure Cosmos DB -ominaisuutta näihin tilanteisiin.
V2-liitin käyttää 1 000 ensimmäisen asiakirjan näytteenottoa johdettuun rakenteeseen. Rakenteen kehitysskenaarioita varten ei suositella, kun vain osa asiakirjoista päivitetään. Esimerkiksi äskettäin lisättyä ominaisuutta yhteen asiakirjaan säilössä, joka sisältää asiakirjojen jäännöksiä, ei ehkä käsitellä johdettuun rakenteeseen. Suosittelemme Fabric Mirroring for Azure Cosmos DB -ominaisuutta näihin tilanteisiin.
Tällä hetkellä V2-liitin ei tue muita kuin merkkijonoarvoja objektin ominaisuuksissa.
Suodattimen läpivienti on poistettu käytöstä seuraavasta syntaksista palvelinrajoitusten vuoksi:
- Kun vähintään yhden koostesarakkeen sisältävään kyselyyn viitataan WHERE-lauseessa.