doris:HLL

HLL是用作模糊去重,在数据量大的情况性能优于 Count Distinct。HLL的导入需要结合hll_hash等函数来使用。更多文档参考HLL

使用示例

第 1 步:准备数据

创建如下的 csv 文件:test_hll.csv

1001|koga
1002|nijg
1003|lojn
1004|lofn
1005|jfin
1006|kon
1007|nhga
1008|nfubg
1009|huang
1010|buag

第 2 步:在库中创建表

CREATE TABLE testdb.test_hll(
    typ_id           BIGINT          NULL   COMMENT "ID",
    typ_name         VARCHAR(10)     NULL   COMMENT "NAME",
    pv               hll hll_union   NOT NULL   COMMENT "hll"
)
AGGREGATE KEY(typ_id,typ_name)
DISTRIBUTED BY HASH(typ_id) BUCKETS 10;

第 3 步:导入数据

curl --location-trusted -u <doris_user>:<doris_password> \
    -H "column_separator:|" \
    -H "columns:typ_id,typ_name,pv=hll_hash(typ_id)" \
    -T test_hll.csv \
    -XPUT http://<fe_ip>:<fe_http_port>/api/testdb/test_hll/_stream_load

第 4 步:检查导入数据

使用 hll_cardinality 进行查询:

mysql> select typ_id,typ_name,hll_cardinality(pv) from testdb.test_hll;
+--------+----------+---------------------+
| typ_id | typ_name | hll_cardinality(pv) |
+--------+----------+---------------------+
|   1010 | buag     |                   1 |
|   1002 | nijg     |                   1 |
|   1001 | koga     |                   1 |
|   1008 | nfubg    |                   1 |
|   1005 | jfin     |                   1 |
|   1009 | huang    |                   1 |
|   1004 | lofn     |                   1 |
|   1007 | nhga     |                   1 |
|   1003 | lojn     |                   1 |
|   1006 | kon      |                   1 |
+--------+----------+---------------------+
10 rows in set (0.06 sec)
相关推荐
向阳121818 小时前
doris:MySQL Load
doris
SelectDB技术团队4 天前
Apache Doris 2.1.8 版本正式发布
大数据·数据库·数据仓库·数据分析·doris
向阳12184 天前
doris:Insert Into Values
doris
SelectDB技术团队6 天前
金融场景 PB 级大规模日志平台:中信银行信用卡中心从 Elasticsearch 到 Apache Doris 的先进实践
大数据·elasticsearch·金融·doris·日志分析
向阳12187 天前
doris:Azure Storage导入数据
microsoft·flask·doris·azure
向阳12189 天前
doris:阿里云 OSS 导入数据
数据库·阿里云·云计算·doris
向阳121812 天前
doris: Flink导入数据
doris
向阳121813 天前
doris:Kafka 导入数据
doris
向阳121815 天前
doris:手动分区
java·服务器·windows·doris