摘要: 案例:有一张DWS表记录了每个用户近30天活跃情况,需要通过该表记录得出用户近30天的连续访问间隔分布情况 逻辑梳理: 1,要通过埋点日志数据,筛选出最近30天的日志记录,然后按照用户ID分组,通过对用户活跃时间进行排序得出近30天的连续活跃区间情况:使用开窗函数ROW_NUMBER() 实现 得到 阅读全文
posted @ 2022-09-03 21:08 db_record 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 案例需求:求哪些店铺的电子类产品连续3个月增长 shop month dz fz sp a,2019-01,3000,5000,2000 a,2019-02,6000,4000,3000 b,2019-01,3000,5000,2000 b,2019-02,6000,4000,3000 b,2019 阅读全文
posted @ 2022-09-03 15:10 db_record 阅读(3811) 评论(0) 推荐(0) 编辑
摘要: 传统关系型数据库中 ,最基本的sql查询语句由projecttion (field a,field b,field c) , datasource (table A) 和 fieter (field a >10) 三部分组成。 分别对应了sql查询过程中的result , datasource和op 阅读全文
posted @ 2019-11-10 22:47 db_record 阅读(4562) 评论(0) 推荐(0) 编辑
摘要: 内置的两个聚合函数(UDAF) collect_list():多行字符串拼接为一行collect_set():多行字符串拼接为一行并去重多行字符串拼接为一行并相邻去重UDAF:Concat() concat_udaf.jar package com.tcc.udaf; import org.apac 阅读全文
posted @ 2019-09-10 17:58 db_record 阅读(574) 评论(0) 推荐(0) 编辑
摘要: 2.截取字符串中的字母和数字部分:([^xyz] 不匹配这个集合中的任何一个字符) 3. 指明两项之间的一个选择。例子'([a-z]+|[0-9]+)$'表示所有小写字母或数字组合成的字符串。 栗子:SELECT regexp_replace('七夕节Coming666!','([a-z]+|[A- 阅读全文
posted @ 2019-09-03 17:25 db_record 阅读(33785) 评论(0) 推荐(0) 编辑
摘要: 直接举栗子说明用法吧: 下面是来自APP埋点脚本获取的一段JSON字符串:通过平台sqoop推数存放在cx_ods_safe.paczcb_paczdata_cz_policy_detail_info.data字段中 {"applicants":[{"birthday":-247478400000, 阅读全文
posted @ 2019-08-26 20:10 db_record 阅读(11652) 评论(0) 推荐(1) 编辑
摘要: spark是通过借鉴Hadoop mapreduce发展而来,继承了其分布式并行计算的优点,并改进了mapreduce明显的缺陷,具体表现在以下几方面: 1.spark把中间计算结果存放在内存中,减少迭代过程中的数据落地,能够实现数据高效共享,迭代运算效率高。mapreduce中的计算中间结果是保存 阅读全文
posted @ 2019-08-24 16:42 db_record 阅读(6140) 评论(0) 推荐(0) 编辑
摘要: 人生都是有轨迹的,不要做清风,吹过不留痕,人生就是要留下走过的脚印,一步一步,今天从第一步开始! 阅读全文
posted @ 2019-08-13 15:08 db_record 阅读(177) 评论(0) 推荐(0) 编辑