Folyamatos adatexportálás áttekintése

Szolgáltatások váltása a Verzió legördülő listával. További információ a navigációról.
A következőre vonatkozik: ✅ Microsoft Fabric ✅ Azure Data Explorer

Ez a cikk az adatok kusto-ból való folyamatos exportálását ismerteti egy külső táblába, rendszeresen futtatott lekérdezéssel. Az eredmények a külső táblában vannak tárolva, amely meghatározza a célhelyet, például az Azure Blob Storage-ot és az exportált adatok sémáját. Ez a folyamat garantálja, hogy minden rekord "pontosan egyszer" lesz exportálva, néhány kivétellel.

Alapértelmezés szerint a folyamatos exportálás elosztott módban fut, ahol az összes csomópont egyidejűleg exportál, így az összetevők száma a csomópontok számától függ. A folyamatos exportálás nem kis késésű streamelési adatokhoz készült.

A folyamatos adatexportálás engedélyezéséhez hozzon létre egy külső táblát, majd hozzon létre egy folyamatos exportálási definíciót, a külső táblára mutasson.

Bizonyos esetekben egy folyamatos exportálási feladat sikeres konfigurálásához felügyelt identitást kell használnia. További információ: Felügyelt identitás használata folyamatos exportálási feladat futtatásához.

Engedélyek

Minden folyamatos exportálási parancshoz legalább adatbázis-rendszergazdai engedély szükséges.

Folyamatos exportálási irányelvek

  • Kimeneti séma:

    • Az exportálási lekérdezés kimeneti sémájának meg kell egyeznie annak a külső táblának a sémával, amelyhez exportált.
  • gyakorisági:

    • A folyamatos exportálás a intervalBetweenRuns tulajdonságban konfigurált időtartamnak megfelelően fut. Az intervallum ajánlott értéke legalább néhány perc, attól függően, hogy milyen késéseket szeretne elfogadni. Az időintervallum akár egy perc is lehet, ha a betöltési sebesség magas.

      Jegyzet

      A intervalBetweenRuns csak javaslatként szolgál, és nem garantáltan pontos. A folyamatos exportálás nem alkalmas rendszeres összesítések exportálására. Az óránkénti összesítéssel (intervalBetweenRuns) rendelkező =1hT | summarize by bin(Timestamp, 1h) konfigurációja például nem a várt módon fog működni, mivel a folyamatos exportálás nem fog pontosan óránként futni. Ezért minden óránkénti tároló több bejegyzést fog kapni az exportált adatokban.

  • Fájlok száma:

    • Az egyes folyamatos exportálási iterációkban exportált fájlok száma a külső tábla particionálásától függ. További információ: exportálás külső táblába parancs. Minden folyamatos exportálási iteráció mindig új fájlokba ír, és soha nem fűzi hozzá a meglévőket. Ennek eredményeképpen az exportált fájlok száma attól is függ, hogy milyen gyakorisággal fut a folyamatos exportálás. A gyakorisági paraméter intervalBetweenRuns.
  • Külső táblatároló-fiókok:

    • A legjobb teljesítmény érdekében az adatbázist és a tárfiókokat ugyanabban az Azure-régióban kell áthelyezni.
    • A folyamatos exportálás elosztott módon működik, így az összes csomópont egyidejűleg exportál. Nagy adatbázisokon, és ha az exportált adatmennyiség nagy, ez tárolási szabályozáshoz vezethet. A javaslat az, hogy több tárfiókot konfiguráljon a külső táblához. További információ: tárolási hibák az exportálási parancsoksorán.

Pontosan egyszer exportálás

A "pontosan egyszer" exportálás garantálásához a folyamatos exportálás adatbázis-kurzorokat. A folyamatos exportálási lekérdezés nem tartalmazhat időbélyeg-szűrőt – az adatbázis-kurzorok mechanizmusa biztosítja, hogy a rekordok ne dolgozzanak fel többször. Ha időbélyegszűrőt ad hozzá a lekérdezéshez, az az exportált adatok hiányzó adataihoz vezethet.

IngestionTime házirend engedélyezni kell a lekérdezésben hivatkozott összes táblán, amelyeket "pontosan egyszer" kell feldolgozni az exportálásban. A szabályzat alapértelmezés szerint engedélyezve van az összes újonnan létrehozott táblában.

A "pontosan egyszer" exportálásra vonatkozó garancia csak a exportált összetevők parancsban jelentett fájlokra vonatkozik,. A folyamatos exportálás nem garantálja, hogy minden rekord csak egyszer lesz megírva a külső táblába. Ha az exportálás megkezdése után hiba történik, és néhány összetevő már meg lett írva a külső táblába, előfordulhat, hogy a külső tábla duplikált elemeket tartalmaz. Ha a befejezés előtt megszakítottunk egy írási műveletet, a külső tábla sérült fájlokat tartalmazhat. Ilyen esetekben az összetevők nem törlődnek a külső táblából, de nem jelennek meg az exportált összetevőkmegjelenítése parancsban. Ha az exportált fájlokat a show exported artifacts command használja, az nem garantálja a duplikációkat és a sérüléseket.

Exportálás tény- és dimenziótáblákból

Alapértelmezés szerint az exportálási lekérdezésben hivatkozott összes tábla ténytáblák. Így a hatókörük az adatbázis-kurzorra van korlátozva. A szintaxis kifejezetten deklarálja, hogy mely táblák hatóköre (tény), és melyek nincsenek hatókörben (dimenzió). A részletekért tekintse meg a over paramétert a létrehozási parancs.

Az exportálási lekérdezés csak azokat a rekordokat tartalmazza, amelyek az előző exportálás végrehajtása óta csatlakoztak. Az exportálási lekérdezés tartalmazhat dimenziótáblákat, amelyekben a dimenziótábla összes rekordja szerepel az összes exportálási lekérdezésben. Ha a tény- és dimenziótáblák közötti illesztéseket folyamatos exportálással használja, vegye figyelembe, hogy a ténytáblában lévő rekordok feldolgozása csak egyszer történik. Ha az exportálás úgy fut, hogy egyes kulcsok esetében hiányoznak a dimenziótáblák rekordjai, akkor a megfelelő kulcsok rekordjai hiányoznak, vagy null értékeket tartalmaznak az exportált fájlok dimenzióoszlopaihoz. A kihagyott vagy null rekordok visszaadása attól függ, hogy a lekérdezés belső vagy külső illesztést használ-e. A forcedLatency tulajdonság a folyamatos exportálás definíciójában olyan esetekben lehet hasznos, amikor a tény- és dimenziótáblák ugyanabban az időben kerülnek be az egyező rekordokba.

Jegyzet

Csak a dimenziótáblák folyamatos exportálása nem támogatott. Az exportálási lekérdezésnek legalább egyetlen ténytáblát kell tartalmaznia.

Folyamatos exportálás figyelése

A folyamatos exportálási feladatok állapotának monitorozása az alábbi exportálási metrikákkal:

  • Continuous export max lateness – Az adatbázis folyamatos exportálásának maximális késése (percekben). Ez az adatbázison belüli összes folyamatos exportálási feladat minimális ExportedTo ideje. További információ: .show continuous export parancs.
  • Continuous export result – Minden egyes folyamatos exportálási végrehajtás sikeres/sikertelen eredménye. Ez a metrika felosztható a folyamatos exportálás nevével.

A .show continuous export failures paranccsal megtekintheti a folyamatos exportálási feladatok konkrét hibáit.

Figyelmeztetés

Ha egy folyamatos exportálás egy állandó hiba miatt több mint 7 napig meghiúsul, a rendszer automatikusan letiltja az exportálást. A végleges hibák közé tartoznak a következők: a külső tábla nem található, a folyamatos exportálási lekérdezés sémája és a külső táblaséma közötti eltérés, a tárfiók nem érhető el. A hiba kijavítása után újra engedélyezheti a folyamatos exportálást a .enable continuous export paranccsal.

Erőforrás-felhasználás

  • A folyamatos exportálás adatbázisra gyakorolt hatása attól függ, hogy a folyamatos exportálás milyen lekérdezést futtat. A legtöbb erőforrást, például a processzort és a memóriát a lekérdezés végrehajtása használja fel.
  • Az egyidejűleg futtatható exportálási műveletek számát az adatbázis adatexportálási kapacitása korlátozza.
    További információ: Felügyeleti parancsok szabályozása.
    Ha az adatbázis nem rendelkezik elegendő kapacitással az összes folyamatos exportálás kezeléséhez, néhányan lemaradnak.
  • A parancsokat és lekérdezéseket megjelenítő parancsok használhatók az erőforrások felhasználásának becsléséhez.
    • A | where ClientActivityId startswith "RunContinuousExports" szűrésével megtekintheti a folyamatos exportáláshoz társított parancsokat és lekérdezéseket.

Előzményadatok exportálása

A folyamatos exportálás csak a létrehozási ponttól kezdi meg az adatok exportálását. A korábban betöltött rekordokat külön kell exportálni a nem folyamatos exportálási parancs. Előfordulhat, hogy az előzményadatok túl nagyok ahhoz, hogy egyetlen exportálási paranccsal exportálhatók legyenek. Szükség esetén particionálja a lekérdezést több kisebb kötegre.

A folyamatos exportálással exportált adatok duplikációinak elkerülése érdekében használja a által visszaadott StartCursor folyamatos exportálási parancsot és csak a kurzorérték where cursor_before_or_at rekordokat exportálja. Például:

.show continuous-export MyExport | project StartCursor
StartCursor
636751928823156645

Ezt követi a következő:

.export async to table ExternalBlob
<| T | where cursor_before_or_at("636751928823156645")

Folyamatos exportálás egy táblából sorszintű biztonsággal

Ha egy sorszintű biztonsági házirendet tartalmazó táblára hivatkozó lekérdezéssel szeretne folyamatos exportálási feladatot létrehozni, a következőt kell tennie:

  • Használjon megszemélyesítést hitelesítést annak a külső táblának, amelybe az adatokat exportálja.

Folyamatos exportálás deltatáblába

Fontos

A deltatáblák particionálása nem támogatott a folyamatos adatexportálásban.

A Kusto nem ír meglévő deltatáblákba, ha a delta protokoll írójának verziója 1-nél nagyobb.

A változástáblába való folyamatos exportálás meghatározásához hajtsa végre a következő lépéseket:

  1. Hozzon létre egy külső deltatáblát az Azure Storage.

    Jegyzet

    Ha a séma nincs megadva, a Kusto automatikusan megpróbálja kikövetkeztetni, ha már van definiálva deltatábla a céltárolóban.
    A deltatábla particionálása nem támogatott.

  2. A táblába való folyamatos exportálás definiálása a Folyamatos exportálás létrehozása vagy módosításacímű cikkben ismertetett parancsokkal.

    Fontos

    A deltatábla sémájának szinkronban kell lennie a folyamatos exportálási lekérdezéssel. Ha a mögöttes változástábla megváltozik, előfordulhat, hogy az exportálás nem várt működéssel kezd meghiúsulni.

Korlátozások

Általános:

  • A céltáblákon a következő formátumok engedélyezettek: CSV, TSV, JSONés Parquet.
  • A folyamatos exportálás nem úgy van kialakítva, hogy materializált nézetekműködjön, mivel a materializált nézet frissíthető, míg a tárolóba exportált adatok mindig hozzáfűzhetők, és soha nem frissülnek.
  • A folyamatos exportálás nem hozható létre követő adatbázisokon, mivel a követő adatbázisok írásvédettek, és a folyamatos exportálás írási műveleteket igényel.
  • A folyamatos exportálás csökkenti a Parquet nagy számú oszlopot tartalmazó táblák teljesítményét az oszloponkénti kódolási többletterhelés miatt.
  • A forrástáblában lévő rekordokat közvetlenül a táblába kell beemészteni egy frissítési szabályzathasználatával, vagy a lekérdezési parancsokból. Ha a rekordok .move extents vagy .rename táblahasználatával kerülnek a táblába, előfordulhat, hogy a folyamatos exportálás nem dolgozza fel ezeket a rekordokat. Tekintse meg a Adatbázis-kurzorok lapon leírt korlátozásokat.
  • Ha a folyamatos exportálás által használt összetevők eseményrács-értesítések aktiválására szolgálnak, tekintse meg az Event Grid dokumentációjánakismert problémák szakaszát.

adatbázisközi és fürtközi:

Adatbázisközi és eseményházközi:

  • A folyamatos exportálás nem támogatja az Eseményházközi hívásokat.
  • A folyamatos exportálás csak dimenziótáblák esetében támogatja az adatbázisközi hívásokat. Minden ténytáblának a helyi adatbázisban kell lennie. További részletek a Exportálás tény- és dimenziótáblákból.

szabályzatok: