Поделиться через


Сопоставление CSV

Область применения: ✅Microsoft Fabric✅Azure Data Explorer

Сопоставление CSV для сопоставления входящих данных с столбцами внутри таблиц, если исходный файл приема является любым из следующих табличных форматов, разделенных разделителями: CSV, TSV, PSV, SCSV, SOHsv, TXT и RAW. Дополнительные сведения см. в поддерживаемых форматах данных.

Каждый элемент в списке сопоставлений определяет сопоставление для определенного столбца. Эти элементы создаются из трех свойств: column, datatypeи properties. Дополнительные сведения см. в обзоре сопоставлений данных.

Каждый элемент сопоставления CSV должен содержать любой из следующих необязательных свойств:

Свойство Type Описание
Порядковый int Номер заказа столбца в CSV-файле.
ConstValue string Константное значение, используемое для столбца, а не какое-то значение внутри CSV-файла.
Преобразование string Преобразование, которое должно применяться к содержимому с преобразованиями сопоставления. Единственным поддерживаемым преобразованием является SourceLocation.

Примечание.

  • При ConstValue использовании Ordinal или SourceLocation преобразовании должно быть не задано.
  • Для форматов TXT и RAW можно сопоставить только Ordinal 0, так как текст рассматривается как один столбец строк.

Внимание

Для приема в очереди:

  • Если таблица, указанная в сопоставлении, не существует в базе данных, она создается автоматически, учитывая, что допустимые типы данных указаны для всех столбцов.
  • Если столбец, на который ссылается сопоставление, не существует в таблице, он автоматически добавляется в таблицу в качестве последнего столбца при первом приеме данных для этого столбца, если для этого столбца указан допустимый тип данных. Чтобы добавить новые столбцы в сопоставление, используйте команду сопоставления .alter ingestion.
  • Данные пакетируются с помощью свойств приема. Чем больше уникальных свойств сопоставления приема, таких как различные значения ConstValue, тем больше фрагментировано прием становится, что может привести к снижению производительности.

Примеры

[
  {"Column": "event_time", "Properties": {"Ordinal": "0"}},
  {"Column": "event_name", "Properties": {"Ordinal": "1"}},
  {"Column": "event_type", "Properties": {"Ordinal": "2"}},
  {"Column": "ingestion_time", "Properties": {"ConstValue": "2023-01-01T10:32:00"}}
  {"Column": "source_location", "Properties": {"Transform": "SourceLocation"}}
]

Приведенное выше сопоставление сериализуется как строка JSON, когда она предоставляется в рамках .ingest команды управления.

.ingest into Table123 (@"source1", @"source2")
    with
    (
        format="csv",
        ingestionMapping =
        ```
        [
            {"Column": "event_time", "Properties": {"Ordinal": "0"}},
            {"Column": "event_name", "Properties": {"Ordinal": "1"}},
            {"Column": "event_type", "Properties": {"Ordinal": "2"}},
            {"Column": "ingestion_time", "Properties": {"ConstValue": "2023-01-01T10:32:00"}},
            {"Column": "source_location", "Properties": {"Transform": "SourceLocation"}}
        ]
        ```
    )

Предварительно созданное сопоставление

При предварительном создании сопоставления сослаться на сопоставление по имени в команде .ingest управления.

.ingest into Table123 (@"source1", @"source2")
    with
    (
        format="csv",
        ingestionMappingReference = "MappingName"
    )

Сопоставление удостоверений

Используйте сопоставление CSV во время приема без определения схемы сопоставления (см . сопоставление удостоверений).

.ingest into Table123 (@"source1", @"source2")
    with
    (
        format="csv"
    )