Oracle 迁移 Hive 过程中遇到的问题总结

前言

最近一个小伙伴在做从 OracleHive 的业务迁移工作,在迁移过程中属实遇到了一些坑,今天就来汇总一下这些坑,避免以后大家其他业务迁移的时候再出现类似的问题,即使出现了也可以拿过来进行对照解决。

问题1:Distinct window functions are not supported: count(distinct position_id#92) windowspecdefinition

在这里插入图片描述
从上面图片中的报错日志信息来看,是说窗口函数是不支持 count distinct 的。很显然在 Oracle 中支持的写法,但是在 Spark SQL 是不支持的。

解决方案

  • 方案1:使用 approx_count_distinct,但是它是概率统计,非精确统计
  • 方案2:collect_setsize 结合使用

之前的 sql

count

你可能感兴趣的:(hive,Spark,oracle,hive,数据库)