千家信息网

OLAP中怎么使用Presto组件实现跨数据源分析

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,OLAP中怎么使用Presto组件实现跨数据源分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、Presto概述1、Presto简介
千家信息网最后更新 2025年01月31日OLAP中怎么使用Presto组件实现跨数据源分析

OLAP中怎么使用Presto组件实现跨数据源分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

一、Presto概述

1、Presto简介

Presto是一个开源的分布式SQL查询引擎,适用于交互式分析查询,数据量支持GB到PB字节,Presto虽然具备解析SQL的能力,但它并不属于标准的数据库范畴。

Presto支持在线数据查询,包括Hive,关系数据库以及专有数据存储。一条Presto查询可以将多个数据源的数据进行合并,可以跨越整个组织进行分析,Presto主要用来处理响应时间小于1秒到几分钟的场景。

2、Presto架构

Presto查询引擎是基于Master-Slave的架构,运行在多台服务器上的分布式系统,由一个Coordinator节点和多个Worker节点组成,Coordinator负责解析SQL语句,生成执行计划,分发执行任务给Worker节点执行,Worker节点负责实际执行查询任务。

Coordinator节点

Coordinator服务器是用来解析查询语句,执行计划分析和管理Presto的Worker结点,跟踪每个Work的活动情况并协调查询语句的执行。Coordinator为每个查询建立模型,模型包含多个Stage,每个Stage再转为Task分发到不同的Worker上执行,协调通信基于REST-API,Presto安装必须有一个Coordinator节点。

Worker节点

Worker负责执行查询任务和处理数据,从Connector获取数据,Worker间会交换中间数据。Coordinator从Worker获取结果并返回最终结果给Client端,当Worker启动时会广播自己并发现Coordinator,告知Coordinator可用状态,协调通信基于REST-API,Presto通常会安装多个Worker节点。

数据源适配

Presto可以适配多种不同的数据源,可以和数据源连接和交互,Presto是通过表的完全限定名处理table,Catalog对应类数据源,Schema对应数据库,Table对应数据表。

Presto中处理的最小数据单元是一个Page对象,一个Page对象包含多个Block对象,每个Block对象是一个字节数组,存储一个字段的若干行,多个Block横切的一行是真实的一行数据。

二、Presto安装

1、安装包管理

[root@hop01 presto]# pwd/opt/presto[root@hop01 presto]# llpresto-cli-0.196-executable.jarpresto-server-0.189.tar.gz[root@hop01 presto]# tar -zxvf presto-server-0.189.tar.gz

2、配置管理

在presto安装目录中创建etc文件夹,并添加以下配置信息:

/opt/presto/presto-server-0.189/etc

节点属性

每个节点的特定环境配置:etc/node.properties;

[root@hop01 etc]# vim node.propertiesnode.environment=productionnode.id=presto01node.data-dir=/opt/presto/data

配置内容:环境名称,唯一ID,数据目录。

JVM 配置

JVM的命令行选项,用于启动Java虚拟机的命令行选项列表:etc/jvm.config。

[root@hop01 etc]# vim jvm.config-server-Xmx16G-XX:+UseG1GC-XX:G1HeapRegionSize=32M-XX:+UseGCOverheadLimit-XX:+ExplicitGCInvokesConcurrent-XX:+HeapDumpOnOutOfMemoryError-XX:+ExitOnOutOfMemoryError

配置属性

Presto服务器的配置,每个Presto服务器都可以充当协调器和工作器,如果单独使用一台机器来执行协调工作可以在更大的集群上提供最佳性能,这里PrestoServer既当一个coordinator也是一个worker节点:etc/config.properties。

[root@hop01 etc]# vim config.propertiescoordinator=truenode-scheduler.include-coordinator=truehttp-server.http.port=8083query.max-memory=3GBquery.max-memory-per-node=1GBdiscovery-server.enabled=truediscovery.uri=http://hop01:8083

这里coordinator=true表示当前Presto实例充当协调器角色。

日志配置

[root@hop01 etc]# vim log.propertiescom.facebook.presto=INFO

Catalog属性

/opt/presto/presto-server-0.189/etc/catalog

配置hive适配:

[root@hop01 catalog]# vim hive.propertiesconnector.name=hive-hadoop2hive.metastore.uri=thrift://192.168.37.133:9083

配置MySQL适配:

[root@hop01 catalog]# vim mysql.propertiesconnector.name=mysqlconnection-url=jdbc:mysql://192.168.37.133:3306connection-user=rootconnection-password=123456

3、运行服务

启动命令

[root@hop01 /]# /opt/presto/presto-server-0.189/bin/launcher run

启动日志

这样presto就启动成功了。

三、客户端安装

1、Jar包管理

[root@hop01 presto-cli]# pwd/opt/presto/presto-cli[root@hop01 presto-cli]# llpresto-cli-0.196-executable.jar[root@hop01 presto-cli]# mv presto-cli-0.196-executable.jar presto-cli.jar

2、连接MySQL

java -jar presto-cli.jar --server ip:9000 --catalog mysql --schema sq_export

看完上述内容,你们掌握OLAP中怎么使用Presto组件实现跨数据源分析的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

数据 节点 查询 配置 数据源 多个 分析 服务 对象 服务器 处理 管理 适配 任务 内容 命令 属性 数据库 语句 组件 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 网络安全组织架构和人员 天津潮流软件开发价格服务标准 软件开发 自主 十堰哪里招聘网络安全工程师 手机软件开发课程心得体会 杭州物流软件开发收费 网络安全属于国家工作人员吗 文件怎么存储在云服务器 安徽营销软件开发电话多少 坦克世界服务器准星哪里设置 浙江企星软件开发有限公司 山东济宁网络技术公司 吉林东鳌软件开发 软件开发接口一定要判空 渝中区常规软件开发服务常见问题 国家网络安全网民数量 小学网络安全班会活动感想 淄川在线考试软件开发咨询 网络技术创新中心 区块链 软件开发文档的用途有哪些 四川服务器租用 罗斯文2010数据库下载 交管123一直服务器异常 我的世界服务器一顿一顿的 网络安全小报文档 如何提升教师网络安全 软件开发工作干不了怎么办 上海本地网络技术售后服务 dekk服务器安全模式 研判为水利重大网络安全事件
0