1、簡(jiǎn)介
Presto 是一個(gè)開(kāi)源分布式 SQL 查詢(xún)引擎,用于針對(duì)從千兆字節(jié)到 PB 級(jí)的各種規(guī)模的數(shù)據(jù)源運(yùn)行交互式分析查詢(xún)。Presto 允許查詢(xún)數(shù)據(jù)所在的位置,包括 Hive、Cassandra、關(guān)系數(shù)據(jù)庫(kù)甚至專(zhuān)有數(shù)據(jù)存儲(chǔ)。單個(gè) Presto 查詢(xún)可以組合來(lái)自多個(gè)來(lái)源的數(shù)據(jù),從而允許對(duì)整個(gè)組織進(jìn)行分析。
2、下載安裝
1)下載鏡像
docker pull starburstdata/presto
2)下載客戶(hù)端jar
因?yàn)閜ull下來(lái)的鏡像是server,是沒(méi)有presto-cli命令的,所以需要下載presto-cli-0.260.1-executable.jar,然后將下載好的jar包拉入Linux系統(tǒng)中。
下載完成后,run容器:
#端口號(hào)為8080,請(qǐng)自行修改,名字為presto
docker run -d -p 8080:8080 --name presto starburstdata/presto
將客戶(hù)端jar包拷貝到容器中的bin目錄下:
docker cp [客戶(hù)端jar包所在的linux路徑] [容器名]:/bin
進(jìn)入到hadoop配置文件目錄,將core-site.xml和hdfs-site.xml復(fù)制到容器中
cd ${HADOOP_HOME}/etc/hadoop
docker cp core-site.xml presto:/usr/lib/presto/etc/
docker cp core-site.xml presto:/usr/lib/presto/etc/
進(jìn)入容器(以下不標(biāo)注都是在容器中進(jìn)行的操作):
#以root用戶(hù)進(jìn)入容器,防止沒(méi)有權(quán)限操作文件
docker exec --user=root -it presto /bin/bash
將客戶(hù)端jar包改名并賦予可執(zhí)行權(quán)限:
cd bin
mv presto-cli-0.260.1-executable.jar presto-cli
chmod a+x presto-cli
3、配置文件
進(jìn)入配置文件目錄,創(chuàng)建hive配置文件:
cd /usr/lib/presto/etc/catalog
vi hive.properties
hive.properties:
#連接名,固定
connector.name=hive-hadoop2
#hive元數(shù)據(jù)uri,在hive-site.xml里能夠找到,請(qǐng)自行修改ip和端口
hive.metastore.uri=thrift://192.168.10.51:9083
#hive配置的資源 core-site.xml和hdfs-site.xml,請(qǐng)根據(jù)自己集群中的配置文件路徑進(jìn)行修改,中間用逗號(hào)隔開(kāi)
hive.config.resources=/usr/lib/presto/etc/core-site.xml,/usr/lib/presto/etc/hdfs-site.xml
wq保存退出
重啟容器(在linux命令行下):
4、測(cè)試連接
進(jìn)入容器:
#以root用戶(hù)進(jìn)入容器,防止沒(méi)有權(quán)限操作文件
docker exec --user=root -it presto /bin/bash
#進(jìn)入bin目錄
cd bin
#執(zhí)行命令行腳本并測(cè)試hive連接,連接到hive配置文件,數(shù)據(jù)庫(kù)是default
./presto-cli --server localhost:8080 --catalog hive --schema default
presto>show tables;
到此這篇關(guān)于Docker安裝Presto連接Hive的詳細(xì)過(guò)程的文章就介紹到這了,更多相關(guān)Docker安裝Presto內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!