ORC-mappning
Använd ORC-mappning för att mappa inkommande data till kolumner i tabeller när källfilen för inmatning är i ORC-format.
Varje element i mappningslistan definierar mappningen för en specifik kolumn. Dessa element konstrueras från tre egenskaper: column
, datatype
och properties
. Läs mer i översikten över datamappningar.
Varje ORC-mappningselement måste innehålla någon av följande valfria egenskaper:
Egenskap | Typ | Description |
---|---|---|
Fält | string |
Namnet på fältet i ORC-posten. |
Sökväg | string |
Om värdet börjar med $ tolkas det som sökvägen till fältet i ORC-dokumentet som blir innehållet i kolumnen i tabellen. Sökvägen som anger hela ORC-posten är $ . Om värdet inte börjar med $ tolkas det som ett konstant värde. Sökvägar som innehåller specialtecken bör vara undantagna som ['Egenskapsnamn']. Mer information finns i JSONPath-syntax. |
ConstValue | string |
Det konstanta värdet som ska användas för en kolumn i stället för något värde i ORC-filen. |
Transformering | string |
Transformering som ska tillämpas på innehållet med mappningstransformeringar. |
Anteckning
Fält och sökväg är ömsesidigt uteslutande.
Följande alternativ är likvärdiga:
[
{"Column": "event_name", "Properties": {"Path": "$.EventName"}}
]
[
{"Column": "event_name", "Properties": {"Field": "EventName"}}
]
Viktigt
För köad inmatning:
- Om tabellen som refereras i mappningen inte finns i databasen skapas den automatiskt, eftersom giltiga datatyper anges för alla kolumner.
- Om en kolumn som refereras till i mappningen inte finns i tabellen läggs den automatiskt till i tabellen som den sista kolumnen första gången data matas in för den kolumnen, givet att en giltig datatyp har angetts för kolumnen. Om du vill lägga till nya kolumner i en mappning använder du kommandot .alter ingestion mapping .
- Data batchindelades med inmatningsegenskaper. Ju mer distinkta egenskaper för inmatningsmappning som används, till exempel olika ConstValue-värden, desto mer fragmenterad blir inmatningen, vilket kan leda till prestandaförsämring.
Exempel
[
{"Column": "event_timestamp", "Properties": {"Path": "$.Timestamp"}},
{"Column": "event_name", "Properties": {"Path": "$.Event.Name"}},
{"Column": "event_type", "Properties": {"Path": "$.Event.Type"}},
{"Column": "event_time", "Properties": {"Path": "$.Timestamp", "Transform": "DateTimeFromUnixMilliseconds"}},
{"Column": "ingestion_time", "Properties": {"ConstValue": "2021-01-01T10:32:00"}},
{"Column": "full_record", "Properties": {"Path": "$"}}
]
Mappningen ovan serialiseras som en JSON-sträng när den tillhandahålls som en del av .ingest
hanteringskommandot.
.ingest into Table123 (@"source1", @"source2")
with
(
format = "orc",
ingestionMapping =
```
[
{"Column": "column_a", "Properties": {"Path": "$.Field1"}},
{"Column": "column_b", "Properties": {"Path": "$.[\'Field name with space\']"}}
]
```
)
Förskapad mappning
När mappningen har skapats i förväg refererar du till mappningen efter namn i hanteringskommandot .ingest
.
.ingest into Table123 (@"source1", @"source2")
with
(
format="orc",
ingestionMappingReference = "ORC_Mapping"
)
Identitetsmappning
Använd ORC-mappning under inmatning utan att definiera ett mappningsschema (se identitetsmappning).
.ingest into Table123 (@"source1", @"source2")
with
(
format="orc"
)
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för