Udostępnij za pośrednictwem


Co to jest Photon?

W tym artykule wyjaśniono zalety uruchamiania obciążeń na silniku zapytań Photon.

Photon to wysokowydajny, wektorowy silnik zapytań natywnie zintegrowany z Azure Databricks, który przyspiesza realizację obciążeń SQL oraz wywołań API DataFrame, redukując całkowity koszt na jedno obciążenie. Aplikacja Photon jest zgodna z interfejsami API platformy Apache Spark, dlatego działa z istniejącym kodem.

Funkcje Photon

Poniżej przedstawiono kluczowe funkcje i zalety korzystania z aplikacji Photon.

  • Obsługa operacji SQL i równoważnych ramek danych z tabelami delta i Parquet.
  • Przyspieszone zapytania, które przetwarzają dane szybciej i zawierają agregacje i sprzężenia.
  • Szybsza wydajność w przypadku wielokrotnego uzyskiwania dostępu do danych z pamięci podręcznej dysku.
  • Niezawodna wydajność skanowania w tabelach z wieloma kolumnami i wieloma małymi plikami.
  • Szybsze zapisywanie w usłudze Delta i Parquet przy użyciu UPDATE, DELETE, MERGE INTO, INSERTi CREATE TABLE AS SELECT, w tym szerokich tabel, które zawierają tysiące kolumn.
  • Zamienia sprzężenia sort-merge na sprzężenia skrótów.
  • W przypadku obciążeń sztucznej inteligencji i uczenia maszynowego Photon zwiększa wydajność aplikacji przy użyciu Spark SQL, Spark DataFrames, inżynierii cech, GraphFrames i xgboost4j.

Włączanie funkcji Photon

Włączanie funkcji Photon różni się w zależności od typu obliczeniowego:

  • Narzędzie Photon jest domyślnie uruchamiane w usłudze SQL Warehouse i bezserwerowych obliczeniach dla notesów i przepływów pracy.

Konfigurowanie włączania aplikacji Photon

Aby włączyć lub wyłączyć funkcję Photon w obliczeniach ogólnego przeznaczenia i zadań, zaznacz pole wyboru Użyj przyspieszania Photon w interfejsie użytkownika Compute.

Photon nie jest domyślnie włączony dla żadnych obliczeń utworzonych za pomocą interfejsu API klastrów ani interfejsu API zadań. Aby włączyć program Photon, należy ustawić atrybut runtime_engine na wartość PHOTON.

Obsługiwane typy wystąpień

Photon obsługuje wiele typów wystąpień na węzłach sterowników i węzłach obliczeniowych. Typy instancji Photon zużywają jednostki DBU w innym tempie niż instancje tego samego typu działające w środowisku innym niż Photon. Aby uzyskać więcej informacji na temat wystąpień usługi Photon i użycia jednostek DBU, zobacz stronę cennika usługi Azure Databricks.

Obsługiwane operatory, wyrażenia i typy danych

Poniżej przedstawiono operatory, wyrażenia i typy danych, które obejmuje aplikacja Photon.

Operatorzy

  • Skanowanie, filtrowanie, projekt
  • Haszowanie/Agregowanie/Łączenie/Tasowanie
  • Nested-Loop Dołącz
  • Null-Aware antyłączenie
  • Połączenie, Rozszerzenie, PodzapytanieSkalarne
  • Zlewnia zapisu Delta/Parquet
  • Sortuj
  • Funkcja okna

Wyrażenia

  • Porównanie/logika
  • Arytmetyka/Matematyka (większość)
  • Warunkowe (IF, CASE itp.)
  • Ciąg znaków (często używane)
  • Rzutowanie
  • Agregacje (najczęściej używane)
  • Znacznik daty/godziny

Typy danych

  • Bajt/Krótki/Całkowity/Długi
  • logiczny
  • Ciąg/plik binarny
  • liczba dziesiętna
  • Zmiennoprzecinkowy/podwójny
  • Znacznik daty/godziny
  • Struktura
  • Tablica
  • Mapa

Funkcje wymagające aplikacji Photon

Poniżej przedstawiono funkcje, które wymagają aplikacji Photon.

Ograniczenia

  • Strukturalne przesyłanie strumieniowe: Photon obecnie obsługuje bezstanowe przesyłanie strumieniowe przy użyciu formatów Delta, Parquet, CSV i JSON. Bezstanowe przesyłanie strumieniowe Kafka i Kinesis jest obsługiwane podczas zapisywania w docelowym miejscu Delta lub Parquet.
  • Aplikacja Photon nie obsługuje funkcji zdefiniowanych przez użytkownika, interfejsu API RDD ani interfejsu API zestawów danych.
  • Photon nie ma wpływu na zapytania, które zazwyczaj wykonywane są poniżej dwóch sekund.

Jeśli obciążenie osiągnie nieobsługiwaną operację, zasób obliczeniowy przełączy się na standardowy mechanizm czasu wykonywania dla pozostałej części obciążenia.