Snowflake

Podsumowanie

Produkt opis
Status wydania Ogólna dostępność
Produkty Power BI (modele semantyczne)
Power BI (przepływy danych)
Fabric (Dataflow Gen2)
Power Apps (przepływy danych)
Obsługiwane typy uwierzytelniania Snowflake (nazwa użytkownika/hasło), konto Microsoft (Microsoft Entra ID), uwierzytelnianie klucza (ADBC), główny użytkownik usługi (SPN)
Dokumentacja referencyjna funkcji

Uwaga

Pole wejściowe hasła jest automatycznie wyświetlane tylko w razie potrzeby na podstawie typu przekazanego certyfikatu. Po przekazaniu certyfikatu przez użytkownika system wykryje, czy jest zaszyfrowany, czy niezaszyfrowany, a warunkowo wyświetla okno dialogowe hasła. Obsługiwane są zarówno klucze zaszyfrowane, jak i niezaszyfrowane.

Uwaga

Niektóre funkcje mogą być obecne w jednym produkcie, ale nie w innych ze względu na harmonogramy wdrażania i możliwości specyficzne dla hosta.

Obsługiwane możliwości

  • Importuj
  • Tryb DirectQuery (modele semantyczne Power BI)
  • Opcje zaawansowane
    • Określ wartość tekstową, która ma być używana jako nazwa roli
    • Kolumny relacji
    • Czas oczekiwania na połączenie w sekundach
    • Limit czasowy polecenia w sekundach
    • baza danych
    • Natywna instrukcja SQL

Obsługiwane typy uwierzytelniania

Uwaga

  • Tryb uwierzytelniania nazwą użytkownika/hasłem zostanie wycofany. Przeczytaj więcej tutaj. Pod łącznością na naszej mapie drogowej Fabric można znaleźć więcej informacji.

  • Uwierzytelnianie za pomocą pary kluczy nie jest obsługiwane w przypadku przepływów danych Gen1.

Łącznik Snowflake obsługuje następujące metody uwierzytelniania:

  • Microsoft Entra ID (zalecane): umożliwia silne uwierzytelnianie oparte na tożsamości bez przechowywania nazw użytkowników lub haseł.

    • W usłudze Microsoft Fabric ta metoda uwierzytelniania może być wspierana przez tożsamość obszaru roboczego w obsługiwanych środowiskach (takich jak Zestawy danych i Przepływy danych Gen2), umożliwiając usłudze Fabric uwierzytelnianie w usłudze Snowflake przy użyciu tożsamości zarządzanej obszaru roboczego.
  • Tożsamość obszaru roboczego: tożsamość zarządzana skojarzona z obszarem roboczym usługi Microsoft Fabric. Podczas uwierzytelniania przy użyciu identyfikatora Entra firmy Microsoft obsługiwane środowiska sieci szkieletowej (takie jak Zestawy danych i Przepływy danych Gen2) mogą używać tożsamości obszaru roboczego do uwierzytelniania w usłudze Snowflake. Ta metoda umożliwia usłudze Fabric dostęp do usługi Snowflake przy użyciu tożsamości powiązanej z obszarem roboczym, a nie poświadczeń poszczególnych użytkowników.

  • Uwierzytelnianie par kluczy (ADBC): uwierzytelnianie oparte na certyfikatach dla obsługiwanych scenariuszy.

  • Service Principal (SPN): Service Principale są obsługiwane w Snowflake dla scenariuszy, w których wymagana jest tożsamość na poziomie aplikacji bez użytkownika. Obsługa jest zależna od konfiguracji usługi Snowflake i używanej metody uwierzytelniania.

Nawiązywanie połączenia z magazynem danych Snowflake z poziomu programu Power Query Desktop

Uwaga

Wszystkie nowe połączenia domyślnie używają implementacji łącznika Snowflake 2.0 .

Zalecamy zaktualizowanie wszystkich połączeń utworzonych przed marcem 2025 r . do tej nowej implementacji.

Aby nawiązać połączenie z magazynem obliczeniowym Snowflake, wykonaj następujące czynności:

  1. Wybierz Pobierz dane z wstążki Home w programie Power BI Desktop, wybierz Baza danych z kategorii po lewej stronie, i wybierz Snowflake, a następnie Połącz.

    Zrzut ekranu przedstawiający okno dialogowe Pobieranie danych z wyborem bazy danych Snowflake.

  2. W wyświetlonym oknie Snowflake wprowadź nazwę swojego serwera Snowflake w polu Serwer i nazwę swojego magazynu obliczeniowego Snowflake w polu Warehouse.

    Zrzut ekranu przedstawiający okno dialogowe Snowflake z wybranym przyciskiem radiowym Importuj.

  3. Opcjonalnie wprowadź wartości w dowolnych zaawansowanych opcjach, których chcesz użyć do zmodyfikowania zapytania połączenia, na przykład wartości tekstowej, która ma być używana jako nazwa roli lub limit czasu polecenia. Aby uzyskać więcej informacji, przejdź do Connect przy użyciu opcji zaawansowanych.

  4. Wybierz przycisk OK.

  5. Aby zalogować się do magazynu obliczeniowego Snowflake, wprowadź nazwę użytkownika i hasło, a następnie wybierz pozycję Połącz.

    Zrzut ekranu monitu o poświadczenia w usłudze Snowflake, pokazujący pola Nazwa użytkownika i Hasło.

    Uwaga

    Po wprowadzeniu nazwy użytkownika i hasła dla określonego Snowflake serwera Power BI Desktop używa tych samych poświadczeń w kolejnych próbach połączenia. Te poświadczenia można zmodyfikować, przechodząc do Plik > Opcje i ustawienia > Ustawienia źródła danych. Aby uzyskać więcej informacji, zobacz Zmienianie metody uwierzytelniania.

    Jeśli chcesz użyć opcji konta Microsoft, integracja Microsoft Entra ID Snowflake musi być skonfigurowana po stronie Snowflake. Aby uzyskać więcej informacji, przejdź do Power BI SSO do Snowflake — Wprowadzenie.

  6. W Navigator wybierz jeden lub wiele elementów do zaimportowania i użycia w programie Power BI Desktop. Następnie wybierz Load aby załadować tabelę w programie Power BI Desktop lub Transform Data aby otworzyć edytor Power Query, w którym można filtrować i uściślić zestaw danych, których chcesz użyć, a następnie załadować ten uściśliony zestaw danych do Power BI Desktop.

    Zrzut ekranu przedstawiający nawigator z otwartą bazą danych schematu testowego i wybraną tabelą DimProduct.

  7. Wybierz pozycję Import aby zaimportować dane bezpośrednio do Power BI, lub wybierz DirectQuery a następnie wybierz pozycję OK. Aby uzyskać więcej informacji, przejdź do Korzystanie z DirectQuery w Power BI Desktop.

    Uwaga

    Microsoft Entra ID obsługuje tylko logowanie jednokrotnego użytku w trybie DirectQuery.

    Zrzut ekranu przedstawiający ustawienia połączenia zawierające opcje Importuj i DirectQuery.

Nawiązywanie połączenia z bazą danych Snowflake z usługi Power Query Online

Aby nawiązać połączenie, wykonaj następujące czynności:

  1. Wybierz opcję Snowflake w obszarze wyboru łącznika.

  2. W wyświetlonym oknie dialogowym Snowflake wprowadź nazwę serwera i magazynu.

    Zrzut ekranu narzędzia do tworzenia połączeń Snowflake w usłudze Power Query Online.

  3. Wprowadź dowolne wartości w opcjach zaawansowanych, których chcesz użyć. Jeśli w interfejsie użytkownika nie są reprezentowane jakiekolwiek opcje zaawansowane, możesz je edytować w Advanced Editor w Power Query później.

  4. Wprowadź poświadczenia połączenia, wybierz istniejące lub utwórz nowe połączenie, wybierz bramę, której chcesz użyć, oraz podaj nazwę użytkownika i hasło.

  5. Wybierz przycisk Dalej , aby nawiązać połączenie z bazą danych.

  6. W Navigator wybierz wymagane dane, a następnie wybierz Transform data aby przekształcić dane w Power Query Editor.

    Zrzut ekranu przedstawiający nawigatora online z otwartą bazą danych schematu testowego i wybraną tabelą DimProduct.

Nawiązywanie połączenia przy użyciu opcji zaawansowanych

Power Query udostępnia zestaw opcji zaawansowanych, które można dodać do zapytania w razie potrzeby.

W poniższej tabeli wymieniono wszystkie opcje zaawansowane, które można ustawić w Power Query.

Opcja zaawansowana opis
Nazwa roli Określa rolę używaną przez raport za pośrednictwem sterownika. Ta rola musi być dostępna dla użytkownika. W przeciwnym razie nie zostanie ustawiona żadna rola.
Dołącz kolumny relacji Jeśli jest zaznaczone, zawiera kolumny, które mogą mieć relacje z innymi tabelami. Jeśli to pole jest wyczyszczone, nie widzisz tych kolumn.
Czas oczekiwania na połączenie w sekundach Określa czas oczekiwania na odpowiedź podczas interakcji z usługą Snowflake przed zwróceniem błędu. Wartość domyślna to 0 (brak limitu czasu).
Limit czasowy polecenia w sekundach Określa czas oczekiwania na ukończenie zapytania przed zwróceniem błędu. Wartość domyślna to 0 (brak limitu czasu).
baza danych Określa określoną bazę danych w magazynie. Ta opcja jest dostępna tylko w programie Power Query Desktop.
Instrukcja SQL Aby uzyskać informacje, przejdź do tematu Importowanie danych z bazy danych przy użyciu natywnego zapytania bazy danych. Ta opcja jest dostępna tylko w programie Power Query Desktop.

Po wybraniu opcji zaawansowanych wybierz pozycję OK w programie Power Query Desktop lub Dalej w usłudze Power Query Online, aby nawiązać połączenie z bazą danych Snowflake.

Implementacja złącza Snowflake 2.0

W styczniu 2025 r. wprowadziliśmy nową implementację łącznika Snowflake w celu ulepszenia integracji z usługą Snowflake. Ten łącznik jest ogólnie dostępny od lipca 2025 r. Zalecamy uaktualnienie Power BI Desktop i lokalnej bramy danych do najnowszej wersji, aby korzystać z najnowszych funkcji. Przekaż nam swoją opinię , aby pomóc nam w dalszym ulepszaniu łącznika.

Implementacja łącznika Snowflake w wersji 2.0 jest zbudowana przy użyciu open-source'owego sterownika Arrow Database Connectivity (ADBC). ADBC udostępnia zestaw standardowych interfejsów do interakcji z danymi Arrow, co jest szczególnie wydajne podczas pobierania dużych zestawów danych z minimalnym obciążeniem i bez serializacji ani kopiowania. Sterownik ADBC obejmuje również ulepszenia zabezpieczeń, takie jak bezpieczeństwo pamięci i odzyskiwanie pamięci. Ponadto współpraca ze społecznością open source umożliwia szybsze aktualizowanie, korzystanie z nowoczesnych narzędzi i procesów bezpiecznego cyklu projektowania (SDL).

Aby umożliwić korzystanie z tych ulepszeń wydajności i zabezpieczeń, począwszy od lipca 2025 r., wszystkie nowo utworzone połączenia w programie Desktop automatycznie korzystają z implementacji 2.0. Możesz również przetestować implementację w wersji 2.0, aktualizując istniejące zapytania i dodając flagę Implementation="2.0" w następujący Snowflake.Databases sposób.

Source = Snowflake.Databases("contoso.snowflakecomputing.com", "CONTOSO_WH", [Implementation="2.0"])

Aby lepiej diagnozować jakiekolwiek potencjalne problemy, możesz znaleźć szczegóły Implementation i DriverType w dziennikach Mashup, jak w poniższym przykładzie. Jeśli wystąpi jakikolwiek problem podczas przejścia, skontaktuj się z pomocą techniczną. W międzyczasie, aby samodzielnie rozwiązać ten problem, możesz usunąć Implementation="2.0" , aby nadal korzystać z łącznika ODBC, aby uniknąć przerw w działaniu firmy. Jeśli jednak używasz uwierzytelniania pary kluczy, sterownik ADBC jest zawsze używany niezależnie od tego ustawienia.

{
   "Start":"2024-11-02T00:14:02.7968686Z",
   "Action":"Engine/Module/Snowflake/IO/Snowflake/Implementation",
   "ResourceKind":"Snowflake",
   "ResourcePath":"powerbi.snowflakecomputing.com ;DEMO_WH",
   "HostProcessId":"29200",
   "Implementation":"2.0",
   "DriverType":"ADBC",
   "ProductVersion":"2.139.0.0 (Main)+eda56ecd858054173a4d11db9c63a6da5cf92a99",
   "ActivityId":"106f16b6-cfbb-4853-9f20-ed45486486d2",
   "Process":"Microsoft.Mashup.Container.NetFX45",
   "Pid":38560,
   "Tid":1,
   "Duration":"00:00:00.0000291"
}

Dostępne są następujące opcje od wersji z lipca 2025 r.:

  • UseHighPrecision: określa dokładność obsługi pól Snowflake NUMBER(38,0). Jeśli nie określono żadnej wartości, łącznik wysyła do Snowflake zapytanie SHOW PARAMETERS LIKE 'ODBC_TREAT_DECIMAL_AS_INT'. Jeśli nie ustawiono żadnej wartości, łącznik używa skali określonej przez kolumnę. Wartość true traktuje wartość NUMBER(38,0) jako typ dziesiętny. false traktuje NUMBER(38,0) jako typ Int64. Jeśli skala jest wyższa niż 0, kolumna jest traktowana jako typ podwójny.
  • DateTimePrecision: Określa precyzję, z jaką wartości Timestamp w Snowflake są traktowane. Snowflake zwykle przechowuje wartości sygnatury czasowej z dokładnością nanosekund. W ADBC, ta precyzja może spowodować wyjątek przepełnienia dat przed 1677 lub po 2262, zgodnie z Snowflake. Prawidłowe wartości dla tej opcji to null, nanosecondslub microseconds. Wartość null powoduje domyślne użycie nanoseconds. Zalecamy, aby użytkownicy, którzy potrzebują dat przed 1677 lub po 2262 roku, używali microseconds tego ustawienia. Jeśli użytkownicy muszą zachować precyzję do dziesięciomilionowego miejsca przed 1677 lub po 2262, zalecamy pozostanie ze sterownikiem ODBC.

Jeśli musisz użyć serwera proxy do nawiązania połączenia z usługą Snowflake, zapoznaj się z instrukcją ustawienia serwera proxy. Sterownik używa zmiennych środowiskowych dla ustawień serwera proxy.

Poniższa tabela zawiera podsumowanie ulepszeń łącznika wydanych w poprzednich wersjach:

Uwolnij Ulepszenie łącznika
Lipiec 2025 r. • Kolumny logiczne zwracają typy logiczne, naprawiając problem polegający na tym, że kolumny logiczne były traktowane jako typy ciągów w pustym schemacie zestawu rekordów (w tym metadane).
• Nowe ustawienie ustawiania maksymalnej dokładności znacznika czasu na mikrosekundy.
• Ulepszona obsługa funkcji "Czas Trwania".
• Dodano obsługę właściwości nawigacji do usługi ADBC.
• Ulepszone śledzenie w sterowniku ADBC, gdzie "ActivityId" można teraz śledzić za pośrednictwem warstwy sterownika.
Kwiecień 2025 r. • Dodano obsługę tagu zapytania Snowflake. Przykład: {"PowerQuery":true,"Host":"PBI_SemanticModel_MWC","HostContext":"PowerBIPremium-DirectQuery"}
Marzec 2025 r. • Zwiększona wydajność podczas pobierania danych z usługi Snowflake.
• Domyślnie włączone w programie Power BI Desktop, aby nowo utworzone połączenia automatycznie korzystały z nowej implementacji łącznika.
• Rozwiązano problem polegający na tym, że widoki nie są widoczne od najnowszej wersji marca.
Luty 2025 rok • Zwiększona wydajność dzięki zmniejszeniu liczby wywołań metadanych.
• Rozwiązano problem z zduplikowanymi wartościami dla dużych zestawów wyników.

Uwaga

W przypadku korzystania z lokalnej bramy danych należy pamiętać, że minimalna obsługiwana wersja to styczeń 2025 r. Zalecamy użycie najnowszej wersji z najbardziej aktualnymi możliwościami.

Uwaga

Ta funkcja jest obsługiwana w 64-bitowej wersji programu Power BI Desktop i nie działa w wersji 32-bitowej.

Rozwiązywanie problemów

Błąd: Błąd kompilacji SQL: Obiekt nie istnieje lub nie można wykonać operacji

Błąd występuje, gdy system nie może odnaleźć określonego obiektu. Często ten błąd jest spowodowany tym, że użytkownik ma nieprawidłową nazwę bazy danych ustawioną jako domyślną bazę danych.

Upewnij się, że dla właściwości DEFAULT_NAMESPACE jest używana prawidłowa domyślna nazwa bazy danych: DESC USERusername

Aby zaktualizować domyślną nazwę bazy danych: alter userusername set DEFAULT_NAMESPACE=<database name>.<schema name>. Aby uzyskać więcej informacji, przejdź do dokumentacji usługi Snowflake.

Ograniczenia i zagadnienia

Znane problemy z implementacją łącznika snowflake w wersji 2.0

Obecnie implementacja łącznika Snowflake w wersji 2.0 ma następujące znane problemy. Trwają prace nad poprawką, a dokumentacja zostanie zaktualizowana po wydaniu poprawki.

  • Zapytanie snowflake z logiką count distinct zwraca niepoprawny wynik.
  • Zwiększone użycie pamięci. Ogólny czas ładowania jest zwykle krótszy przy użyciu Implementation="2.0", ale zużycie pamięci może być również wyższe, w niektórych przypadkach powodując problemy, takie jak Resource Governing: This operation was canceled because there wasn't enough memory to finish running it. Either reduce the memory footprint of your dataset by doing things such as limiting the amount of imported data, or if using Power BI Premium, increase the memory of the Premium capacity where this dataset is hosted.

Rozwiązano problemy

Łączniki w nazwach baz danych

Jeśli nazwa bazy danych zawiera łącznik, możesz napotkać element ODBC: ERROR[42000] SQL compilation error. Ten problem został rozwiązany w wersji z września 2024 r.

Wizualizacja fragmentatora dla typu danych boolowskich

Wizualizacja filtrująca dla typu danych logicznych nie działa zgodnie z oczekiwaniami w wydaniu z czerwca 2024 r. Ta niefunkcyjność jest znanym problemem. Jako rozwiązanie tymczasowe użytkownicy mogą konwertować typ danych logicznych w raportach na tekst, przechodząc do: Transfer —> Typ danych —> tekst. Poprawka jest dostępna w wersji z października 2024 r.

Widoki nie są widoczne z ustawieniem Implementation="2.0"

W niektórych wersjach programu Power BI Desktop z marca 2025 r. może wystąpić problem polegający na tym, że widoki nie są widoczne podczas korzystania z łącznika Snowflake implementation 2.0 (Implementation="2.0"). Ten problem został rozwiązany od najnowszej wersji programu Power BI Desktop z marca 2025 r. Aby ponowić próbę, uaktualnij instalację.