Gegevens ophalen uit een NoSQL-database
Sommige organisaties gebruiken geen relationele database, maar in plaats daarvan een NoSQL-database . Een NoSQL-database (ook wel niet-SQL genoemd, niet alleen SQL of niet-relationeel) is een flexibel type database dat geen tabellen gebruikt om gegevens op te slaan.
Scenario
Softwareontwikkelaars bij Tailwind Traders hebben een toepassing gemaakt voor het beheren van verzending en het bijhouden van producten vanuit hun magazijnen. De toepassing gebruikt Cosmos DB, een NoSQL-database, als de gegevensopslagplaats. Gegevens worden opgeslagen als JSON-documenten. Dit zijn open standaardbestandsindelingen die voornamelijk worden gebruikt voor het verzenden van gegevens tussen een server en een webtoepassing. U moet deze gegevens importeren in een semantisch Power BI-model voor rapportage.
Verbinding maken met een NoSQL-database (Azure Cosmos DB)
In dit scenario gebruikt u de functie Gegevens ophalen in Power BI Desktop. Deze keer selecteert u echter de optie Meer... om het type database dat u gebruikt te zoeken en er verbinding mee te maken. In dit voorbeeld selecteert u de categorie Azure , selecteert u Azure Cosmos DB en selecteert u vervolgens Verbinding maken.
Selecteer in het venster Preview-connectorde optie Doorgaan en voer vervolgens uw databasereferenties in. In dit voorbeeld kunt u in het Azure Cosmos DB-venster de databasedetails invoeren. U kunt de eindpunt-URL van het Azure Cosmos DB-account opgeven waaruit u de gegevens wilt ophalen (u kunt de URL ophalen op de blade Sleutels van uw Azure Portal). U kunt ook de naam van de database en de verzameling opgeven of de navigator gebruiken om de database en verzameling te selecteren om de gegevensbron te identificeren.
Als u voor het eerst verbinding maakt met een eindpunt, zoals in dit voorbeeld, moet u uw accountsleutel invoeren. U vindt deze sleutel in het vak Primaire sleutel op de blade Alleen-lezen sleutels van uw Azure Portal.
Een JSON-bestand importeren
Als u werkt met gegevens die zijn opgeslagen in JSON-indeling, is het vaak nodig om de gegevens eerst te extraheren en te normaliseren. Dit komt doordat JSON-gegevens vaak worden opgeslagen in een geneste of ongestructureerde indeling, waardoor het moeilijk is om rechtstreeks te analyseren of te rapporteren.
In dit voorbeeld moeten de gegevens worden geëxtraheerd en genormaliseerd voordat u erover kunt rapporteren. Daarom moet u de gegevens transformeren voordat u deze in Power BI Desktop laadt.
Nadat u verbinding hebt gemaakt met het databaseaccount, wordt het venster Navigator geopend, met een lijst met databases onder dat account. Selecteer de tabel die u wilt importeren. In dit voorbeeld selecteert u de tabel Product. In het voorbeeldvenster worden alleen Record-items weergegeven, omdat alle records in het document worden weergegeven als het type Record in Power BI.
Selecteer de knop Bewerken om de records in Power Query te openen.
Selecteer in Power Query de knop Uitvouwen rechts van de kop Kolom1, waarmee het contextmenu met een lijst met velden wordt weergegeven. Selecteer de velden die u in Power BI Desktop wilt laden, schakel het selectievakje Oorspronkelijke kolomnaam als voorvoegsel gebruiken uit en selecteer vervolgens OK.
Controleer de geselecteerde gegevens om er zeker van te zijn dat u tevreden bent en selecteer vervolgens Sluiten & Toepassen om de gegevens in Power BI Desktop te laden.
De gegevens lijken nu op een tabel met rijen en kolommen. Gegevens uit Cosmos DB kunnen nu worden gerelateerd aan gegevens uit andere gegevensbronnen en kunnen uiteindelijk worden gebruikt in een Power BI-rapport.