Omówienie usługi Delta Lake
Usługa Delta Lake to warstwa magazynu typu open source, która dodaje semantyka relacyjnej bazy danych do przetwarzania typu data lake opartego na platformie Spark. Tabele w lakehouse usługi Microsoft Fabric to tabele delty, które są oznaczane przez trójkątną ikonę delta (Δ) w tabelach w interfejsie użytkownika usługi Lakehouse.
Tabele różnicowe to abstrakcje schematów w plikach danych przechowywanych w formacie delty. Dla każdej tabeli lakehouse przechowuje folder zawierający pliki danych Parquet i folder _delta_Log , w którym szczegóły transakcji są rejestrowane w formacie JSON.
Zalety korzystania z tabel delty obejmują:
- Tabele relacyjne, które obsługują wykonywanie zapytań i modyfikowanie danych. Za pomocą platformy Apache Spark można przechowywać dane w tabelach delty, które obsługują operacje CRUD (tworzenie, odczytywanie, aktualizowanie i usuwanie). Innymi słowy, można wybrać, wstawić, zaktualizować i usunąć wiersze danych w taki sam sposób, jak w systemie relacyjnej bazy danych.
- Obsługa transakcji ACID. Relacyjne bazy danych są przeznaczone do obsługi modyfikacji danych transakcyjnych, które zapewniają niepodzielność (transakcje są wykonywane jako pojedyncza jednostka pracy), spójność (transakcje opuszczają bazę danych w stanie spójnym), izolację (transakcje w procesie nie mogą ingerować w siebie) i trwałość (po zakończeniu transakcji zmiany są utrwalane). Usługa Delta Lake zapewnia tę samą obsługę transakcyjną platformy Spark, implementując dziennik transakcji i wymuszając izolację z możliwością serializacji dla operacji współbieżnych.
- Przechowywanie wersji danych i podróż w czasie. Ponieważ wszystkie transakcje są rejestrowane w dzienniku transakcji, można śledzić wiele wersji każdego wiersza tabeli, a nawet użyć funkcji podróży czasowej, aby pobrać poprzednią wersję wiersza w zapytaniu.
- Obsługa danych wsadowych i przesyłanych strumieniowo. Chociaż większość relacyjnych baz danych zawiera tabele, które przechowują dane statyczne, platforma Spark obejmuje natywną obsługę danych przesyłanych strumieniowo za pośrednictwem interfejsu API przesyłania strumieniowego ze strukturą platformy Spark. Tabele usługi Delta Lake mogą być używane zarówno jako ujścia (miejsca docelowe) i źródła danych przesyłanych strumieniowo.
- Standardowe formaty i współdziałanie. Podstawowe dane dla tabel delty są przechowywane w formacie Parquet, który jest często używany w potokach pozyskiwania typu data lake. Ponadto możesz użyć punktu końcowego analizy SQL dla usługi Microsoft Fabric Lakehouse do wykonywania zapytań dotyczących tabel różnicowych w języku SQL.