Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób konfigurowania formatu Parquet w potoku usługi Data Factory w usłudze Microsoft Fabric.
Obsługiwane możliwości
Format Parquet jest obsługiwany w przypadku następujących działań i łączników jako źródła i miejsca docelowego.
| Kategoria | Łącznik/działanie |
|---|---|
| Obsługiwany łącznik | Amazon S3 |
| Zgodność z usługą Amazon S3 | |
| Azure Blob Storage | |
| Usługa Azure Data Lake Storage 1. generacji | |
| Azure Data Lake Storage Gen2 | |
| Azure Files | |
| System plików | |
| FTP | |
| Google Cloud Storage | |
| HTTP | |
| Pliki lakehouse | |
| Oracle Cloud Storage | |
| SFTP | |
| Obsługiwane działanie | działanie Kopiuj (źródło/miejsce docelowe) |
| Działanie Lookup | |
| Działanie GetMetadata | |
| Działanie usuwania |
Format Parquet w działaniu kopiowania
Aby skonfigurować format Parquet, wybierz połączenie w źródle lub miejscu docelowym działania kopiowania potoku, a następnie wybierz pozycję Parquet z listy rozwijanej Format pliku. Wybierz pozycję Ustawienia , aby uzyskać dalszą konfigurację tego formatu.
Format Parquet jako źródło
Po wybraniu pozycji Ustawienia w sekcji Format pliku w oknie dialogowym Ustawienia formatu pliku zostaną wyświetlone następujące właściwości.
- Typ kompresji: wybierz koder-dekoder kompresji używany do odczytywania plików Parquet na liście rozwijanej. Możesz wybrać spośród opcji None, gzip (.gz), snappy, lzo, Brotli (.br), Zstandard, lz4, lz4frame, bzip2 (.bz2), lub lz4hadoop.
Format Parquet jako miejsce docelowe
Po wybraniu pozycji Ustawienia zostaną wyświetlone następujące właściwości w wyskakującym oknie dialogowym Ustawienia formatu pliku.
Typ kompresji: wybierz koder-dekoder kompresji używany do zapisywania plików Parquet na liście rozwijanej. Możesz wybrać spośród opcji None, gzip (.gz), snappy, lzo, Brotli (.br), Zstandard, lz4, lz4frame, bzip2 (.bz2), lub lz4hadoop.
Użyj opcji V-Order: włącz optymalizację czasu zapisu w formacie pliku parquet. Aby uzyskać więcej informacji, zobacz Delta Lake table optimization and V-Order (Optymalizacja tabel usługi Delta Lake) i V-Order (Kolejność maszyn wirtualnych). Jest ona domyślnie włączona.
W obszarze Ustawienia zaawansowane na karcie Miejsce docelowe zostaną wyświetlone następujące właściwości powiązane z formatem Parquet.
- Maksymalna liczba wierszy na plik: podczas zapisywania danych w folderze można zapisać w wielu plikach i określić maksymalną liczbę wierszy na plik. Określ maksymalną liczbę wierszy, które mają być zapisywane dla każdego pliku.
-
Prefiks nazwy pliku: ma zastosowanie, gdy skonfigurowano maksymalną liczbę wierszy na plik . Określ prefiks nazwy pliku podczas zapisywania danych w wielu plikach, co spowodowało następujący wzorzec:
<fileNamePrefix>_00000.<fileExtension>. Jeśli nie zostanie określony, prefiks nazwy pliku jest generowany automatycznie. Ta właściwość nie ma zastosowania, gdy źródło jest magazynem opartym na plikach lub opcją partycji włączonego magazynu danych.
Mapowanie
W przypadku konfiguracji karty Mapping, jeśli nie zastosujesz formatu Parquet jako docelowego magazynu danych, przejdź do Mapping.
Edytowanie docelowych typów danych
Podczas kopiowania danych do łącznika docelowego w formacie Parquet, z wyjątkiem konfiguracji w Mapowaniu, można określić typy kolumn docelowych po włączeniu zaawansowanych ustawień typów Parquet. Można również skonfigurować opcję IsNullable, aby określić, czy każda kolumna w docelowym pliku Parquet pozwala na wartości null. Wartość domyślna dla IsNullable to true.
Następujące mapowania są stosowane dla przejściowych typów danych obsługiwanych wewnętrznie przez usługę do edycji na typy danych Parquet.
| Typ danych usługi tymczasowej | Typ logiczny Parquet | Typ fizyczny Parquet |
|---|---|---|
| DateTime | Opcja 1: null Opcja 2: Znacznik czasu |
Opcja 1: INT96 (ustawienie domyślne) Opcja 2: INT64 (jednostka: MILLIS, MICROS, NANOS (wartość domyślna)) |
| DateTimeOffset | Opcja 1: null Opcja 2: sygnatura czasowa |
Opcja 1: INT96 (ustawienie domyślne) Opcja 2: INT64 (jednostka: MILLIS, MICROS, NANOS (wartość domyślna)) |
| TimeSpan | TIME | INT32 (Jednostka: MILLIS) INT64 (Jednostka: MICROS, NANOS (wartość domyślna)) |
| Decimal | DZIESIĘTNY | INT32 (1 <= precyzja <= 9) INT64 (9 < precyzja < = 18) FIXED_LEN_BYTE_ARRAY (precyzja > 18) (wartość domyślna) |
| GUID | Opcja 1. CIĄG Opcja 2: UUID |
Opcja 1: BYTE_ARRAY (ustawienie domyślne) Opcja 2: FIXED_LEN_BYTE_ARRAY |
| Tablica bajtów | null | BYTE_ARRAY (ustawienie domyślne) lub FIXED_LEN_BYTE_ARRAY |
Na przykład typ kolumny decimalData w źródle jest konwertowany na typ usługi tymczasowej: Decimal. Zgodnie z tabelą mapowania powyżej typ mapowany dla kolumny docelowej jest automatycznie określany zgodnie z określoną dokładnością. Jeśli precyzja jest 9 lub mniejsza, jest przypisywana do INT32. W przypadku wartości dokładności powyżej 9 i do 18 jest mapowany na INT64. Jeśli precyzja przekroczy 18, jest mapowana na FIXED_LEN_BYTE_ARRAY.
Mapowanie typów danych dla Parquet
Podczas kopiowania danych z łącznika źródłowego w formacie Parquet następujące mapowania są używane z typów danych Parquet do tymczasowych typów danych używanych przez usługę wewnętrznie.
| Typ logiczny Parquet | Typ fizyczny Parquet | Typ danych usługi tymczasowej |
|---|---|---|
| null | BOOLEAN | logiczny |
| INT(8, true) | INT32 | SByte |
| INT(8, fałsz) | INT32 | Bajt |
| INT(16, prawda) | INT32 | Int16 |
| INT(16, false) | INT32 | UInt16 |
| INT(32, true) | INT32 | Int32 |
| INT(32, false) | INT32 | UInt32 |
| INT(64, true) | INT64 | Int64 |
| INT(64, fałsz) | INT64 | UInt64 |
| null | FLOAT | Single |
| null | PODWÓJNY | Double |
| DZIESIĘTNY | INT32, INT64, FIXED_LEN_BYTE_ARRAY lub BYTE_ARRAY | Decimal |
| DATE | INT32 | Date |
| TIME | INT32 lub INT64 | DateTime |
| TIMESTAMP | INT64 | DateTime |
| ENUM | Tablica bajtów | Sznurek |
| UUID | FIXED_LEN_BYTE_ARRAY | GUID |
| null | Tablica bajtów | Tablica bajtów |
| STRING | Tablica bajtów | Sznurek |
Podczas kopiowania danych do łącznika docelowego w formacie Parquet, używane są następujące mapowania, które przekształcają tymczasowe typy danych stosowane wewnętrznie przez usługę na typy danych Parquet.
| Typ danych usługi tymczasowej | Typ logiczny Parquet | Typ fizyczny Parquet |
|---|---|---|
| logiczny | null | BOOLEAN |
| SByte | INT | INT32 |
| Bajt | INT | INT32 |
| Int16 | INT | INT32 |
| UInt16 | INT | INT32 |
| Int32 | INT | INT32 |
| UInt32 | INT | INT32 |
| Int64 | INT | INT64 |
| UInt64 | INT | INT64 |
| Single | null | FLOAT |
| Double | null | PODWÓJNY |
| DateTime | null | INT96 |
| DateTimeOffset | null | INT96 |
| Date | DATE | INT32 |
| TimeSpan | TIME | INT64 |
| Decimal | DZIESIĘTNY | INT32, INT64 lub FIXED_LEN_BYTE_ARRAY |
| GUID | STRING | Tablica bajtów |
| Sznurek | STRING | Tablica bajtów |
| Tablica bajtów | null | Tablica bajtów |
Podsumowanie tabeli
Parquet jako źródło
Poniższe właściwości są obsługiwane w sekcji Źródło działania kopiowania w przypadku korzystania z formatu Parquet.
| Nazwa/nazwisko | Opis | Wartość | Wymagania | Właściwość skryptu JSON |
|---|---|---|---|---|
| Format pliku | Format pliku, którego chcesz użyć. | Parkiet | Tak | type (w obszarze datasetSettings):Parquet |
| Typ kompresji | Koder koder kompresji używany do odczytywania plików Parquet. | Wybierz jedną z: Brak gzip (.gz) Żwawy lzo Brotli (br) Zstandard lz4 lz4frame bzip2 (bz2) lz4hadoop |
Nie. | compressionCodec: gzip Żwawy lzo brotli zstd lz4 lz4frame bz2 lz4hadoop |
Parquet jako miejsce docelowe
Poniższe właściwości są obsługiwane w sekcji Miejsce docelowe działania kopiowania w przypadku korzystania z formatu Parquet.
| Nazwa/nazwisko | Opis | Wartość | Wymagania | Właściwość skryptu JSON |
|---|---|---|---|---|
| Format pliku | Format pliku, którego chcesz użyć. | Parkiet | Tak | type (w obszarze datasetSettings):Parquet |
| Użyj polecenia V-Order | Optymalizacja czasu zapisu w formacie pliku parquet. | zaznaczone lub niezaznaczone | Nie. | enableVertiParquet |
| Typ kompresji | Koder koder kompresji używany do pisania plików Parquet. | Wybierz jedną z: Brak gzip (.gz) Żwawy lzo Brotli (br) Zstandard lz4 lz4frame bzip2 (bz2) lz4hadoop |
Nie. | compressionCodec: gzip Żwawy lzo brotli zstd lz4 lz4frame bz2 lz4hadoop |
| Maksymalna liczba wierszy na plik | Podczas zapisywania danych w folderze można zapisać w wielu plikach i określić maksymalną liczbę wierszy na plik. Określ maksymalną liczbę wierszy, które mają być zapisywane dla każdego pliku. | <maksymalna liczba wierszy na plik> | Nie. | maxRowsPerFile |
| Prefiks nazwy pliku | Ma zastosowanie w przypadku skonfigurowania maksymalnej liczby wierszy na plik . Określ prefiks nazwy pliku podczas zapisywania danych w wielu plikach, co spowodowało następujący wzorzec: <fileNamePrefix>_00000.<fileExtension>. Jeśli nie zostanie określony, prefiks nazwy pliku jest generowany automatycznie. Ta właściwość nie ma zastosowania, gdy źródło jest magazynem opartym na plikach lub opcją partycji włączonego magazynu danych. |
<prefiks nazwy pliku> | Nie. | fileNamePrefix |