截断并加载 Kusto table 而不是实体化视图,以便它可以用于连续导出

Truncate and Load a Kusto table instead of a Materialized view so that it can be used for continous export

我们有一个场景,在 Kusto table(~1000 行)中获取一些参考数据。

为了处理由于每日数据加载(因为 Kusto 总是追加)导致的数据重复,我们在 table 之上创建了一个实体化视图 (MV) 来汇总数据并获取最新的数据在 ingestion_time() 上,这样查询 MV 将始终得到最新更新的参考数据。

我们的下一个要求是使用 Kusto 连续数据导出 (please refer MS doc) 将此格式化数据导出到存储容器中,但是,我们似乎无法使用物化视图来设置连续导出。

所以看看选项,有什么方法可以创建截断加载 table 而不是 kusto 中的物化视图,这样我们就不会在 table 中有重复记录并且可以用来做连续导出。

.create async materialized-view with (backfill=true) products_vw on table products
    {
    products
    | extend d=parse_json(record)
    | extend
        createdBy=tostring(d.createdBy),
        createdDate = tostring(d.createdDate),
        product_id=tostring(d.id),
        product_name=tostring(d.name),
        ingest_time=ingestion_time()
    | project
        ingest_time,
        createdBy,
        createdDate,
        product_id,
        product_name
    | summarize arg_max(ingest_time, *) by product_id
    }

您可以在任何给定时间间隔内使用由 Azure 存储支持的 Azure logic app or Microsoft flow to run the applicable export command to an external table。查询可以简单的引用物化视图,例如:

.export to table ExternalBlob <| Your_MV