Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Grafik şeması, grafiğinizin yapısını tanımlayan düğüm türleri, kenar türleri ve bunların özelliklerinden oluşan koleksiyondur. İyi tasarlanmış bir grafik şeması, verilerinizi sorgulamayı, korumayı ve genişletmeyi kolaylaştırır. Bu makale, bir deniz veri ambarındaki tablosal verileri Microsoft Fabric içerisinde etkili bir etiketli özellik grafiğine dönüştürmeye yönelik en iyi yöntemleri sağlar.
Graf modeli düzenleyicisinde modellemeye başlamadan önce bu yönergeleri kullanın. Düğüm ve kenar oluşturma hakkında adım adım yönergeler için grafik öğreticisine bakın. Bu makaledeki örneklerde Adventure Works örnek veri kümesi kullanılmıştır.
Önemli
Graph şu anda şema evrimi desteklemez. Verilerinizi modelledikten sonra düğümlerin, kenarların ve özelliklerin yapısı sabittir. Özellik ekleme, etiketleri değiştirme veya ilişki türlerini değiştirme gibi yapısal değişiklikler, yeni bir grafik modeli oluşturmanızı ve tüm verileri yeniden yüklemenizi gerektirir. Bu işlem zaman alır ve kapasiteyi tüketir, bu nedenle modellemeye başlamadan önce şemanızı kapsamlı bir şekilde planlayın.
Önkoşullar
- Kaynak tablolarınızı içeren bir göl evi içeren Fabric çalışma alanı.
- Grafik modeli düzenleyicisi hakkında bilgi.
- İsteğe bağlı: Bu makaledeki örnekleri izlemek için Adventure Works örnek veri kümesi .
Düğüm türlerini ve kenar türlerini anlama
Şema tasarlamadan önce şu temel kavramları anlayın:
Düğüm türü grafınızdaki müşteri, ürün veya sipariş gibi bir varlık türünü tanımlar. Şunlardan oluşur:
- Bu kategori düğümünü tanımlayan isim olan etiket. Örneğin,
Customer. Bu türdeki düğümlere başvurmak için sorgularda etiketi kullanırsınız. - Bir eşleme tablosu, düğüm türü için kaynak verileri sağlayan bir "lakehouse" tablosudur. Örneğin, adventureworks_customers tablosu.
- Her düğümü benzersiz olarak tanımlayan bir anahtar sütunu (grafik modeli düzenleyicisinde kimlik olarak etiketlenmiştir). Örneğin,
CustomerID_K. -
Özellikler, tablodaki sütunlardan her düğümde öznitelik haline gelir. Örneğin,
FirstName,LastNameveEmailAddress.
Düğüm, eşleme tablosundaki bir satır olan düğüm türünün tek bir örneğidir. Örneğin, adventureworks_customers içindeki her satır bir Customer düğüme dönüşür.
Kenar türü, iki düğüm türü arasındaki ilişki türünü tanımlar. Şunlardan oluşur:
- İlişki kategorisini tanımlayan ad olan bir etiket. Örneğin,
purchases. - Kaynak ve hedef düğümler arasındaki ilişki verilerini içeren bir eşleme tablosu . Örneğin, adventureworks_orders tablosu.
-
Bir kaynak düğüm türü ve kenarın bağlandığı bir hedef düğüm türü. Örneğin,
Customerkaynak veOrderhedef olarak.
Kenar, iki belirli düğümü bağlayan eşleme tablosundaki bir satır olan kenar türünün tek bir örneğidir.
Uyarı
Grafik modeli düzenleyicisinde Düğüm ekle ve Kenar ekle düğmeleri tek tek düğümler veya kenarlar değil düğüm türleri ve kenar türleri oluşturur.
Varlıkları ve ilişkileri tanımlama
Verilerinizdeki varlıkları (öğeleri) ve ilişkileri (bağlantılar) tanımlayarak başlayın. Varlıklar düğüm türlerine dönüşür. Varlıklar arasındaki bağlantılar kenar türlerine dönüşür.
Kaynak tablolarınız hakkında şu soruları sorun:
- Birincil varlıklar nelerdir? Farklı gerçek dünya öğeleri temsil eden satırlar düğüm türleri için adaydır. Örneğin müşteriler, ürünler, siparişler ve çalışanlar.
- Bu varlıkların birbirleriyle ilişkisi nedir? Başka bir tablodaki satırlara başvuran sütunlar (yabancı anahtarlar), kenar türlerini önerir. Örneğin,
CustomerID_FK, birorderstablodacustomerstablosuna işaret eder; bu dapurchaseskenarını modellemeyi önerir. - Gömülü varlıklar var mı? Tablo içindeki bir sütun, kendi düğüm türü olarak çıkarılmaya değer ayrı bir varlığı temsil edebilir. Örnek için bkz. Düğüm türlerini seçme. Adım adım izlenecek yol için bkz. Bir eşleme tablosundan birden çok düğüm ve kenar türü ekleme.
Düğüm türlerini seçin
Bağımsız olarak sorgulamanız veya dolaşmanız gereken her varlık için bir düğüm türü oluşturun. Şu yönergeleri kullanın:
| Varlığı bir düğüm türü yapın. | Bunu bir özellik olarak tut... |
|---|---|
| Oradan geçmeniz veya geçmeniz gerekir. | Okumaktan başka bir şey yapmadığınız açıklayıcı meta verilerdir, üzerinde gezinmezsiniz. |
| Birden çok varlık onunla bir ilişki paylaşır. | Ait olduğu varlık için benzersizdir. |
| Sorgularda doğrudan eşleştirmeniz veya gruplandırmanız gerekir. | Buna göre yalnızca başka bir varlığın özelliği olarak filtreleyebilirsiniz. |
Örnek: Adventure Works veri kümesinde, Country tabloda bir sütun employees olarak başlar. "Aynı ülkede hangi çalışanlar yaşıyor?" veya "en çok çalışana sahip olan ülkeler" sorgusunu yapmanız gerekiyorsa, kendi düğüm türüne ayıklayın Country . Bir çalışanın ülkesini yalnızca etiket olarak görüntülemeniz gerekiyorsa, bu ülkeyi bir özellik olarak bırakın.
Anahtar sütunlarını seçme
Her düğüm türü, her düğümü benzersiz olarak tanımlayan bir anahtar sütunu (veya bileşik anahtar) gerektirir. Anahtarları dikkatle seçin:
- Kaynak tablolarınızdaki mevcut benzersiz tanımlayıcıları kullanın. Örneğin,
CustomerID_KveyaProductID_K. - Doğal anahtar olmadığı sürece iş anlamı olmayan vekil anahtarlardan kaçının. Örneğin, otomatik artan bir satır numarası yerine
CustomerIDtercih edin. - Tek bir sütun benzersizliği garanti etmediğinde bileşik anahtarları kullanın. Örneğin, bir
ProductVersiondüğümünün hemProductIDhem deVersionNumberanahtarlarına ihtiyacı olabilir. - Anahtar sütunları ile kenar eşlemelerinde kullanılan yabancı anahtar sütunları arasındaki veri türlerini eşleştirin. Eşleşmeyen türler kenar oluşturma hatalarına neden olur.
İpucu
Sorgu altyapısının anahtar özelliklerinde doğrudan aramalar gerçekleştirmesini sağlamak için düğüm anahtarı kısıtlamaları tanımlayın. Bu iyileştirme, anahtara göre belirli düğümleri arama sorgularını hızlandırır.
Kenar türlerini seçme
Kenar türleri, düğüm türleri arasındaki ilişkileri tanımlar. Her kenar türü, eşleme tablosu aracılığıyla bir kaynak düğüm türünü hedef düğüm türüne bağlar.
Şu yönergeleri izleyin:
- Fiil veya fiil tümceciği olarak okunan açıklayıcı etiketler kullanın. Örneğin,
purchases,sells,livesInvebelongsTo. İyi adlandırılmış bir kenar, sorguların okunmasını kolaylaştırır. - Yönü dikkatlice düşünün. Grafikteki kenarlar yönlendirilir. Gerçek dünya ilişkisini en iyi temsil eden yönü seçin. Örneğin,
Customer--satın almalar-->OrderOrder-->Customerdaha doğal bir şekilde okur. - Farklı düğüm türü çiftlerini bağlayan kenar türlerine ayrı adlar verin. Hem "çalışan sipariş satıyor" hem de "müşteri sipariş satın alıyor"
Orderöğesine bağlanıyorsa, ikisine de aynı etiketi vermek yerinesellsvepurchasesolarak adlandırın. Daha fazla bilgi için bkz. Uç oluşturma sınırlamaları.
Kenar türlerine özellik ekleme
Düğüm türlerinden farklı olarak, kenar türleri hiçbir özellik olmadan başlar. İsteğe bağlı olarak, veriler uç nokta yerine ilişkinin kendisini açıkladığında özellikler ekleyebilirsiniz. Edge özellikleri en çok, ilişki hakkındaki verileri filtrelemesi, toplaması veya döndürmesi gereken GQL sorguları yazdığınızda kullanışlıdır.
Özellik eklemek için grafik modeli düzenleyicisinde bir kenar türüne çift tıklayarak Kenar şemasını düzenle iletişim kutusunu açın, Özellik ekle'yi seçin ve ardından eşleme tablosundan bir sütun seçin.
Kenar özellikleri ne zaman eklenir: Bir sütun iki düğüm arasındaki bağlantı hakkında "ne kadar?", "ne zaman?" veya "ne şekilde?" yanıtını verirse, her iki düğüme değil de kenara aittir.
Örnek: Adventure Works veri kümesinde, contains kenarı Order'yi Product'ye adventureworks_orders tablosu aracılığıyla bağlar.
OrderQty, UnitPrice, ve LineTotal gibi sütunlar, bir ürünün belirli bir siparişte kaç adet bulunduğunu ve hangi fiyatta olduğunu açıklayan ilişkiyi tanımlar.
OrderDate veya ShipDate gibi sütunlar sıranın kendisini açıklar ve kenarda değil, Order düğüm türüne aittir.
Önemli
Bir kenar için eşleme tablosu, hem kaynak hem de hedef düğüm türlerinin değerleriyle ve veri türündeki anahtar sütunlarıyla eşleşen sütunlar içermelidir. Düğüm türleri oluşturmak için kullandığınız tablolar, bu gereksinimi karşılıyorsa kenar eşleme tabloları olarak da görev yapabilir.
Gereksiz özellikleri kaldırma
Bir eşleme tablosundan düğüm türü oluşturduğunuzda, tablodaki her sütun varsayılan olarak bir özellik haline gelir. Aşırı özellikler depolamayı ve yavaş sorguları artırır ve grafın bakımını zorlaştırır. Bu nedenlerden dolayı, sorgular veya analiz için ihtiyacınız olmayan özellikleri kaldırın.
Uyarı
Kenar türleri farklı çalışır; hiçbir özellik olmadan başlarlar. Kenar şemasını düzenle iletişim kutusundaki Özellik ekle düğmesini kullanarak yalnızca ihtiyacınız olan özellikleri el ile eklersiniz.
Her düğüm türü için yalnızca şu özellikleri koruyun:
- Düğümün benzersizliği için gereklidir (anahtar sütunları)
- Sorgularınızdaki filtrelerde
WHEREveyaRETURNprojeksiyonlarda kullanılır - Aşağı akış analizi veya görselleştirme için gereklidir
Özellik sayısının sorgu performansını nasıl etkilediği hakkında daha fazla bilgi için bkz. Yalnızca ihtiyacınız olan özellikleri döndürme.
Veri türlerini seçme
Her özellik için en özel veri türünü seçin. Doğru türler hem depolama verimliliğini hem de sorgu performansını artırır:
- Sayısal tanımlayıcılar ve sayımlar için
INTveUINT64kullanın. Sayısal karşılaştırmalar, dize karşılaştırmalarından daha hızlıdır. - Dize biçimlendirilmiş tarihler yerine zaman damgaları için kullanın
ZONED DATETIME. -
BOOLEANkullanarak true/false bayraklarını"yes"veya"no"gibi dize değerleri yerine tercih edin.
Desteklenen türlerin tam listesi için bkz . Geçerli sınırlamalar — Veri türleri.
Yaygın tablosal-graf desenleri
Aşağıdaki tabloda, bazı yaygın tablosal veri yapılarının grafik öğelerine nasıl çevrildiği özetlenmiştir:
| Tablosal yapı | Grafik sonucu | Example |
|---|---|---|
| Bire-çok: Ana tablo + yabancı anahtarlı alt tablo | İki düğüm türü bir kenar türü ile bağlı. |
Customer
--
satın almalar-->Order |
| Çoka çok: İki tabloyu bağlayan birleşim tablosu | İki düğüm türü arasındaki kenar türü. |
Vendor
--
üretir-->Product |
| Katıştırılmış varlık: Paylaşılan varlığı temsil eden sütun | Kenarlı ayıklanmış düğüm türü. |
Employee
--
yaşamYer-->Country |
| Hiyerarşi: Ebeveyn-çocuk tablo zinciri | Her düzeyde kenarlarla birbirine bağlı düğüm tipleri. |
Product
--
Türüdür-->Subcategory --Aittir-->Category |
Gömülü varlık deseni için adım adım bir kılavuz arıyorsanız bkz. Bir eşleme tablosundan birden çok düğüm ve kenar türü ekleme.
Grafik şemanızı değiştirme
Graph şema evrimi desteklemez. Grafik modelini kaydettikten sonra düğüm türlerinin, kenar türlerinin ve bunların özelliklerinin yapısı düzeltilir. Düğüm türüne özellik ekleme, kenar türünü kaldırma veya anahtar sütunu değiştirme gibi yapısal değişiklikler yapmak için yeni bir grafik modeli oluşturmanız ve verilerinizi yeniden yüklemeniz gerekir.
Grafik şemanızı değiştirmek için:
- Çalışma alanınızda, aynı lakehouse'a bağlanan yeni bir grafik öğesi oluşturun.
- Grafik modeli düzenleyicisinde, yeni veya değiştirilmiş özellikler de dahil olmak üzere ihtiyacınız olan düğüm türlerini ve kenar türlerini ekleyin.
- Anahtar sütunlarını ve kenar eşlemelerini yapılandırın. Veri türlerinin anahtar sütunlarıyla yabancı anahtar sütunları arasında eşleştiğinden emin olun.
- Verileri almak ve yeni grafiği oluşturmak için Kaydet'i seçin.
- Tüm sorgu kümelerini yeni grafiğe işaret eden şekilde güncelleştirin.
- Yeni grafiğin beklendiği gibi çalıştığını doğruladıktan sonra, ihtiyacınız yoksa özgün grafik öğesini silin.