首页 > 解决方案 > 如何将当前时间戳插入/摄取到 kusto 表中

问题描述

我正在尝试使用以下查询将当前日期时间插入以日期时间为数据类型的表中:

.ingest inline into table NoARR_Rollout_Status_Dummie <| @'datetime(2021-06-11)',Sam,Chay,Yes

表是使用以下查询创建的:

.create table NoARR_Rollout_Status_Dummie ( Timestamp:datetime, Datacenter:string, Name:string, SurName:string, IsEmployee:string)

但是当我尝试查看表中的数据时,我看不到 TimeStamp 被填充。有什么我想念的吗?

标签: azure-data-explorerkqldata-ingestioningest

解决方案


.ingest inline命令将输入​​(在 之后)解析<|为 CSV 有效负载。因此您不能在其中包含变量。

您尝试做的另一种方法是使用该.set-or-append命令,例如:

.set-or-append NoARR_Rollout_Status_Dummie <|
    print Timestamp = datetime(2021-06-11),
          Name = 'Sam',
          SurName = 'Chay',
          IsEmployee = 'Yes'

但是请注意,不建议在生产场景中使用单个命令提取单个或几条记录,因为它会创建非常小的数据碎片并且可能会对性能产生负面影响。

对于排队摄取,建议使用更大的批量:https ://docs.microsoft.com/en-us/azure/data-explorer/kusto/api/netfx/kusto-ingest-best-practices#optimizing-for-throughput

否则,请查看您的用例是否符合流式摄取的建议:https ://docs.microsoft.com/en-us/azure/data-explorer/ingest-data-streaming


推荐阅读