随笔分类 - odps
摘要:问题描述:事实表存储的类目id不确定是几级id;一共有三级类目,需要把类目信息维护进事实表,比如记录的是二级类目id,需要把一级类目数据维护进事实表。 一开始没有想到怎么搞,还是想了一会儿想了这么个处理方法: ods_classify原始业务库表,id就是各级的类目id,pid就是上一层级的类目id
阅读全文
摘要:需求内容,json对象需要新加一行数据 {"a":1} -> {"a":1,"b",2} 这个可以通过sql拼接进来,感觉不太严谨,如果有嵌套的json对象,可能识别会有问题,新写了一个函数。 我使用了GSON这个类 package udf; import com.aliyun.odps.udf.U
阅读全文
摘要:1、主要是计算某个字段值里面的标记值,比如某个字符串有多少个逗号 package udf; import com.aliyun.odps.udf.UDF; public class MarkCount extends UDF{ public Long evaluate(String text,Str
阅读全文
摘要:删除所有分区,但是不删除表结构: alter table bigdata2c.dim_trd_supplier drop if exists partition(business rlike '^[\u4e00-\u9fa5_a-zA-Z0-9]+$');
阅读全文
摘要:背景: 最近有接到业务上的这么个需求,每天计算圈定用户的一些标签,同时把新增和移除标签的信息及当前用户的信息发给下游,这个场景太少了,还是java开发使用场景广泛。 举例: 这个用户昨日新增了tag3和tag2这个标签,同时当前codes也是这2个 任务设计: 首先,存储每天的全量的计算结果,因为新
阅读全文
摘要:工作中同事有时候会需要随机排序,同事会全局写个order by rand(),然后几十亿的数据就会比较慢。 然后会这么改下。先随机分组下,再排序,随机效果应该差不多 distribute by floor(randbetween(1,10001)) sort by RAND();
阅读全文
摘要:hive搞的时候要注意:对于json数组里面只有一个对象的要单独拿出来解析,这个在explode里面会失效 工作中会有这样的数据类型,需要规则化的解析出来方便下游使用 解析如下: select crawler_data_time ,nav ,model ,author_id ,nick_name ,
阅读全文
摘要:之前都是手动拼字符串写的,优点是灵活,缺点也很明显,容易出错。 下面提供一种udf的形式: package udf; import com.aliyun.odps.udf.UDF; public class TableBulidJson extends UDF { public String eva
阅读全文
摘要:今天用到了named_struct类型,主要用这个函数做json拼接 select named_struct( '"supplier_sku_id"',supplier_sku_id, '"supplier_id"',t1.supplier_id, '"prefee_rate"',prefee_ra
阅读全文
摘要:主要自己做个记录吧,流程:pyodps读取数据源-->pandas-->pyecharts;每天调度会计算好数据落到odps,这边再加个自动发送就好了。 桑基图个人觉得某些场景还是蛮适合的,图像的表征能力还是很强的。 2022年6月1日记录;搞流量数据之后发现这个表有一个好处,做页面周转的图可太好了
阅读全文
摘要:本地文件有传输到odps的需要,虽然阿里云dataworks有这样的操作界面,但是文件内容有个逗号啥的就会有问题,所以专门写个脚本处理这一步。 处理逻辑: pandas_read_csv >pyodps的dataframe >odps 代码如下,简单方便: # -*- coding: utf-8 -
阅读全文
摘要:工作中,大多数时候会需要把json数组中的数据解析出来,现在会经常和后端打交道,后端同学就希望把正常的行列数据用json的形式给他们,他们使用起来方便,我看有的文章会写用udtf函数实现,不过本着能用内置函数绝不用自定义函数的原则(主要是我不会写),用内置函数实现也不是很难。 原数据形式: 希望转换
阅读全文