详情页标题前

阿里云日志服务SLSHyperLogLog函数-云淘科技

详情页1

HyperLogLog函数为近似聚合函数,类似于approx_distinct函数。当计算的数据量非常大时,使用HyperLogLog函数可快速返回估算结果。本文介绍HyperLogLog函数的基本语法以及示例。

日志服务支持如下HyperLogLog函数。


注意 在日志服务分析语句中,表示字符串的字符必须使用单引号(”)包裹,无符号包裹或被双引号(””)包裹的字符表示字段名或列名。例如:’status’表示字符串status,status或”status”表示日志字段status。

函数名称 语法 说明
approx_set函数 approx_set(x) 估算x中不重复值的个数,最大标准误差默认为0.01625。
cardinality函数 cardinality(x) 将HyperLogLog类型的内容转换为bigint类型。
empty_approx_set函数 empty_approx_set() 返回一个HyperLogLog类型的空值。最大标准误差默认为0.01625。
merge函数 merge(x) 聚合计算所有的HyperLogLog值。

approx_set函数

approx_set函数用于估算x中不重复值的个数,最大标准误差默认为0.01625。

语法

approx_set(x)

参数说明

参数 说明
x 参数值为任意数据类型。

返回值类型

HyperLogLog类型。

示例

使用approx_set函数估算每分钟的网站访问UV,返回结果为HyperLogLog编码格式。

  • 查询和分析语句
    * |
    SELECT
      date_trunc('minute', __time__) AS Time,
      approx_set(client_ip) AS UV
    FROM  website_log
    GROUP BY
      Time
    ORDER BY
      Time
  • 查询和分析结果阿里云日志服务SLSHyperLogLog函数-云淘科技

cardinality函数

cardinality函数用于将HyperLogLog类型的内容转换为bigint类型。

语法

cardinality(x)

参数说明

参数 说明
x 参数值为HyperLogLog类型。

返回值类型

bigint类型。

示例

使用approx_set函数估算每分钟的网站访问UV,返回结果为HyperLogLog类型。然后使用cardinality函数将HyperLogLog类型转换为bigint类型。

  • 查询和分析语句
    * |
    SELECT
      Time,
      cardinality(UV) AS UV
    FROM  (
        SELECT
          date_trunc('minute', __time__) AS Time,
          approx_set(client_ip) AS UV
        FROM      website_log
        GROUP BY
          Time
        ORDER BY
          Time
      ) AS UV
  • 查询和分析结果阿里云日志服务SLSHyperLogLog函数-云淘科技

empty_approx_set函数

empty_approx_set函数用于返回一个HyperLogLog类型的空值。最大标准误差默认为0.01625。

语法

empty_approx_set()

返回值类型

HyperLogLog类型。

示例

返回一个HyperLogLog类型的空值。

  • 查询和分析语句
    * | SELECT  empty_approx_set()
  • 查询和分析结果阿里云日志服务SLSHyperLogLog函数-云淘科技

merge函数

merge函数用于聚合计算所有的HyperLogLog值。

语法

merge(x)

参数说明

参数 说明
x 参数值为HyperLogLog类型。

返回值类型

HyperLogLog类型。

示例

使用approx_set函数估算每分钟的网站访问UV,使用merge函数聚合计算15分钟内所有的UV,然后使用cardinality函数将HyperLogLog类型转换为bigint类型。

  • 查询和分析语句
    * |
    SELECT
      Time,
      cardinality(UV) AS UV,
      cardinality(merge(UV) over()) AS Total_UV
    FROM  (
        SELECT
          date_trunc('minute', __time__) AS Time,
          approx_set(client_ip) AS UV
        FROM      log
        GROUP BY
          Time
        ORDER BY
          Time
      )
  • 查询和分析结果阿里云日志服务SLSHyperLogLog函数-云淘科技

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

转转请注明出处:https://www.yunxiaoer.com/164174.html

(0)
上一篇 2023年12月10日 上午6:04
下一篇 2023年12月10日
详情页2

相关推荐

  • 阿里云容器服务ACK舰队管理FAQ-云淘科技

    本文介绍舰队管理的常见问题。 舰队管理是否支持多个Fleet实例? Fleet实例管理关联集群对集群间的连通性有什么要求? 是否可以使用Kubectl CLI对Fleet实例进行操作? 添加关联集群操作失败,报错详情:secrets”sec-c58faedb8a7864d3****-public”not find 舰队管理是否支持多个…

    阿里云容器服务 2023年12月10日
  • 阿里云RDS数据库基数统计(hll)-云淘科技

    hll插件支持的数据类型HyperLogLog可以帮助您快速预估PV、UV等业务指标。 前提条件 请确保实例大版本满足要求,本插件具体支持的实例大版本,请参见支持插件列表。 如实例大版本已满足要求,但仍提示不支持,请升级内核小版本,具体操作,请参见升级内核小版本。 背景信息 hll插件支持一种可变长、类似集合的数据类型HyperLogLog(hll),常用于…

    阿里云数据库 2023年12月9日
  • 阿里云RDS数据库ModifyDBInstanceHAConfig – 修改实例的高可用模式和数据复制方式-云淘科技

    该接口用于修改RDS实例的高可用模式和数据复制方式。 接口说明 适用引擎 RDS MySQL RDS PostgreSQL 相关功能文档 注意 使用该接口前,请仔细阅读功能文档,确保完全了解使用接口的前提条件及使用后造成的影响后,再进行操作。 RDS MySQL修改数据复制方式 RDS PostgreSQL修改数据复制方式 调试 您可以在OpenAPI Ex…

    阿里云数据库 2023年12月9日
  • 阿里云人工智能平台PAIDescribeResourceDLink – 查看资源组vpc直连信息-云淘科技

    查看专属资源组VPC直连配置详情。 调试 您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。 调试调试授权信息下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下: 操…

    阿里云人工智能平台PAI 2023年12月10日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 阿里云日志服务SLScreate_logstore-云淘科技

    调用CLI命令创建Logstore。 注意事项 在使用CLI命令之前,您需要注意以下事项: 已开通日志服务。具体操作,请参见如何开始使用日志服务?。 已安装日志服务CLI,并完成配置。具体操作,请参见安装CLI和配置CLI。 已创建日志服务Project。具体操作,请参见create_project。 命令格式 aliyunlog log create_lo…

    阿里云日志服务SLS 2023年12月10日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。