Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga / Notatka
Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą nie być obsługiwane lub mogą mieć ograniczone możliwości. Aby uzyskać więcej informacji, zobacz Wygólne warunki użytkowania Microsoft Azure Previews.
Grafowa baza danych to typ bazy danych reprezentujący informacje jako węzły (jednostki) i krawędzie (relacje) zamiast tabel i wierszy. Ta struktura ułatwia eksplorowanie złożonych połączeń i wzorców w danych.
Najczęściej używany typ grafowej bazy danych implementuje model grafu właściwości oznaczonych etykietą (LPG): jednostki (węzły) i relacje (krawędzie) mogą mieć etykiety i właściwości (pary klucz-wartość). Ten elastyczny model umożliwia korzystanie zarówno z opcjonalnych schematów, jak i opartych na schemacie projektów, a także umożliwia wyrażanie złożonych relacji. Ponieważ połączenia są przechowywane jawnie jako krawędzie, zapytania przechodzą przez relacje, postępując zgodnie z krawędziami zamiast przetwarzania drogich sprzężeń w czasie zapytania.
Uwaga / Notatka
Przykłady w tym artykule korzystają z zestawu danych przykładowego grafu sieci społecznościowej.
Podstawowe pojęcia dotyczące bazy danych programu Graph
Grafowa baza danych organizuje dane w trzy podstawowe bloki konstrukcyjne:
-
Węzły reprezentują jednostki, takie jak osoby, produkty lub miejsca. Węzły mogą mieć etykiety i właściwości opisujące ich atrybuty. Na przykład
Personwęzeł może mieć właściwości, takie jakfirstName,lastNameiage. -
Krawędzie reprezentują sposób połączenia jednostek, na przykład
FRIENDS_WITH,PURCHASEDlubLOCATED_IN. Krawędzie mogą również przenosić właściwości i etykiety, aby zachować metadane relacji. - Właściwości przypisują szczegóły do węzłów i krawędzi (na przykład nazwisko osoby lub data powstania krawędzi).
Jak działa zadawanie zapytań relacyjnych
Zapytania grafowe pobierają połączone informacje, przechodząc od węzła początkowego do jego sąsiadów, następnie do ich sąsiadów itd. Koszt przechodzenia zależy od liczby krawędzi, których dotyka (sąsiedztwo lokalne), a nie całkowitego rozmiaru zestawu danych. Ta cecha sprawia, że pytania dotyczące ścieżek, połączeń i wzorców — takich jak przyjaciele znajomych, najkrótsze ścieżki lub zależności z wieloma przeskokami — naturalne i wydajne do wyrażania.
Bazy danych grafów używają języków zapytań opartych na wzorcach, takich jak język zapytań grafów (GQL), aby opisać te przechodzenie w zwięzły sposób. Ta sama międzynarodowa grupa robocza, która nadzoruje program SQL (ISO/IEC 39075) standandaryzuje bibliotekę GQL, która dostosowuje zapytania grafowe do ustalonych standardów bazy danych.
Przykład (dopasowywanie wzorca z GQL):
MATCH (p:Person {firstName: "Annemarie"})-[:knows]->(friend)-[:likes]->(c:Comment)
RETURN c
ORDER BY c.creationDate
LIMIT 100
Ten wzorzec jest odczytywany jako: począwszy od węzła osoby dla Annemarie, podążaj :knows krawędziami do każdego węzła znajomego, a następnie podążaj :likes krawędziami do powiązanych :Comment węzłów. Zwróć 100 najnowszych z tych komentarzy uporządkowanych według daty utworzenia.
Model danych grafu i elastyczność schematu
Modele danych grafów mogą być opcjonalne pod względem schematu: możesz pracować z ustalonym schematem, gdy potrzebujesz silnego nadzoru, lub rozwijać model w miarę pojawiania się nowych typów węzłów, relacji lub właściwości. Takie podejście zmniejsza potrzebę duplikowania danych i umożliwia zespołom ujednolicenie danych z wielu źródeł bez konieczności ponownego projektowania z góry. Aby uzyskać więcej informacji na temat modelu danych używanego na grafie w usłudze Microsoft Fabric, zobacz Wykresy właściwości z etykietami.
Typowe zastosowania dla grafowych baz danych
Grafowe bazy danych są ściśle dopasowane do domen, w których połączenia napędzają wartość, na przykład:
- Sieci społecznościowe — modelowanie relacji między osobami a ich interakcjami
- Wykresy wiedzy — łączenie pojęć, jednostek i faktów na potrzeby semantycznego wyszukiwania i rozumowania
- Systemy rekomendacji — przechodzenie przez interakcje między elementami użytkownika w celu przedstawiania spersonalizowanych sugestii
- Oszustwa i sieci ryzyka — wykrywanie podejrzanych wzorców na kontach, transakcjach i urządzeniach
- Topologia sieci i IT — mapowania zależności między serwerami, usługami i składnikami infrastruktury
- Analiza zależności łańcucha dostaw — prześledź pochodzenie składników oraz relacje wśród dostawców
W tych scenariuszach pytania dotyczą mniej pojedynczych rekordów, a więcej o tym, jak wiele jednostek jest ze sobą powiązanych i wchodzi w interakcję na kilku przeskokach.
Kiedy wziąć pod uwagę grafową bazę danych
Grafowa baza danych jest silnym dopasowaniem, gdy relacje kierują podstawowymi pytaniami, na które należy odpowiedzieć. Wybierz grafową bazę danych, gdy:
- Podstawowe pytania obejmują ścieżki, dzielnice i wzorce w połączonych danych.
- Liczba przeskoków jest zmienna lub nie jest znana z wyprzedzeniem.
- Musisz połączyć relacje i nawigować po różnych zestawach danych.
Jeśli regularnie zadajesz tego rodzaju pytania, model grafu jest naturalnym dopasowaniem.
Jak graf w usłudze Microsoft Fabric porównuje się z autonomicznymi grafowymi bazami danych
Reprezentowanie danych jako grafu i przechowywanie ich w oddzielnej, autonomicznej bazie danych grafu często wprowadza ETL (wyodrębnianie, przekształcanie, ładowanie) i obciążenia związane z zarządzaniem. Natomiast graf w Microsoft Fabric działa bezpośrednio na OneLake, co zmniejsza lub eliminuje potrzebę korzystania z oddzielnych potoków ETL i duplikowania danych. Weź pod uwagę te kompromisy:
- Przenoszenie i duplikowanie danych: autonomiczne grafowe bazy danych zwykle wymagają wyodrębniania, przekształcania i ładowania danych do oddzielnego magazynu, co zwiększa złożoność i może prowadzić do zduplikowanych zestawów danych. Program Graph działa w usłudze OneLake, dzięki czemu można modelować i wykonywać zapytania dotyczące połączonych danych bez ich przenoszenia.
- Koszty operacyjne: Samodzielne stosy grafów działają jako oddzielne klastry lub usługi i często generują koszty za niewykorzystaną pojemność. W systemie grafów obciążenia robocze zużywają jednostki pojemności w puli (CU) ze zdolnością do automatycznego zmniejszania skali oraz scentralizowanymi metrykami, co upraszcza operacje i może obniżyć koszty.
- Skalowalność: Niektóre samodzielne grafowe bazy danych zależą od rozbudowy sprzętowej lub klastrowania specyficznego dla dostawcy. Graf jest przeznaczony dla grafów na dużą skalę i używa fragmentowania skalowalnego w poziomie dla wielu procesów roboczych w celu wydajnego obsługi obciążeń danych big data.
- Narzędzia i umiejętności: systemy grafów specyficzne dla dostawcy mogą wymagać wyspecjalizowanych języków i oddzielnych struktur analitycznych. Graf udostępnia ujednolicone modelowanie, zapytania w języku GQL oparte na standardach, wbudowane algorytmy analizy grafów, integrację z BI i AI oraz narzędzia eksploracyjne wymagające mało kodu lub bez kodu. Te możliwości umożliwiają szerszemu zestawowi użytkowników pracę z połączonymi danymi.
- Zarządzanie i bezpieczeństwo: oddzielne wdrożenia grafu wymagają niezależnych ustawień zarządzania i bezpieczeństwa. Platforma Graph używa zarządzania, pochodzenia oraz kontroli dostępu opartej na rolach (RBAC) w OneLake, dzięki czemu zgodność, inspekcja i uprawnienia pozostają spójne z resztą środowiska Fabric.