Presto
文章平均质量分 50
分享Presto在生产环境中遇到的问题和解决办法
光于前裕于后
本人有多年大数据与机器学习开发经验,并乐于总结与分享,如有侵权或写的不对的地方可以私信我,有问题也可以问我哟,free~
展开
-
Presto与Hive SQL对比
近期工作涉及到数据治理,对一些老慢任务优化改造,主要是Hive转Presto,Hive实在是太慢了~本篇记录Hive转Presto遇到的问题,希望对你们有所帮助😘长期更新,记得收藏Presto不支持字段类型自动转换(插入和比对)非string类型字段,hive传入’'空字符串可自动转,presto需传入nullHive 自动转换,Presto try_cast(value AS type)Presto不支持字段值不符合定义的字段类型时自动置空如:字段类型为decimal(10,2),h原创 2022-04-19 11:18:27 · 3538 阅读 · 4 评论 -
记一次低级且重大的Presto运维事故
本文纯属虚构,旨在提醒各位别犯类似低级错误。如有雷同,说的就是你!原创 2024-01-22 17:40:03 · 1220 阅读 · 0 评论 -
Presto SQL 常见报错汇总
Presto SQL 常见问题汇总,持续更新中...原创 2023-03-02 13:43:50 · 2791 阅读 · 4 评论 -
Presto Max requests per destination 1024 exceeded for HttpDestination
该报错为当前Presto连接数超出了默认的限制,需要检查Presto服务端连接进程的状态,或者根据如下方法调节连接数限制。for slave/worker:sudo su -c 'echo "exchange.http-client.max-requests-queued-per-destination=5000exchange.http-client.max-connections-per-server=5000" >> /etc/presto/conf/config.propertie原创 2022-04-11 10:18:16 · 988 阅读 · 0 评论 -
Presto: Using OptimizedTypedSet to Improve Map and Array Functions
Function evaluation is a big part of projection CPU cost. Recently we optimized a set of functions that use TypedSet, e.g. map_concat, array_union, array_intersect, and array_except. By introducing a new OptimizedTypeSet, the above functions saw improvemen转载 2022-03-23 18:11:36 · 148 阅读 · 0 评论 -
Presto Cannot write to non-managed Hive table
使用Presto向Hive表插数据时遇到这个错,我还是头回碰见。Cannot write to non-managed Hive table网上搜了一下也没发现类似的错,不过让我注意到了non-managed Hive table。那么,什么是non-managed Hive table?查了一下才发现,原来 Managed Table 就是 Internal Table,也就是内部表,当建表时没有指明Managed或者External,就会默认创建Managed Table。而 non-man原创 2022-03-23 11:27:48 · 3482 阅读 · 0 评论 -
使用Presto访问MySQL报错
‘failureInfo’: {‘type’: ‘com.facebook.presto.spi.PrestoException’, ‘message’: ‘Could not create connection to database server. Attempted reconnect 3 times. Giving up.’, ‘cause’: {‘type’: ‘com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException原创 2021-10-13 14:01:35 · 911 阅读 · 0 评论 -
使用Presto重写Hive分区表数据
Presto和Impala、Spark SQL都是SQL查询引擎,也都是基于内存运算。但是Presto支持多种数据源,比如Hive、TiDB、Redis、Kafka、ES、Oracle等等,可以跨数据源连表查,既快又方便。不过多介绍了,下面进入正题。Hive向分区表重写数据是这样的:insert overwrite tablename partition (year='2021')select a, b from tab;但是Presto不支持这种写法,一是不支持overwrite,二是不支原创 2021-08-12 17:55:15 · 2586 阅读 · 5 评论 -
使用Presto实现Hive动态分区
Presto和Impala、Spark SQL都是SQL查询引擎,也都是基于内存运算。但是Presto支持多种数据源,比如Hive、TiDB、Redis、Kafka、ES、Oracle等等,可以跨数据源连表查,既快又方便。不过多介绍了,下面进入正题。Hive 动态分区使用方法见下:set hive.exec.dynamic.partition=true; #开启动态分区,默认是falseset hive.exec.dynamic.partition.mode=nonstrict; #开启允许所有原创 2021-09-01 14:37:17 · 1509 阅读 · 5 评论 -
使用Presto SQL实现身份证号部分脱敏
众所周知,新的身份证号是18位,可以从中获取到地址、生日、性别等信息。第1-2位数字:所在省份的代码。第3-4位数字:所在城市的代码。第5-6位数字:所在区县的代码。第7-14位数字:出生年、月、日。第15-17位数字:同一地址码所标识的区域范围内,对同年、月、日出生的人员编定的顺序号。其中,第十七位奇数分给男性,偶数分给女性。第18位数字:校验码。校验码数字分别用0-1十个阿拉伯数字或 ×代表。这个校验码是通过法定方式计算得出的。计算结果为10的时候,用希腊数字×代表。例子:-- subs原创 2021-12-15 11:06:26 · 1540 阅读 · 0 评论