Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье описывается настройка формата Parquet в конвейере Data Factory в Microsoft Fabric.
Поддерживаемые возможности
Формат Parquet поддерживается для следующих действий и соединителей в качестве источника и назначения.
| Категория | Соединитель или действие |
|---|---|
| Поддерживаемый соединитель | Amazon S3 |
| Совместимая с Amazon S3 | |
| Хранилище BLOB-объектов Azure | |
| Azure Data Lake Storage 2-го поколения | |
| Файлы Azure | |
| Файловая система | |
| FTP | |
| Google Cloud Storage | |
| HTTP | |
| Lakehouse Files | |
| Хранилище Oracle Cloud | |
| SFTP | |
| Поддерживаемая активность | Действие копирования (источник или назначение) |
| Операция поиска | |
| Активность получения метаданных | |
| Удаление действия |
Формат Parquet при копировании
Чтобы настроить формат Parquet, выберите подключение в источнике или приёмнике копирования данных, а затем выберите Parquet в раскрывающемся списке формата файла. Выберите параметры для дальнейшей настройки этого формата.
Формат Parquet в качестве источника
После выбора параметров в разделе "Формат файла" в диалоговом окне "Всплывающие параметры формата файла" отображаются следующие свойства.
- Тип сжатия: выберите кодек сжатия, используемый для чтения файлов Parquet в раскрывающемся списке. Вы можете выбрать из None, gzip (.gz), snappy, lzo, Brotli (.br), Zstandard, lz4, lz4frame, bzip2 (.bz2) или lz4hadoop.
Формат Parquet как место назначения
После выбора Настройки в диалоговом окне настроек формата файла отображаются следующие свойства.
Тип сжатия: выберите кодек сжатия, используемый для записи файлов Parquet в раскрывающемся списке. Вы можете выбрать из None, gzip (.gz), snappy, lzo, Brotli (.br), Zstandard, lz4, lz4frame, bzip2 (.bz2), или lz4hadoop.
Используйте V-Order: включите оптимизацию времени записи в формат файла parquet. Дополнительные сведения см. в разделе "Оптимизация таблицы Delta Lake" и "V-Order". Он включен по умолчанию.
В разделе „Дополнительные настройки“ на вкладке „Назначение“ отображаются следующие свойства, связанные с форматом Parquet.
- Максимальное количество строк для каждого файла: при записи данных в папку можно выбрать запись в несколько файлов и указать максимальные строки для каждого файла. Укажите максимальные строки, которые требуется записать для каждого файла.
-
Префикс имени файла: применимо, если настроены максимальные строки для каждого файла . Укажите префикс имени файла при записи данных в несколько файлов, в результате чего используется следующий шаблон:
<fileNamePrefix>_00000.<fileExtension>. Если имя файла не указано, префикс имени файла создается автоматически. Это свойство не применяется, если источник является хранилищем данных на основе файлов или хранилищем данных с включенной опцией разделов.
Картирование
Если вы не применяете формат Parquet в качестве целевого хранилища данных, перейдите в раздел "Сопоставление".
Изменение типов данных назначения
При копировании данных в целевой соединитель в формате Parquet, не считая конфигурации в Mapping, можно указать определенные типы столбцов назначения после включения параметров расширенного типа Parquet. Можно также настроить параметр IsNullable, чтобы указать, допускает ли каждый целевой столбец Parquet значения NULL. Значение по умолчанию для IsNullable — это true.
Следующие сопоставления используются из промежуточных типов данных, поддерживаемых службой для внутреннего редактирования, в типы данных Parquet.
| Тип данных временной службы | Логический тип Parquet | Физический тип Parquet |
|---|---|---|
| DateTime | Вариант 1: null Вариант 2. TIMESTAMP |
Вариант 1. INT96 (по умолчанию) Вариант 2: INT64 (единица: МИЛЛИ, МИКРОС, NANOS (по умолчанию)) |
| DateTimeOffset | Вариант 1: null Вариант 2. TIMESTAMP |
Вариант 1. INT96 (по умолчанию) Вариант 2: INT64 (единица: МИЛЛИ, МИКРОС, NANOS (по умолчанию)) |
| TimeSpan | TIME | INT32 (единица: МИЛЛИСЕКУНДЫ) INT64 (единица: MICROS, NANOS (по умолчанию)) |
| Decimal | ДЕСЯТИЧНЫЙ | INT32 (1 <= точность <= 9) INT64 (9 < точность <= 18) FIXED_LEN_BYTE_ARRAY (точность > 18) (по умолчанию) |
| GUID | Вариант 1. СТРОКА Вариант 2. UUID |
Вариант 1. BYTE_ARRAY (по умолчанию) Опция 2: FIXED_LEN_BYTE_ARRAY |
| Массив байтов | ноль | BYTE_ARRAY (по умолчанию) или FIXED_LEN_BYTE_ARRAY |
Например, тип столбца decimalData в источнике преобразуется в промежуточный тип службы: Decimal. Согласно приведенной выше таблице сопоставления, сопоставленный тип для целевого столбца автоматически определяется в соответствии с указанной точностью. Если точность равна 9 или меньше, она сопоставляется с INT32. Для значений точности выше 9 и до 18 он сопоставляется с INT64. Если точность превышает 18, она сопоставляется с FIXED_LEN_BYTE_ARRAY.
Сопоставление типов данных для Parquet
При копировании данных из исходного соединителя в формате Parquet используются следующие сопоставления типов данных Parquet с промежуточными типами данных, применяемыми службой.
| Логический тип Parquet | Физический тип Parquet | Тип данных временной службы |
|---|---|---|
| ноль | BOOLEAN | Boolean |
| INT(8, истина) | INT32 | SByte |
| INT(8, false) | INT32 | Байт |
| INT(16, true) | INT32 | Int16 |
| INT(16, false) | INT32 | UInt16 |
| INT(32, true) | INT32 | Int32 |
| INT(32, false) | INT32 | UInt32 |
| INT(64, true) | INT64 | Int64 |
| INT(64, false) | INT64 | UInt64 |
| ноль | FLOAT | Single |
| ноль | ДВОЙНОЙ | Double |
| ДЕСЯТИЧНЫЙ | INT32, INT64, FIXED_LEN_BYTE_ARRAY или BYTE_ARRAY | Decimal |
| DATE | INT32 | Date |
| TIME | INT32 или INT64 | DateTime |
| TIMESTAMP | INT64 | DateTime |
| ENUM | Массив байтов | String |
| UUID | FIXED_LEN_BYTE_ARRAY | GUID |
| ноль | Массив байтов | Массив байтов |
| STRING | Массив байтов | String |
При копировании данных в целевой соединитель в формате Parquet используются следующие сопоставления промежуточных типов данных, которые служба использует для преобразования в типы данных Parquet.
| Тип данных временной службы | Логический тип Parquet | Физический тип Parquet |
|---|---|---|
| Boolean | ноль | BOOLEAN |
| SByte | INT | INT32 |
| Байт | INT | INT32 |
| Int16 | INT | INT32 |
| UInt16 | INT | INT32 |
| Int32 | INT | INT32 |
| UInt32 | INT | INT32 |
| Int64 | INT | INT64 |
| UInt64 | INT | INT64 |
| Single | ноль | FLOAT |
| Double | ноль | ДВОЙНОЙ |
| DateTime | ноль | INT96 |
| DateTimeOffset | ноль | INT96 |
| Date | DATE | INT32 |
| TimeSpan | TIME | INT64 |
| Decimal | ДЕСЯТИЧНЫЙ | INT32, INT64 или FIXED_LEN_BYTE_ARRAY |
| GUID | STRING | Массив байтов |
| String | STRING | Массив байтов |
| Массив байтов | ноль | Массив байтов |
Сводка таблицы
Parquet в качестве источника
Следующие свойства поддерживаются в разделе источника действия копирования при использовании формата Parquet.
| Имя | Описание | Значение | Обязательное поле | Свойство скрипта JSON |
|---|---|---|---|---|
| Формат файлов | Формат файла, который требуется использовать. | Parquet | Да | тип (под datasetSettings):Паркет |
| Тип сжатия | Кодек сжатия, используемый для чтения файлов Parquet. | Выберите один из вариантов: Не допускается gzip (.gz) быстрый lzo Brotli (.br) Zstandard lz4 lz4frame bzip2 (.bz2) lz4hadoop |
Нет | compressionCodec: gzip быстрый lzo brotli zstd lz4 lz4frame bz2 lz4hadoop |
Parquet в качестве места назначения
Следующие свойства поддерживаются в разделе назначения активности копирования с использованием формата Parquet.
| Имя | Описание | Значение | Обязательное поле | Свойство скрипта JSON |
|---|---|---|---|---|
| Формат файлов | Формат файла, который требуется использовать. | Parquet | Да | тип (под datasetSettings):Паркет |
| Использование V-Order | Оптимизация скорости записи для формата файла Parquet. | выбрано или не выбрано | Нет | enableVertiParquet |
| Тип сжатия | Кодек сжатия, используемый для записи файлов Parquet. | Выберите один из вариантов: Не допускается gzip (.gz) быстрый lzo Brotli (.br) Zstandard lz4 lz4frame bzip2 (.bz2) lz4hadoop |
Нет | compressionCodec: gzip быстрый lzo brotli zstd lz4 lz4frame bz2 lz4hadoop |
| Максимальное количество строк на файл | При записи данных в папку можно выбрать запись в несколько файлов и указать максимальные строки для каждого файла. Укажите максимальные строки, которые требуется записать для каждого файла. | <максимальное количество строк на файл> | Нет | maxRowsPerFile |
| Префикс имени файла | Применимо, если настроены максимальные строки для каждого файла . Укажите префикс имени файла при записи данных в несколько файлов, в результате чего используется следующий шаблон: <fileNamePrefix>_00000.<fileExtension>. Если имя файла не указано, префикс имени файла создается автоматически. Это свойство не применяется, если источник является хранилищем данных на основе файлов или хранилищем данных с включенной опцией разделов. |
<префикс имени файла> | Нет | Префикс имени файла |