好用到爆,用扣子(coze.cn)搭建自己第一个提升工作效率工具(Hive SQL转Impala SQL助手)过程分享

工作经常要写离线数仓的SQL,由于历史项目很多是用Hive SQL写的,而在调试阶段,用Hive查询实在是太慢了。跟Impala查询对比起来,真是一个天一个地。于是有想把Hive SQL转化为Impala SQL的想法。

不过Impala SQL虽然大部分跟Hive是相同的,但有部分语法是有差异的。一个复杂Hive SQL,要手动来改太繁琐和费脑。试了一些大模型来自动改,效果并不是十分理想。于是有用扣子(coze.cn)增加知识库来解决问题。

根据自己工作总结和用ChatGPT的总结,第一个版本的知识库如下:

Impala和hive语法不同

复制代码
字符串分割
Hive: split
Impala: split_part
实例:
Hive: split('hello world', ' ')[1]
Impala: split_part('hello world', ' ', 2)

当前日期
Hive: current_timestamp()
Impala: now()
实例:
Hive: SELECT current_timestamp();
Impala: SELECT now();                     

数组大小函数
Hive: 使用 size() 函数来获取数组或映射的大小
Impala: 使用 array_length() 函数来获取数组的大小
实例:
Hive:
SELECT size(array(1, 2, 3));
Impala:
SELECT array_length([1, 2, 3]);

把这一份word文档上传到扣子知识库后,发现调用hive 的split函数后要求转化为impala,扣子提示知识库无召回。

记得之前网友说excel文档效果更好。把这个word文档修改为excel文档。

由于自己是用sql,如果用语义搜索觉得效果并不是很好,把搜索策略修改为混合,最小匹配度进行调低。

修改后果然匹配到知识库返回了,在自己知识库增强后,测了几个例子,回答的结果也从原来不正确的到现在的完全正确。以后工作可以不自己苦逼改sql,直接丢给扣子来自动完成了。

相关推荐
代码匠心17 小时前
从零开始学Flink:Flink SQL四大Join解析
大数据·flink·flink sql·大数据处理
Ray Liang19 小时前
彻底治愈AI“失忆”和胡说八道的真正办法
人工智能·rag·智能体·ai助手·mindx
刀法如飞2 天前
如何学好AI编程?AI提示词框架深度对比分析
ai编程·提示词
武子康2 天前
大数据-242 离线数仓 - DataX 实战:MySQL 全量/增量导入 HDFS + Hive 分区(离线数仓 ODS
大数据·后端·apache hive
SelectDB3 天前
易车 × Apache Doris:构建湖仓一体新架构,加速 AI 业务融合实践
大数据·agent·mcp
武子康3 天前
大数据-241 离线数仓 - 实战:电商核心交易数据模型与 MySQL 源表设计(订单/商品/品类/店铺/支付)
大数据·后端·mysql
IvanCodes3 天前
一、消息队列理论基础与Kafka架构价值解析
大数据·后端·kafka
爱可生开源社区4 天前
MiniMax M2.5 的 SQL 能力令人惊艳!
sql·llm
Nyarlathotep01134 天前
事务隔离级别
sql·mysql
武子康4 天前
大数据-240 离线数仓 - 广告业务 Hive ADS 实战:DataX 将 HDFS 分区表导出到 MySQL
大数据·后端·apache hive