Udostępnij za pośrednictwem


Ograniczenia i znane problemy dotyczące zmaterializowanych widoków

Dotyczy: ✅Microsoft Fabric✅Azure Data Explorer

Zmaterializowane źródło widoku

  • Tabela źródłowa zmaterializowanego widoku:
    • Musi być tabelą, w której dane są pozyskiwane bezpośrednio, przy użyciu zasad aktualizacji lub pozyskiwane z poleceń zapytania.
      • Używanie zakresów przenoszenia lub zastępowanie zakresów z innych tabel do tabeli źródłowej zmaterializowanego widoku jest obsługiwane tylko w przypadku używania setNewIngestionTime właściwości w ramach polecenia zakresów przenoszenia (zobacz .move extents i .replace extents polecenia, aby uzyskać więcej szczegółów).
      • Przeniesienie zakresów do tabeli źródłowej zmaterializowanego widoku, chociaż nie jest używanesetNewIngestionTime, może zakończyć się niepowodzeniem z jednym z następujących błędów:
        • Cannot drop/move extents from/to table 'TableName' since Materialized View 'ViewName' is currently processing some of these extents.
        • Cannot move extents to 'TableName' since materialized view 'ViewName' will not process these extents (can lead to data loss in the materialized view).
  • Tabela źródłowa zmaterializowanego widoku musi mieć włączone zasady IngestionTime. Te zasady są domyślnie włączone.
  • Jeśli zmaterializowany widok używa elementu lookback (zobacz obsługiwane właściwości), ingestion_time() element musi zostać zachowany w zapytaniu zmaterializowanego widoku. Operatory, takie jak mv-expand lub wtyczka przestawna, nie zachowują elementu ingestion_time() i dlatego nie mogą być używane w zmaterializowanym widoku za pomocą elementu lookback.
  • Tabela źródłowa zmaterializowanego widoku nie może być tabelą z ograniczonymi zasadami dostępu do widoku.
  • Nie można utworzyć zmaterializowanego widoku na podstawie innego zmaterializowanego widoku, chyba że pierwszy zmaterializowany widok jest agregacją typów take_any(*) . Zobacz zmaterializowany widok w zmaterializowanym widoku.
  • Zmaterializowane widoki nie mogą być definiowane za pośrednictwem tabel zewnętrznych.

Ostrzeżenie

  • Zmaterializowany widok zostanie automatycznie wyłączony przez system, jeśli zmiany w tabeli źródłowej zmaterializowanego widoku lub zmiany w danych prowadzą do niezgodności między zmaterializowanym zapytaniem widoku a oczekiwanym schematem zmaterializowanego widoku.
    • Aby uniknąć tego błędu, zmaterializowane zapytanie widoku musi być deterministyczne. Na przykład wtyczki bag_unpack lub pivot powodują niedeterministyczny schemat.
    • W przypadku używania arg_max(Timestamp, *) agregacji i autoUpdateSchema wartości false zmiany w tabeli źródłowej mogą również prowadzić do niezgodności schematu.
      • Unikaj tego błędu, definiując zapytanie widoku jako arg_max(Timestamp, Column1, Column2, ...), lub używając autoUpdateSchema opcji .
  • Użycie autoUpdateSchema może prowadzić do nieodwracalnej utraty danych, gdy kolumny w tabeli źródłowej zostaną porzucone.
  • Monitoruj automatyczne wyłączanie zmaterializowanych widoków przy użyciu metryki MaterializedViewResult.
  • Po rozwiązaniu problemów z niezgodnością widok powinien zostać jawnie ponownie włączony przy użyciu polecenia włącz zmaterializowany widok .

Wpływ rekordów pozyskanych do lub usuniętych z tabeli źródłowej

  • Zmaterializowany widok przetwarza tylko nowe rekordy pozyskane do tabeli źródłowej. Rekordy, które są usuwane z tabeli źródłowej, uruchamiając zakresy usuwania nietrwałego/usuwania nietrwałego lub/z powodu zasad przechowywania lub innych przyczyn, nie mają wpływu na zmaterializowany widok.
  • Zmaterializowany widok ma własne zasady przechowywania, które są niezależne od zasad przechowywania tabeli źródłowej. Zmaterializowany widok może zawierać rekordy, które nie są obecne w tabeli źródłowej.

Bazy danych obserwujących

  • Nie można utworzyć zmaterializowanych widoków w bazach danych obserwowanych. Bazy danych obserwowanych to widoki tylko do odczytu i zmaterializowane wymagają operacji zapisu.
  • Nie można utworzyć zmaterializowanych widoków w skrótach bazy danych. Skróty bazy danych to widoki tylko do odczytu i zmaterializowane widoki wymagają operacji zapisu.
  • Zmaterializowane widoki zdefiniowane w bazach danych liderów mogą być odpytywane przez ich obserwatorów, podobnie jak każda inna tabela w rankingu.

Inne

  • Funkcji kursora nie można używać na podstawie zmaterializowanych widoków.
  • Eksport ciągły z zmaterializowanego widoku nie jest obsługiwany.