gpt4 book ai didi

azure - OMS Log Analytics 8MB PowerBI 查询限制解决方法?

转载 作者:行者123 更新时间:2023-12-04 17:49:21 24 4
gpt4 key购买 nike

因此,我使用 PowerBI Desktop 直接从 OMS 日志分析查询数据,并且我相信查询返回的数据存在 8MB 硬性限制。我遇到的问题是,我需要查询大约 30 000 行,但在 18 000 行左右达到 8MB 限制。是否可以分解查询,例如,query1 将返回行 1 - 18 000,query2 将返回 18 001 - 28 000 等等,然后我可以合并 PowerBI 中的查询以提供所有数据的 View ?

问题是我在这个领域的经验,特别是DAX非常有限,所以我不知道如何在高级编辑器中指定它。如有任何帮助,我们将不胜感激。

谢谢!

最佳答案

同样的问题。解决了。​​

我的需要:我在 Azure LogAnalytics (LA) 中有一个表,每天累积约 35K 行。我需要将洛杉矶的所有行放入 PowerBi 中进行分析。

我的问题:我在 LA Logs Web UX 中制作了我想要的 KQL 查询。然后我选择了“导出 -> 导出到 PowerBI M 查询”功能。将其粘贴到 PowerBi 中的空白查询中。已授权。我注意到一些奇怪的行为:

1) - 正如您所说,我收到了大约 35K 行的滚动数据,每个查询都会稍微修剪我的 KQL 范围中的第一个日期。

2) - 另外,我发现每天查询都会机会性地删除一些行 - 就像它在“猜测”我不需要符合限制的数据一样。

3) - 无论我写什么 KQL |where TimeGeneerated >= ago(xd) 子句,我显然都不会返回超过它限制的内容。

我的解决方案 - 它效果很好。在 PowerQuery 中,我在 PowerQuery/M 中创建了一个新的空白表(不是 DAX 表!)。在该表中,我使用 DateTimeZone.UtcNow() 以今天的日期开始,然后添加一个名为 [Days Back] 的列,并添加 -1、-2、-3...-7 的行。然后,用一些 M,我添加了另一个列,从过去的日子中减去今天,给了我日期的历史记录。 enter image description here .

现在,我有一个表,可以从中迭代历史记录中的每个日期,并将 parm1 传递给我的 KQL 查询: |其中 TimeGenerateDate == todatetime('"& Date.ToText(TimeGeneeratedDateLoop) & "')

正如您所看到的,在我编辑主 LA 查询以使用 TimeGeneeratedDateLoop 作为参数后,我现在可以获得每一天的记录量,而不会达到 LA 限制。请注意,就我而言,没有一天突破 8MB 限制。如果你的情况如此,那么你可以通过进行 12 小时的故障而不是一整天的故障来解决这个问题。

这是我对该函数的最终 M 查询:

注意:我还从预先生成的查询中删除了这一行: "prefer"="ai.response-thinning=true" <- 我不知道它是否有帮助,但设置将其设置为 false 不起作用。

let
  FxDailyQuery = (TimeGeneratedDateLoop as date) => 
    let
      AnalyticsQuery = 
        let
          Source = Json.Document(Web.Contents(
            "https://api.loganalytics.io/v1/workspaces/xxxxx-202d-xxxx-a351-xxxxxxxxxxxx/query", 
            [
              Query = [#"query"
                = "YourLogAnalyticsTbl
| extend TimeGeneratedDate = bin(TimeGenerated, 1d)
| where notempty(Col1)
| where notempty(Col2)
| where TimeGenerated >= ago(30d)
| where TimeGeneratedDate == todatetime('"& Date.ToText(TimeGeneratedDateLoop) & "')
", #"x-ms-app" = "OmsAnalyticsPBI"], 
              Timeout = #duration(0, 0, 4, 0)
            ]
          )),
          TypeMap = #table({"AnalyticsTypes", "Type"}, {
            {"string", Text.Type}, 
            {"int", Int32.Type}, 
            {"long", Int64.Type}, 
            {"real", Double.Type}, 
            {"timespan", Duration.Type}, 
            {"datetime", DateTimeZone.Type}, 
            {"bool", Logical.Type}, 
            {"guid", Text.Type}, 
            {"dynamic", Text.Type}
          }),
          DataTable = Source[tables]{0},
          Columns = Table.FromRecords(DataTable[columns]),
          ColumnsWithType = Table.Join(Columns, {"type"}, TypeMap, {"AnalyticsTypes"}),
          Rows = Table.FromRows(DataTable[rows], Columns[name]),
          Table = Table.TransformColumnTypes(Rows, Table.ToList(
            ColumnsWithType, 
            (c) => {c{0}, c{3}}
          ))
        in
          Table
    in
      AnalyticsQuery
in
  FxDailyQuery

关于azure - OMS Log Analytics 8MB PowerBI 查询限制解决方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46294625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com