Formaty danych obsługiwane przez analizę w czasie rzeczywistym
Pozyskiwanie danych to proces, za pomocą którego dane są dodawane do tabeli i udostępniane do wykonywania zapytań w analizie czasu rzeczywistego. W przypadku wszystkich metod pozyskiwania, innych niż pozyskiwanie z zapytania, dane muszą być w jednym z obsługiwanych formatów. W poniższej tabeli wymieniono i opisano formaty obsługiwane przez analizę w czasie rzeczywistym na potrzeby pozyskiwania danych.
Uwaga
Przed pozyskiwaniem danych upewnij się, że dane są prawidłowo sformatowane i definiują oczekiwane pola. Zalecamy użycie preferowanego modułu sprawdzania poprawności w celu potwierdzenia, że format jest prawidłowy. Na przykład można znaleźć następujące moduły sprawdzania poprawności przydatne do sprawdzania plików CSV lub JSON:
- CSV: http://csvlint.io/
- JSON: https://jsonlint.com/
Aby uzyskać więcej informacji na temat przyczyn niepowodzenia pozyskiwania, zobacz Błędy pozyskiwania.
Formatuj | Numer wewnętrzny | opis |
---|---|---|
ApacheAvro | .avro |
Format AVRO z obsługą typów logicznych. Obsługiwane są następujące kodery kompresji: null , deflate i snappy . Implementacja czytnika apacheavro formatu jest oparta na oficjalnej bibliotece Apache Avro. Aby uzyskać informacje na temat pozyskiwania plików Avro przechwytywania usługi Event Hubs, zobacz Mapowanie schematu dla plików Avro przechwytywania usługi Event Hubs. |
Avro | .avro |
Starsza implementacja formatu AVRO oparta na bibliotece .NET. Obsługiwane są następujące kodery kompresji: null , deflate (dla snappy — użyj ApacheAvro formatu danych). |
CSV | .csv |
Plik tekstowy z wartościami rozdzielanymi przecinkami (, ). Zobacz RFC 4180: Wspólny format i typ MIME dla plików wartości rozdzielanych przecinkami (CSV). |
JSON | .json |
Plik tekstowy z obiektami JSON rozdzielanymi przez \n lub \r\n . Zobacz Wiersze JSON (JSONL). |
MultiJSON | .multijson |
Plik tekstowy z tablicą JSON torby właściwości (każdy reprezentujący rekord) lub dowolną liczbę torby właściwości rozdzielonych odstępami \n lub \r\n . Każda torba właściwości może być rozłożona na wiele linii. Ten format jest preferowany w JSON przypadku elementu , chyba że dane są workami niewłaściwościowymi. |
ORK | .orc |
Plik ORC. |
Parquet | .parquet |
Plik Parquet. |
PSV | .psv |
Plik tekstowy z wartościami rozdzielanymi potokami (| ). |
SUROWY | .raw |
Plik tekstowy, którego cała zawartość jest pojedynczą wartością ciągu. |
SCsv | .scsv |
Plik tekstowy z wartościami rozdzielanymi średnikami (; ). |
SOHsv | .sohsv |
Plik tekstowy z wartościami rozdzielanymi SOH. (SOH to kodowy punkt ASCII 1; ten format jest używany przez program Hive w usłudze HDInsight). |
TSV | .tsv |
Plik tekstowy z wartościami rozdzielanymi tabulatorami (\t ). |
TSVE | .tsv |
Plik tekstowy z wartościami rozdzielanymi tabulatorami (\t ). Znak ukośnika odwrotnego (\ ) jest używany do ucieczki. |
TXT | .txt |
Plik tekstowy z wierszami rozdzielanymi przez \n . Puste wiersze są pomijane. |
W3CLOGFILE | .log |
Format pliku dziennika sieci Web ustandaryzowany przez W3C. |
Uwaga
- Pozyskiwanie z systemów magazynowania danych, które zapewniają funkcjonalność ACID na podstawie zwykłych plików formatu Parquet (np. Apache Iceberg, Apache Hudi) nie jest obsługiwane.
- Bez schematu Avro nie jest obsługiwane
Obsługiwane formaty kompresji danych
Obiekty blob i pliki można skompresować za pomocą dowolnego z następujących algorytmów kompresji:
Kompresja | Numer wewnętrzny |
---|---|
GZip | .gz |
Zip | .zip |
Wskaż kompresję, dołączając rozszerzenie do nazwy obiektu blob lub pliku.
Na przykład:
MyData.csv.zip
wskazuje obiekt blob lub plik sformatowany jako CSV, skompresowany z plikiem ZIP (archiwum lub pojedynczy plik)MyData.json.gz
wskazuje obiekt blob lub plik sformatowany jako JSON, skompresowany za pomocą biblioteki GZip.
Obsługiwane są również nazwy obiektów blob lub plików, które nie zawierają rozszerzeń formatu, MyData.zip
ale tylko kompresja (na przykład ). W takim przypadku format pliku musi być określony jako właściwość pozyskiwania, ponieważ nie można go wywnioskować.
Uwaga
- Niektóre formaty kompresji śledzą oryginalne rozszerzenie pliku w ramach skompresowanego strumienia. To rozszerzenie jest zwykle ignorowane do określania formatu pliku. Jeśli nie można określić formatu pliku z (skompresowanego) obiektu blob lub nazwy pliku, należy go określić za pomocą właściwości pozyskiwania
format
. - Nie należy mylić z wewnętrznym (poziom fragmentu) koderem kompresji używanym przez
Parquet
formatyAVRO
iORC
. Nazwa kompresji wewnętrznej jest zwykle dodawana do nazwy pliku przed rozszerzeniem formatu pliku, na przykład:file1.gz.parquet
,file1.snappy.avro
, itp.