Power BI’da Datamart

Herkese merhaba,

Bugün Power BI Service tarafında geçtiğimiz yıl Mayıs ayında gelen bir özellik olan self-service datamart yapısından bahsedeceğim.

Öncelikle datamart oluşturabilmeniz için Power BI Service kullanımınızın olması ve datamart oluşturulacak workspace’in premium olması gerektiği için lisansınızın da premium per user/capacity olması gerektiğini belirtmeliyim.

Datamart, veri ambarı gibi davranan ancak daha küçük hacimli veriyle ve daha az veri kaynağıyla işleyen veriambarı kümeleridir diyebiliriz. Self-service raporlama için pratik analitik çözümler sunar bize. Veriambarı yapısına benzer bir yapıda kurulur ancak ambarındaki kadar detaylı veri tutmak yerine özet ve spesifik veri tutulur. Dolayısıyla da sadece belirli alana özgü datayı içeren bir data modelidir.

Datamart yapsını açıklayacak en basit yapı Kimball’ın starschema (yıldız şema)’sıdır. Bu yapıda transactional datayı tutan bir fact tablosu ve fact tablosuna bağlı referans tablolar yada diğer adıyla dimension tabloları mevcuttur.

Power BI’da şimdiye kadar veri modelini Model tool’u içinde dataset’lerin içinde tanımladık. Bizim dataset diye tanımladığımız aslında tabular modeldeki küpler ancak datamart bir veriambarı kümesi olarak aslında SQL Server DB gibi davranıyor. Bu bağlamda dataset’ler datayı Azure tabular küplerde tutarken datamart datayı Azure SQL server instance üzerinde saklıyor. Ayrıca datamartlar kendi datasetlerini otomatik olarak oluşturabiliyorlar, dolayısıyla Power BI Desktop’da veriyi modelleyip dataset’i publish etmemize gerek kalmadan datamartlar bu işi bizim için yapıyor. (Bu çok güzel bişey)

Şimdi datamart oluşturmadan önce workspace oluşturalım. Bilmeyenler için link bırakıyorum. Gideceğim adres

Power BI Service > Workspace > Create a workspace

Advanced’den lisans modunuzu premium per user/ capacity olarak belirtmeyi unutmayın. Workspace’iniz premium değilse datamart oluşturamazsınız! Workspace’i Save ile kaydediyorum.

Yeni oluşturduğum workspace’in içine kontentleri New ile ekleyebilirim. Dropdown’dan datamartı seçiyorum.

Karşıma çok basit bir ekran çıkıyor, farklı veri kaynakarından veriyi içeri almak için get Data’yı kullanabilirsiniz. Ben datayı hem dataflow’dan hemde excelden alacağım.

Dataflow’dan data alma;

Employees tablosunu içeri aldım, transform data ile veriyi query editörden manipule edebilirsiniz. Böylece datamartta da tıpkı dataset ve dataflowda olduğu gibi ETL için power query’yi kullandığımızıda belirtmiş olalım.

Veriyi transform ettikten sonra save ile kaydediyorum ve Power BI sırasıyla veriyi kaynaktan alıyor, veri dönüştürme işlemlerini gerçekleştiriyor (ETL), tablolar arası ilişki kuruyor ve dönüştürülmüş yeni tablomdaki değerleri SQL veritabanında karşılık gelen bir dizi tabloya dolduruyor.

Veriyi içeri aldıktan sonra gelen ekran bana SQL server datamart database içinde yapılabilecekleri gösteriyor. (Alt menüdeki script’e dikkat)

Datamart üzerinde yapabileceklerinize tab ribbon’dan bakalım.

Get data ile başka kaynaktan veri alabilirim veya kendim enter data ile ara tablo oluşturabilirim. Mesela lokalimden Lokasyon adlı bir dosya import ettim. Model’den bakabilirim.

Dikkat etmeniz gereken ilişkiler Power BI Dekstop’daki gibi otomatik olarak getirilmiyor. Burda ilişkileri ya T-SQL sorgularıyla yada ilgili kolonları sürükle bırakla açılan ilişki penceresinden yönetiyoruz. Böylece yıldız şemasını oluşturabilirsiniz. (Benim örneğimde yıldız oluşturacak kadar dim table’ım yok maalesef)

Transform data: query editorden seçili tabo için ETL’de devam edebilirim.

New query ile TSQL sorgusu oluşturabilirsiniz. Sorgularınız object pane’de otomatik olarak kaydediliyor.

New Measure: DAX ile measure oluşturabilirim.

Manage roles RLS uygulayabilir böylece gruplar veya kişiler üzerinde datanın görünmesini kısıtlayabilirsiniz.

Veri modelleme ve ilişkilendirme bittiğinde workspace’e dönüp datamart ve datasete bakabilirim.

Datamart üç noktayı tıkladığımda datmart yönetimini, izinlerini, yenilenme loglarını kontrol edebilirim. Create report ile rapor oluşturabilirim.

Umarım faydalı olmuştur.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s