Podstawowe zarządzanie za pomocą Dataplex Universal Catalog: wprowadzenie

1. Wprowadzenie

Jako programiści i inżynierowie danych często dziedziczymy duże zbiory danych, które bardziej przypominają bagna danych. Ciągle napotykamy te same problemy: „Co właściwie oznacza kolumna „amt”?”, „Kto ponosi odpowiedzialność, jeśli ten zbiór danych przestanie działać?” lub „Czy możemy używać tej tabeli w spersonalizowanym systemie rekomendacji?”.

Tradycyjnie katalogi danych były pasywnymi spisami wypełnionymi tagami w formie tekstu, które szybko stawały się niespójne i nieaktualne. Nie wymuszają one struktury, co sprawia, że zarządzanie programowe jest niemal niemożliwe.

Aby to ułatwić, w tym laboratorium przeanalizujemy scenariusz: ustanowienie solidnego zarządzania nieprzetworzonymi danymi o sprzedaży detalicznej, aby dział finansowy mógł im ufać w oficjalnych raportach. Przeniesiesz te dane ze stanu niejednoznacznego „bagna” do stanu zarządzanego produktu.

Dataplex Universal Catalog zmienia to, udostępniając aktywne, uporządkowane ramy zarządzania metadanymi. Umożliwia dołączanie do zasobów danych (wpisów) uporządkowanych metadanych opartych na schemacie (aspektów) i zaakceptowanych definicji biznesowych (glosariuszy).

Zanim zaczniesz pisać skrypty w Pythonie lub moduły Terraform, aby zautomatyzować ten proces na dużą skalę, musisz poznać podstawowy model obiektów.

W tym module wykonamy ręcznie w konsoli Google Cloud czynności związane z zarządzaniem. Wyraźnie połączymy ze sobą wpisy, typy aspektów, aspekty i glosariusze, aby dać Ci solidny model mentalny, który pomoże Ci sprawić, że Twoje dane będą łatwe do odnalezienia, zrozumienia i zaufania.

Wymagania wstępne

  • Projekt Google Cloud z dostępem na poziomie właściciela lub edytującego.
  • znajomość Google Cloud Console;
  • Podstawowe umiejętności korzystania z interfejsów wiersza poleceń gcloud i bq w Cloud Shell.

Czego się nauczysz

  • Kluczowa różnica między wpisem Dataplex, typem aspektu i aspektem.
  • Jak utworzyć glosariusz firmowy, aby rozwiązać problem z niejednoznacznością terminologii.
  • Jak zaprojektować typ aspektu, aby wymusić ścisły schemat metadanych technicznych (wykraczający poza „tagi”).
  • Jak połączyć termin z glosariusza biznesowego z konkretną kolumną BigQuery.
  • Jak dołączyć do komponentu danych aspekt strukturalny i sprawdzić poprawność danych wejściowych.
  • Jak wykonywać precyzyjne zapytania w stosunku do tych nowych uporządkowanych metadanych.

Czego potrzebujesz

  • Konto Google Cloud i projekt Google Cloud
  • przeglądarka, np. Chrome;

Kluczowe pojęcia

  • Wpis: kanoniczna, abstrakcyjna reprezentacja zasobu danych w katalogu. Pomyśl o tym jako o „wskaźniku” lub „rzeczowniku”. Gdy tworzysz tabelę BigQuery, Dataplex automatycznie tworzy dla niej wpis. Nie zarządzamy bezpośrednio tabelą, tylko jej wpisem.
  • Słownik biznesowy: scentralizowany, wersjonowany słownik terminów biznesowych Twojej organizacji. Jest to jedyne źródło wiarygodnych informacji. Zapobiega to problemowi „Dział sprzedaży inaczej definiuje wartość GMV niż dział finansowy”.
  • Typ aspektu: schemat lub szablon dla określonej kategorii metadanych. Typ aspektu określa pola, typy danych (ciąg znaków, wyliczenie, data i godzina itp.) oraz ograniczenia (wymagane/opcjonalne). Jest to umowa, która zapewnia spójność metadanych.
  • Aspekt: konkretny element metadanych dołączony do wpisu, który jest zgodny ze strukturą zdefiniowaną przez typ aspektu. Zawiera rzeczywiste dane zgodne ze schematem typu aspektu.

2. Konfiguracja i wymagania

Uruchamianie Cloud Shell

Google Cloud można obsługiwać zdalnie z laptopa, ale w tym module praktycznym będziesz używać Google Cloud Shell, czyli środowiska wiersza poleceń działającego w chmurze.

W konsoli Google Cloud kliknij ikonę Cloud Shell na pasku narzędzi w prawym górnym rogu:

Aktywowanie Cloud Shell

Udostępnienie środowiska i połączenie się z nim może zająć tylko kilka chwil. Po zakończeniu powinno wyświetlić się coś takiego:

Zrzut ekranu terminala Google Cloud Shell pokazujący, że środowisko zostało połączone

Ta maszyna wirtualna zawiera wszystkie potrzebne narzędzia dla programistów. Zawiera stały katalog domowy o pojemności 5 GB i działa w Google Cloud, co znacznie zwiększa wydajność sieci i uwierzytelniania. Wszystkie zadania w tym laboratorium możesz wykonać w przeglądarce. Nie musisz niczego instalować.

Włączanie wymaganych interfejsów API i konfigurowanie środowiska

Uruchom te polecenia, aby ustawić identyfikator projektu, zdefiniować region i włączyć niezbędne interfejsy API usług.

export PROJECT_ID=$(gcloud config get-value project)
gcloud config set project $PROJECT_ID
export LOCATION="us-central1"

gcloud services enable dataplex.googleapis.com \
                       bigquery.googleapis.com \
                       datacatalog.googleapis.com

Utwórz zbiór danych BigQuery i przygotuj przykładowe dane

Musimy mieć konkretny zasób danych, którym będziemy zarządzać. Utworzymy zbiór danych BigQuery i wczytamy do niego mały przykładowy plik CSV reprezentujący transakcje. Dataplex automatycznie wykryje tę tabelę i utworzy dla niej wpis.

# Create the BigQuery Dataset in the us-central1 region
bq --location=$LOCATION mk --dataset \
    --description "Retail data for governance codelab" \
    $PROJECT_ID:retail_data

# Create a temporary CSV file with the sample data
echo "transaction_id,user_email,gmv,transaction_date
1001,test@example.com,150.50,2025-08-28
1002,user@example.com,75.00,2025-08-28" > /tmp/transactions.csv

# Load the data from the temporary CSV file into BigQuery
bq load \
    --source_format=CSV \
    --autodetect \
    retail_data.transactions \
    /tmp/transactions.csv

# (Optional) Clean up the temporary file
rm /tmp/transactions.csv

Sprawdź konfigurację, uruchamiając szybkie zapytanie:

bq query --nouse_legacy_sql "SELECT * FROM retail_data.transactions"

3. Ustalanie wspólnego języka za pomocą glosariusza firmowego

Skuteczne zarządzanie zaczyna się od jednoznacznych definicji. Jeśli deweloper widzi kolumnę o nazwie gmv, nie powinien zgadywać, czy zawiera ona podatki czy zwroty. Glosariusz firmowy rozwiązuje ten problem, oddzielając definicję biznesową od implementacji technicznej.

  1. W konsoli Google Cloud otwórz Dataplex Universal Catalog.
  2. W menu nawigacyjnym po lewej stronie wybierz Słowniki (w sekcji Zarządzaj metadanymi).

96020207ba4bd128.png

  1. Kliknij Utwórz glosariusz firmowy.
  2. Podaj te informacje:
    • Nazwa: Retail Business Glossary
    • Lokalizacja: us-central1 (lub lokalizacja zdefiniowana podczas konfiguracji).
  3. Kliknij Utwórz.

e3b146e5f3b57785.png

  1. Kliknij nowo utworzony Słownik terminów biznesowych z branży handlu detalicznego, aby go otworzyć.

c98bdf049e946234.png

  1. Kliknij Utwórz kategorię i nazwij ją Sales Metrics, a następnie kliknij Utwórz. Kategorie pomagają grupować powiązane terminy.
  2. Wybierz kategorię Sales Metrics i kliknij Dodaj termin, a następnie nadaj mu nazwę Gross Merchandise Value i kliknij Utwórz.
  3. Na stronie Przegląd kliknij przycisk + Dodaj, a potem podaj te informacje:
    • Omówienie: The total value of merchandise sold over a given period of time before the deduction of any fees or expenses. This is a key indicator of e-commerce business growth.
  4. Kliknij Zapisz.

3a642fd2a41c040e.png

Masz teraz jasną definicję, którą można powiązać z zasobami technicznymi w całej organizacji.

4. Definiowanie uporządkowanych metadanych technicznych za pomocą typu aspektu

Proste tagi w formacie „klucz:wartość” nie wystarczają do zapewnienia rygoru inżynieryjnego. Jeśli musisz śledzić „Właścicieli danych”, nie chcesz, aby jedna tabela była oznaczona symbolem owner:bob, a druga – symbolem contact:alice@example.com. Potrzebujesz schematu, aby wymusić, że właściciel jest wymagany i musi mieć prawidłowy format adresu e-mail.

Do zdefiniowania tej umowy użyjemy typu aspektu.

  1. W menu nawigacyjnym po lewej stronie Dataplex w sekcji Katalog kliknij Typy aspektów i szablony tagów.
  1. Wybierz kartę Niestandardowy i kliknij Utwórz typ aspektu.

a920c555d40425a.png

  1. Podaj te informacje:
    • Nazwa wyświetlana: Data Asset Governance
    • Lokalizacja: us-central1
  2. W sekcji Szablon zdefiniujemy schemat dla naszego Aspect. Kliknij Dodaj pole, aby utworzyć te 3 pola:
    • Pole 1:
      • Nazwa wyświetlana: Data Steward
      • Typ: Text
      • Typ tekstu: Plain text
      • Kardynalność: wymagana (zaznacz pole)
    • Pole 2 (ponownie kliknij Dodaj pole):
      • Nazwa wyświetlana: Data Sensitivity
      • Typ: Enum
      • Wartości: dodaj Public, InternalConfidential
      • Moc zbioru: opcjonalna
    • Pole 3 (ponownie kliknij Dodaj pole):
      • Nazwa wyświetlana: Last Review Date
      • Typ: Date and time
      • Moc zbioru: opcjonalna
  3. Kliknij Zapisz.

20babd75c2b8dce6.png

Właśnie utworzono umowę dotyczącą metadanych wielokrotnego użytku. Nic jeszcze z niej nie korzysta, ale struktura istnieje.

5. Powiązanie zarządzania z komponentem

Teraz połączymy wszystkie te elementy. Mamy tabelę BigQuery (retail_data.transactions), definicję biznesową (Gross Merchandise Value) i schemat zarządzania (Data Asset Governance).

Wzbogacimy wpis Dataplex dla tabeli BigQuery.

Wzbogacanie schematu o kontekst biznesowy (na poziomie kolumny)

Wyjaśnijmy użytkownikom, co oznacza kolumna gmv, linkując ją do glosariusza.

  1. W panelu nawigacyjnym po lewej stronie Dataplex kliknij Wyszukiwanie.
  2. Jeśli karta Dataplex Universal Catalog nie jest aktywna, kliknij ją w prawym górnym rogu.

849a24e7b1a86a19.png

  1. Wyszukaj: retail_data.transactions Kliknij wynik dla tabeli BigQuery.

54d3edd1520593a9.png

  1. W sekcji Szczegóły wpisu kliknij kartę Schemat.
  2. Zaznacz pole wyboru w wierszu kolumny gmv i kliknij Dodaj termin biznesowy.
  3. Wybierz okres Gross Merchandise Value.

64768eecf630c90b.png

Kolumna gmv nie jest już tylko „FLOAT”; jest teraz połączona z definicją korporacyjną Gross Merchandise Value.

Wzbogać wpis o strukturalne metadane techniczne (na poziomie tabeli)

Następnie dołączymy do tabeli Data Asset Governance aspekt, aby określić własność i wrażliwość.

  1. Pozostań na stronie retail_data.transactions.
  2. Kliknij kartę Dodaj tag lub aspekt, a potem w menu wybierz typ Data Asset Governance.

4b770307159a28d8.png

  1. Formularz będzie teraz wyświetlać pola zdefiniowane w schemacie typu aspektu. Wypełnij je w ten sposób:
    • Osoba odpowiedzialna za dane: finance-team@example.com
    • Wrażliwość danych: kliknij Internal.
    • Data ostatniej weryfikacji: wybierz dzisiejszą datę.
  2. Kliknij Zapisz.

f953c5569520d42a.png

Udało Ci się dołączyć do wpisu aspekt strukturalny. W przeciwieństwie do prostego tagu te dane są weryfikowane pod kątem utworzonego przez Ciebie schematu.

6. Ujednolicone wykrywanie i weryfikacja

Nie wykonaliśmy tej pracy tylko po to, aby wypełniać formularze. Zrobiliśmy to, aby dane były łatwo dostępne i wiarygodne. Zobaczmy, jak te metadane zmieniają sposób, w jaki deweloperzy korzystają z wyszukiwania i odkrywania.

Wróć do głównej strony Wyszukiwanie w Dataplex Universal Catalog.

Wyobraź sobie, że jesteś inżynierem platformy, który egzekwuje zasady zarządzania. Musisz znaleźć wszystkie komponenty oznaczone jako „Wewnętrzne”, które podlegają określonemu typowi aspektu. Musisz używać precyzyjnych predykatów na podstawie schematu.

Możesz to sprawdzić na 2 sposoby: używając precyzyjnej składni zapytania (niezbędnej do automatyzacji) lub interaktywnych filtrów interfejsu.

Metoda 1. Weryfikacja za pomocą zapytania strukturalnego

  1. Na pasku wyszukiwania (w trybie wyszukiwania Słowo kluczowe) wpisz to zapytanie strukturalne:
aspect:data-asset-governance.data-sensitivity=Internal
  1. Powinna tam być widoczna tabela retail_data.transactions.

49120fe4ea224359.png

Metoda 2. Weryfikacja za pomocą aspektów filtra w interfejsie

  1. Wyczyść pasek wyszukiwania, aby zresetować widok.
  2. Spójrz na panel Filtruj według właściwości po lewej stronie ekranu.
  3. Przewiń w dół i rozwiń sekcję Data Asset Governance (Zarządzanie zasobami danych) – to utworzony przez Ciebie typ aspektu.
  4. W sekcji Wrażliwość danych zaznacz pole Internal.
  5. Wyniki wyszukiwania zostaną zaktualizowane i wyświetlą tabelę retail_data.transactions.

4df224cb06720ec4.png

Niezależnie od tego, czy używasz wpisanej kwerendy, czy filtrów interfejsu, mechanizm działania jest taki sam.

To pokazuje zasadniczą różnicę między Dataplex a zwykłą wiki: metadane mają strukturę, którą można przeszukiwać. Możesz teraz tworzyć automatyczne audyty (np. „Znajdź wszystkie tabele, w których last_review_date jest starsza niż rok”) korzystające z tej przewidywalnej struktury.

7. Oczyszczanie środowiska

Aby uniknąć obciążenia konta bieżącymi opłatami, usuń zasoby utworzone w tym laboratorium.

Usuwanie zbioru danych BigQuery

To polecenie jest nieodwracalne i używa flagi -f (force), aby usunąć zbiór danych i wszystkie jego tabele bez potwierdzenia.

# Re-run these exports if your Cloud Shell session timed out
export PROJECT_ID=$(gcloud config get-value project)

# Manually type this command to confirm you are deleting the correct dataset
bq rm -r -f --dataset $PROJECT_ID:retail_data

Usuwanie artefaktów Dataplex

  1. Otwórz interfejs Dataplex Universal Catalog > Zarządzaj metadanymi > Katalog.
  2. W sekcji Typy aspektów i szablony tagów wybierz typ aspektu data_asset_governance i usuń go.
  3. Kliknij Zarządzaj metadanymi > Słowniki, wybierz Retail Business Glossary i usuń go. Najpierw usuń termin Gross Merchandise Value, a potem glosariusz.

8. Gratulacje!

Masz już za sobą proste tagowanie danych i masz w Dataplex podstawowy, uporządkowany model zarządzania.

Wiesz już, że:

  • Glosariusze rozwiązują problemy z niejednoznacznością w firmie.
  • Typy aspektów zapewniają kontrakt schematu dla metadanych technicznych.
  • Aspekty stosują ten schemat do rzeczywistych wpisów danych.
  • Wyszukiwarka Dataplex wykorzystuje te uporządkowane metadane do precyzyjnego wykrywania.

Co dalej?

  • Zarządzanie jako kod: użyj dostawcy Terraform w Google Cloud, aby zdefiniować typy aspektów i glosariusze w systemie kontroli wersji, zapewniając spójne schematy w środowiskach deweloperskim, testowym i produkcyjnym.
  • Automatyczne tagowanie: napisz funkcję Cloud Function lub krok Cloud Build wywoływany przez utworzenie nowego zbioru danych, który automatycznie dołącza aspekt „Zarządzanie zasobami danych” z wartościami domyślnymi (np. sensitivity=Internal, steward=TBD), zgłaszając go do sprawdzenia.