AVRO-leképezés
Az AVRO-leképezéssel a bejövő adatokat táblákon belüli oszlopokra képezheti le, ha a betöltési forrásfájl AVRO formátumú.
A leképezési lista minden eleme meghatározza egy adott oszlop leképezését. Ezek az elemek három tulajdonságból épülnek fel: column
, datatype
és properties
. További információ az adatleképezések áttekintésében.
Minden AVRO-leképezési elemnek az alábbi választható tulajdonságok egyikét kell tartalmaznia:
Tulajdonság | Típus | Description |
---|---|---|
Mező | string |
Az AVRO rekord mezőjének neve. |
Elérési út | string |
Ha az érték azzal kezdődik $ , hogy az AVRO-dokumentumban lévő mező elérési útjaként lesz értelmezve, amely a tábla oszlopának tartalma lesz. A teljes AVRO rekordot leíró elérési út a következő $ : . Ha az érték nem azzal kezdődik $ , hogy az állandó értékként van értelmezve. A speciális karaktereket tartalmazó elérési utakat "Tulajdonságnév" néven kell feloldani. További információ: JSONPath szintaxis. |
ConstValue | string |
Az oszlophoz használandó állandó érték az AVRO-fájlban lévő érték helyett. |
Átalakítás | string |
Átalakítás, amelyet leképezési átalakításokkal kell alkalmazni a tartalomra. |
Megjegyzés
A mező és az elérési út kölcsönösen kizáróak.
A következő alternatívák egyenértékűek:
[
{"Column": "event_name", "Properties": {"Path": "$.EventName"}}
]
[
{"Column": "event_name", "Properties": {"Field": "EventName"}}
]
Fontos
Várólista-betöltés esetén:
- Ha a leképezésben hivatkozott tábla nem létezik az adatbázisban, a rendszer automatikusan létrehozza, mivel az összes oszlophoz érvényes adattípusok vannak megadva.
- Ha a megfeleltetésben hivatkozott oszlop nem létezik a táblában, a rendszer automatikusan hozzáadja a táblához, mint az utolsó oszlopot az adott oszlopra vonatkozó adatok első betöltésekor, mivel az oszlophoz érvényes adattípus van megadva. Ha új oszlopokat szeretne hozzáadni egy leképezéshez, használja a .alter betöltési leképezés parancsot.
- Az adatok kötegelése a betöltési tulajdonságok használatával történik. Minél több különböző betöltési leképezési tulajdonságot használ, például különböző ConstValue értékeket, annál töredezettebbé válik a betöltési folyamat, ami teljesítménycsökkenéshez vezethet.
Példák
[
{"Column": "event_timestamp", "Properties": {"Field": "Timestamp"}},
{"Column": "event_name", "Properties": {"Field": "Name"}},
{"Column": "event_type", "Properties": {"Field": "Type"}},
{"Column": "event_time", "Properties": {"Field": "Timestamp", "Transform": "DateTimeFromUnixMilliseconds"}},
{"Column": "ingestion_time", "Properties": {"ConstValue": "2021-01-01T10:32:00"}},
{"Column": "full_record", "Properties": {"Path": "$"}}
]
A fenti leképezés JSON-sztringként van szerializálva, amikor a .ingest
felügyeleti parancs részeként van megadva.
.ingest into Table123 (@"source1", @"source2")
with
(
format = "AVRO",
ingestionMapping =
```
[
{"Column": "column_a", "Properties": {"Field": "Field1"}},
{"Column": "column_b", "Properties": {"Field": "$.[\'Field name with space\']"}}
]
```
)
Előre létrehozott leképezés
Ha a leképezés előre létrejött, hivatkozzon a leképezésre név szerint a .ingest
felügyeleti parancsban.
.ingest into Table123 (@"source1", @"source2")
with
(
format="AVRO",
ingestionMappingReference = "Mapping_Name"
)
Identitásleképezés
Az AVRO-leképezés használata a betöltés során leképezési séma definiálása nélkül (lásd : identitásleképezés).
.ingest into Table123 (@"source1", @"source2")
with
(
format="AVRO"
)
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: