写点什么

大数据 presto 作业

用户头像
Clarke
关注
发布于: 1 小时前

1. 搜索 HyperLogLog 算法相关内容,了解其原理,写出 5 条 HyperLogLog 的用途或大数据场景下的实际案例。

hyperloglog 可以用按日统计每日 UV

hyperloglog 可以用按日统计每日唯一 IP 访问数

hyperloglog 通过合并每日 UV,得到一段时间的 UV

hyperloglog 可以统计实时访问的 UV

hyperloglog 可以统计总的注册用户


2. 在本地 docker 环境或阿里云 e-mapreduce 环境进行 SQL 查询, 要求在 Presto 中使用 HyperLogLog 计算近似基数。(请自行创 建表并插入若干数据)

新建 presto job

CREATE TABLE bsm_table1(

 begindate integer,

 media varchar,

  hll varbinary

);

create table bsm_table3(

userid integer,

 media varchar,

 daytime integer

);

create table bsm_table7(

  cnt bigint,

  media varchar,

  begindate integer

);

INSERT INTO bsm_table1

SELECT daytime, media, cast(approx_set(userid) AS varbinary)

FROM bsm_table3

where (daytime>=20210920 and daytime<=20210923)

GROUP BY daytime, media;


INSERT INTO bsm_table7 

SELECT cardinality(merge(cast(hll AS HyperLogLog))),media,begindate AS daily_unique_users

FROM bsm_table1

group by media,begindate; 

执行成功


新建 spark sql job,验证结果,可以看到统计结果无误


用户头像

Clarke

关注

还未添加个人签名 2018.04.15 加入

还未添加个人简介

评论

发布
暂无评论
大数据presto作业