日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

估算函數(shù)

本文介紹估算函數(shù)的基本語法及示例。

日志服務支持如下估算函數(shù)。

重要 在日志服務分析語句中,表示字符串的字符必須使用單引號('')包裹,無符號包裹或被雙引號("")包裹的字符表示字段名或列名。例如:'status'表示字符串status,status"status"表示日志字段status。

函數(shù)名稱

語法

說明

支持SQL

支持SPL

approx_distinct函數(shù)

approx_distinct(x)

估算x中不重復值的個數(shù),默認存在2.3%的標準誤差。

×

approx_distinct(x, e)

估算x中不重復值的個數(shù),支持自定義標準誤差。

×

approx_percentile函數(shù)

approx_percentile(x, percentage)

x進行正序排列,返回大約處于percentage位置的x

×

approx_percentile(x, array[percentage01, percentage02...])

x進行正序排列,返回大約處于percentage01percentage02位置的x

×

approx_percentile(x, weight, percentage)

x和權(quán)重的乘積進行正序排列,返回大約處于percentage位置的x

×

approx_percentile(x, weight, array[percentage01, percentage02...])

x和權(quán)重的乘積進行正序排列,返回大約處于percentage01percentage02位置的x

×

approx_percentile(x, weight, percentage, accuracy)

x和權(quán)重的乘積進行正序排列,返回大約處于percentage位置的x。支持設置返回結(jié)果的準確度。

×

numeric_histogram函數(shù)

numeric_histogram(bucket, x)

按照bucket數(shù)量(直方圖列數(shù)),統(tǒng)計x的近似直方圖,返回結(jié)果為JSON類型。

×

numeric_histogram(bucket, x, weight)

按照bucket數(shù)量(直方圖列數(shù)),統(tǒng)計x的近似直方圖,返回結(jié)果為JSON類型。支持對x設置權(quán)重。

×

numeric_histogram_u函數(shù)

numeric_histogram_u(bucket, x)

按照bucket數(shù)量(直方圖列數(shù)),統(tǒng)計x的近似直方圖,返回結(jié)果為多行多列格式。

×

approx_distinct函數(shù)

approx_distinct函數(shù)用于估算x中不重復值的個數(shù)。

語法

  • 估算x中不重復值的個數(shù),默認存在2.3%的標準誤差。

    approx_distinct(x)
  • 估算x中不重復值的個數(shù),支持自定義標準誤差。

    approx_distinct(x, e)

參數(shù)說明

參數(shù)

說明

x

參數(shù)值為任意數(shù)據(jù)類型。

e

自定義標準誤差,取值為[0.0115, 0.26]。

返回值類型

bigint類型。

示例

  • 示例1:使用count函數(shù)計算PV,使用approx_distinct函數(shù)估算不重復的client_ip字段值作為UV,標準誤差為2.3%。

    • 查詢和分析語句

      * |SELECT count(*) AS PV, approx_distinct(client_ip) AS UV
    • 查詢和分析結(jié)果approx_distinct

  • 示例2:使用count函數(shù)計算PV,使用approx_distinct函數(shù)估算不重復的client_ip字段值作為UV,自定義標準誤差為10%。

    • 查詢和分析語句

      * |SELECT count(*) AS PV, approx_distinct(client_ip,0.1) AS UV
    • 查詢和分析結(jié)果approx_distinct

approx_percentile函數(shù)

approx_percentile函數(shù)用于對x進行正序排列,返回大約處于percentage位置的數(shù)值。

語法

  • x進行正序排列,返回處于percentage位置的x,返回結(jié)果為double類型。

    approx_percentile(x, percentage)
  • x進行正序排列,返回處于percentage01、percentage02位置的x,返回結(jié)果為array(double,double)類型。

    approx_percentile(x, array[percentage01, percentage02...])
  • x和權(quán)重的乘積進行正序排列,返回大約處于percentage位置的x,返回結(jié)果為double類型。

    approx_percentile(x, weight, percentage)
  • x和權(quán)重的乘積進行正序排列,返回處于percentage01、percentage02位置的x,返回結(jié)果為array(double,double)類型。

    approx_percentile(x, weight, array[percentage01, percentage02...])
  • x和權(quán)重的乘積進行正序排列,返回大約處于percentage位置的x,返回結(jié)果為double類型。支持設置返回結(jié)果的準確度。

    approx_percentile(x, weight, percentage, accuracy)

參數(shù)說明

參數(shù)

說明

x

參數(shù)值為double類型。

percentage

百分比值,取值范圍為[0,1]。

accuracy

準確度,取值范圍為(0,1)。

weight

權(quán)重,大于1的整數(shù)。

設置權(quán)重后,系統(tǒng)根據(jù)x與權(quán)重的乘積進行排序。

返回值類型

double類型或array(double,double)類型。

示例

  • 示例1:對request_time列進行排序后,返回大約處于50%位置的request_time字段的值。

    • 查詢和分析語句

      *| SELECT approx_percentile(request_time,0.5)
    • 查詢和分析結(jié)果approx_percentile

  • 示例2:對request_time列進行排序后,返回處于10%、20%及70%位置的request_time字段的值。

    • 查詢和分析語句

      *| SELECT approx_percentile(request_time,array[0.1,0.2,0.7])
    • 查詢和分析結(jié)果approx_percentile

  • 示例3:根據(jù)request_time與權(quán)重的乘積對request_time列進行排序后,返回大約處于50%位置的request_time字段的值。其中,request_time<20時權(quán)重為100,否則權(quán)重為10。

    • 查詢和分析語句

      * |
      SELECT
        approx_percentile(
          request_time,case
            when request_time < 20 then 100
            else 10
          end,
          0.5
        )
    • 查詢和分析結(jié)果approx_percentile

  • 示例4:根據(jù)request_time與權(quán)重的乘積對request_time列進行排序后,返回大約處于80%和90%位置的request_time字段的值。其中,request_time<20時權(quán)重為100,否則權(quán)重為10。

    • 查詢和分析語句

      * |
      SELECT
        approx_percentile(
          request_time,case
            when request_time < 20 then 100
            else 10
          end,
          array [0.8,0.9]
        )
    • 查詢和分析結(jié)果approx_percentile

  • 示例5:根據(jù)request_time與權(quán)重的乘積對request_time列進行排序后,返回大約處于50%位置的request_time字段的值,準確度為0.2。其中,request_time<20時權(quán)重為100,否則權(quán)重為10。

    • 查詢和分析語句

      * |
      SELECT
        approx_percentile(
          request_time,case
            when request_time < 20 then 100
            else 10
          end,
          0.5,
          0.2
        )
    • 查詢和分析結(jié)果approx_percentile

numeric_histogram函數(shù)

numeric_histogram函數(shù)按照bucket數(shù)量(直方圖列數(shù)),統(tǒng)計x的近似直方圖。返回結(jié)果為JSON類型。

語法

  • 按照bucket數(shù)量(直方圖列數(shù)),統(tǒng)計x的近似直方圖。

    numeric_histogram(bucket, x)
  • 按照bucket數(shù)量(直方圖列數(shù)),統(tǒng)計x的近似直方圖。支持為x設置權(quán)重。

    numeric_histogram(bucket, x, weight)

參數(shù)說明

參數(shù)

說明

bucket

直方圖中列的個數(shù),bigint類型。

x

參數(shù)值為double類型。

weight

權(quán)重,大于0的整數(shù)。

設置權(quán)重后,系統(tǒng)根據(jù)x與權(quán)重的乘積進行分組。

返回值類型

JSON類型。

示例

  • 示例1:統(tǒng)計POST方法對應的請求時長的近似直方圖。

    • 查詢和分析語句

      request_method:POST | SELECT numeric_histogram(10,request_time)
    • 查詢和分析結(jié)果numeric_histogram

  • 示例2:根據(jù)request_time與權(quán)重的乘積對請求時長進行分組,從而統(tǒng)計POST方法對應的請求時長的近似直方圖。

    • 查詢和分析語句

      request_method:POST| SELECT numeric_histogram(10, request_time,case when request_time<20 then 100 else 10 end)
    • 查詢和分析結(jié)果numeric_histogram

numeric_histogram_u函數(shù)

numeric_histogram_u函數(shù)按照bucket數(shù)量(直方圖列數(shù)),統(tǒng)計x的近似直方圖。返回結(jié)果為多行多列格式。

語法

numeric_histogram_u(bucket, x)

參數(shù)說明

參數(shù)

說明

bucket

直方圖中列的個數(shù),bigint類型。

x

參數(shù)值為double類型。

返回值類型

double類型。

示例

統(tǒng)計POST方法對應的請求時長的近似直方圖。

  • 查詢和分析語句

    request_method:POST | select numeric_histogram_u(10,request_time)
  • 查詢和分析結(jié)果numeric_histogram_u