LPL.
码龄8年
关注
提问 私信
  • 博客:107,546
    社区:5
    问答:5
    107,556
    总访问量
  • 40
    原创
  • 1,708,912
    排名
  • 17
    粉丝
  • 0
    铁粉

个人简介:一寸光阴不可轻

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2016-09-20
博客简介:

weixin_36190755的博客

查看详细资料
个人成就
  • 获得30次点赞
  • 内容获得13次评论
  • 获得261次收藏
创作历程
  • 3篇
    2023年
  • 15篇
    2021年
  • 23篇
    2020年
  • 6篇
    2017年
成就勋章
TA的专栏
  • hive
    18篇
  • kylin
    3篇
  • 数据仓库
    11篇
  • sql练习
    4篇
  • hadoop
    1篇
  • doris
    3篇
  • python
创作活动更多

超级创作者激励计划

万元现金补贴,高额收益分成,专属VIP内容创作者流量扶持,等你加入!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Kylin查询下压

例如,构建cube时使用的model是fact join dimension,在不开启查询下压时执行query会报错,在开启查询下压后执行可以提交至sparksql方式进行查询。对于cube不支持的查询sql,kylin4.0支持将这类查询下压至sparksql进行查询。(2)刷新配置(重启服务也可使配置生效,但为避免不可用建议页面刷新配置)(1)需要设置参数进行开启。
原创
发布博客 2023.02.14 ·
356 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

kylin使用注意事项

创建Model时设置的是fact left join dimension,在查询时不能使用其他方式的连接条件,如inner join。构建Cube时,选择了X,Y,Z三个维度,查询时只能按这三个维度或组合的维度聚合查询,使用其他Cube中没有的维度聚合时会报错。构建Cube时,只选择了sum(aa),默认有count(*),即只有两个度量值。4.做查询时必须事实表在前,维表在后,否则执行报错。2.只能按构建Cube时选择的维度字段分组统计。3.只能对构建Cube时选择的度量字段做统计。
原创
发布博客 2023.02.14 ·
241 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

kylin、druid、clickhouse

因为数据预聚合,Kylin可以说是最快的查询引擎(group-by查询这样的复杂查询,可能只需要扫描1条数据);Clickhouse的索引有点类似MySQL的联合索引,当查询前缀元组能命中的时候效率最高,可是一旦不能命中,几乎会扫描整个表,效率波动巨大;每个维度都有创建索引,所以每个查询都很快,并且没有类似Kylin的巨大的查询效率波动。Druid数据模型比较简单,它将数据进行预聚合,只不过预聚合的方式与Kylin不同,Kylin是Cube化,Druid的预聚合方式是将所有维度进行Group-by。
原创
发布博客 2023.02.09 ·
621 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

hql连续登录

表中有登录日期,user_id,统计连续登录3天及以上学员idselect user_id,count(*) as continuous_daysfrom (select login_date,user_id,date_sub(login_date,row_number() over(partition by user_id order by login_date)) as flag_datefrom (select '2020-12-30' as login_date,'001' as
原创
发布博客 2021.06.11 ·
245 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

元数据有哪些

技术元数据,比如表结构、字段定义、文件存储等信息 业务元数据,比如业务定义、业务术语、业务规则、业务指标等 管理元数据,比如数据所有者、数据质量定责、数据安全等级等 ...
原创
发布博客 2021.06.11 ·
3331 阅读 ·
0 点赞 ·
1 评论 ·
2 收藏

doris-join优化

Broadcast/Shuffle Join系统默认实现 Join 的方式,是将小表进行条件过滤后,将其广播到大表所在的各个节点上,形成一个内存 Hash 表,然后流式读出大表的数据进行Hash Join。但是如果当小表过滤后的数据量无法放入内存的话,此时 Join 将无法完成,通常的报错应该是首先造成内存超限。如果遇到上述情况,建议使用 Shuffle Join 的方式,也被称作 Partitioned Join。即将小表和大表都按照 Join 的 key 进行 Hash,然后进行分布式的 Join
原创
发布博客 2021.06.10 ·
2058 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Hql语句底层执行过程

join语句:select
原创
发布博客 2021.06.09 ·
254 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kylin优化

调整rowkey顺序优化原则:将更高基维度, 更加常用的查询维度, 拖动到最前面, 这样检索的时候效率更高调整方式:在Advanced Setting -> Rowkeys 这步设置时
转载
发布博客 2021.06.08 ·
343 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

hive排序

order by:全局排序,因此只有一个reducer(多个reducer无法保证全局有序)如果指定了hive.mapred.mode=strict(默认值是nonstrict),这时就必须指定limit来限制输出条数,原因是:所有的数据都会在同一个reducer端进行,数据量大的情况下可能不能出结果,那么在这样的严格模式下,必须指定输出的条数。sort by:不是全局排序,分区内有序,其在数据进入reducer前完成排序在每个reducer端做排序,也就是说保证了局部有序(每个reducer出来.
原创
发布博客 2021.06.04 ·
109 阅读 ·
0 点赞 ·
2 评论 ·
0 收藏

分区表和分桶表区别

分区使用的是表外字段,需要指定字段类型 分区通过关键字partitionedby(partition_name string)声明 分区划分粒度较粗 将数据按区域划分开,查询时不用扫描无关的数据,加快查询速度 ...
原创
发布博客 2021.06.04 ·
1852 阅读 ·
3 点赞 ·
2 评论 ·
24 收藏

hive之连续考题

select min(read_hour),max(read_hour),flagfrom (select read_hour,row_number() over( order by read_hour) as rowid,case when read_user_cnt>=10000 then 1 else 0 end as flagfrom (select 0 as read_hour,0 as flag union allselect 1 as read_hour,0 as .
原创
发布博客 2021.06.04 ·
769 阅读 ·
1 点赞 ·
5 评论 ·
1 收藏

hive谓词下推

关系型数据库借鉴而来,关系型数据中谓词下推到外部数据库用以减少数据传输 基本思想:尽可能早的处理表达式 属于逻辑优化,优化器将谓词过滤下推到数据源,使物理执行跳过无关数据 参数打开设置:hive.optimize.ppd=true ...
原创
发布博客 2021.06.04 ·
1829 阅读 ·
1 点赞 ·
1 评论 ·
10 收藏

在doris实现lag时间字段

select id,wechat_id,online,happen_time,STR_TO_DATE(lag(happen_time,1,99991231000000)over(partition by wechat_id order by id ),'%Y%m%d%H%i%s')from rt_ods.rt_ods_skynet_statistic_online_status_record where wechat_id='wxid_8074350742812'
原创
发布博客 2021.06.03 ·
834 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

星型&雪花&星座模型

根据事实表和维度表之间的关系,我们将常见的模型分为星型模型、雪花模型。星型模型:当所有的维度表都是和事实表直接相连的时候,整个图形看上去就像是一个星星,我们称之为星型模型。星型模型是一种非正规化的架构,因为多维数据集的每一个维度都和事实表直接相连,不存在渐变维度,所以有一定的数据冗余,因为有数据的冗余,很多的统计情况下,不需要和外表关联进行查询和数据分析,因此效率相对较高...
原创
发布博客 2021.06.02 ·
2220 阅读 ·
0 点赞 ·
0 评论 ·
7 收藏

归并、快排、二分查找

归并def MergeSort(lists): if len(lists) <= 1: return lists num = int( len(lists) / 2 ) left = MergeSort(lists[:num]) right = MergeSort(lists[num:]) return Merge(left, right)def Merge(left,right): r, l=0, 0 result=[]
原创
发布博客 2021.05.18 ·
107 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Doris三种数据模型

在 Doris 中,数据以表(Table)的形式进行逻辑上的描述。一张表包括行(Row)和列(Column)。Row 即用户的一行数据。Column 用于描述一行数据中不同的字段。Column 可以分为两大类:Key 和 Value。从业务角度看,Key 和 Value 可以分别对应维度列和指标列。Doris 的数据模型主要分为3类:Aggregate Uniq DuplicateAggregate 模型 聚合模型假设有如下表,其中aggregate key为user_id,date
原创
发布博客 2021.04.22 ·
3538 阅读 ·
2 点赞 ·
0 评论 ·
5 收藏

按不同维度组合并聚合

grouping sets 在一个 group by 查询中,根据不同的维度组合进行聚合,等价于将不同维度的 group by 结果集进行 union allcube 根据 group by 的维度的所有组合进行聚合rollup 是 cube 的子集,以最左侧的维度为主,从该维度进行层级聚合。grouping setsselect order_id, departure_date, count(*) as cnt from ord_test group by order_id..
原创
发布博客 2021.04.07 ·
894 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

hive日期时间函数

to_date(string timestamp):日期时间转日期函数:返回值: string说明: 返回日期时间字段中的日期部分。select to_date(’2021-02-08 10:03:01′) from dual;2021-02-08current_date():当前日期select current_date() --2021-02-09current_timestamp():当前日期时间selectcurrent_timestamp() ; --2.
原创
发布博客 2021.02.09 ·
334 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

现在要分组查询,查询a表的sql,要求b表的time是null,sql怎么写啊?

答:

你这个题有问题吧

回答问题 2020.12.11

Lateral View explode

Lateral View explode使用过程中的问题一般使用select id,con,con_detailfrom (select 1 as id,'a,b,c' as conunion all select 2 as id,null as con union all select 3 as id,'' as con)tlateral view explode(split(con,',')) aa as con_detail结果如下,发现其中id为2的行不见了,原因是
原创
发布博客 2020.12.10 ·
434 阅读 ·
0 点赞 ·
1 评论 ·
1 收藏
加载更多