Sdílet prostřednictvím


Mapování sdíleného svazku clusteru

Platí pro: ✅Microsoft FabricAzure Data Explorer

Mapování CSV použijte k mapování příchozích dat do sloupců uvnitř tabulek, pokud je zdrojový soubor příjmu libovolný z následujících tabulkových formátů oddělených oddělovačem: CSV, TSV, PSV, SCSV, SOHsv, TXT a RAW. Další informace najdete v podporovaných formátech dat.

Každý prvek v seznamu mapování definuje mapování pro určitý sloupec. Tyto prvky jsou tvořeny ze tří vlastností: column, datatypea properties. Další informace najdete v přehledu mapování dat.

Každý element mapování CSV musí obsahovat jednu z následujících volitelných vlastností:

Vlastnost Type Popis
Řadová číslovka int Číslo pořadí sloupců ve sdíleném svazku clusteru
ConstValue string Konstantní hodnota, která se má použít pro sloupec místo hodnoty uvnitř souboru CSV.
Transformace string Transformace, která by se měla použít u obsahu s transformacemi mapování Jedinou podporovanou transformací je SourceLocation.

Poznámka:

  • Při ConstValue použití nebo SourceLocation transformace Ordinal musí být nenasaděné.
  • U formátů TXT a RAW lze mapovat pouze Ordinal 0, protože text se považuje za jeden sloupec řádků.

Důležité

Příjem dat ve frontě:

  • Pokud tabulka odkazovaná v mapování v databázi neexistuje, vytvoří se automaticky vzhledem k tomu, že platné datové typy jsou zadány pro všechny sloupce.
  • Pokud sloupec odkazovaný v mapování v tabulce neexistuje, přidá se automaticky do tabulky jako poslední sloupec při prvním ingestování dat pro tento sloupec, protože je pro sloupec zadaný platný datový typ. Pokud chcete do mapování přidat nové sloupce, použijte příkaz .alter ingestion mapping.
  • Data se dávková pomocí vlastností příjmu dat. Čím více jedinečných vlastností mapování příjmu dat, jako jsou různé hodnoty ConstValue, tím více fragmentovaný příjem dat se stane, což může vést ke snížení výkonu.

Příklady

[
  {"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"}}
]

Výše uvedené mapování je serializováno jako řetězec JSON, pokud je k dispozici jako součást .ingest příkazu pro správu.

.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"}}
        ]
        ```
    )

Předem vytvořené mapování

Při předběžném vytvoření mapování namapujte podle názvu v .ingest příkazu pro správu.

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

Mapování identit

Mapování sdíleného svazku clusteru můžete použít během příjmu dat bez definování schématu mapování (viz mapování identit).

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