作者:可卡因 | 来源:互联网 | 2024-12-11 13:34
Facebook PrestoDB 配置指南
安装与配置
首先,通过以下命令下载并解压 PrestoDB 服务器:
wget https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.145/presto-server-0.145.tar.gz
tar xzvf presto-server-0.145.tar.gz
cd presto-server-0.145
mkdir etc
在 etc
目录下创建以下配置文件:
1. node.properties
2. jvm.config
3. config.properties
4. log.properties
5. Catalog 属性文件
node.properties 配置
node.envirOnment=production # 环境名称,集群中所有节点应保持一致
node.id=unique-id # 节点唯一标识,每个节点需不同
node.data-dir=/path/to/data # 数据存储路径
jvm.config 配置
-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegiOnSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:OnOutOfMemoryError=kill -9 %p
config.properties 配置
# 协调器最小配置
coordinator=true
node-scheduler.include-coordinator=false
http-server.http.port=8080
query.max-memory=50GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://example.net:8080
# 工作节点最小配置
coordinator=false
http-server.http.port=8080
query.max-memory=50GB
query.max-memory-per-node=1GB
discovery.uri=http://example.net:8080
# 当一台机器同时作为协调器和工作节点时
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://example.net:8080
log.properties 配置
com.facebook.presto=INFO
Catalog 配置
# 在 etc 目录下创建 catalog 文件夹,并为所需连接器创建相应的属性文件
# 如使用 MySQL 连接器,则创建 mysql.properties
connector.name=mysql
connection-url=jdbc:mysql://localhost:3306
connection-user=root
connection-password=your_password
# 若有多个数据库,可在 catalog 下创建多个 .properties 文件,确保文件名唯一
启动 PrestoDB
# 后台启动
bin/launcher start
# 前台启动(用于查看日志)
bin/launcher run
# 停止服务
bin/launcher stop
启动后,您可以在指定的数据目录中找到日志文件。
命令行客户端
# 下载命令行客户端
wget https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.146/presto-cli-0.146-executable.jar
# 重命名文件
mv presto-cli-0.146-executable.jar presto
# 添加执行权限
chmod +x presto
# 执行查询
./presto --server localhost:8080 --catalog mysql --schema your_schema
结束语
由于资源限制,本文未进行大规模查询测试,未来将逐步完善相关测试案例。
参考资料
【1】官方部署文档
【2】MySQL 连接器文档
【3】命令行客户端文档
本文遵循 CC BY-NC-SA 4.0 许可协议,欢迎转载、使用和分享。