大數據分析引擎之presto簡介
簡介:
presto是一個大數據分析引擎,不屬於hadoop體系,他是基於內存的。他的集羣模式是主從式的。
他可以與任何的大數據存儲引擎做集成,集成的時候使用它的Connectors集成
從這裏我們可以他可以和kafka、mysql、內存、hive來做集成
安裝:
1.解壓:tar -zxvf presto-server-0.217.tar.gz -C ~/training/
2.創建etc目錄,幷包含以下配置文件
cd ~/training/presto-server-0.217/
mkdir etc
① Node Properties: 節點的配置信息
② JVM Config: 命令行工具的JVM配置參數
③ Config Properties: Presto Server的配置參數
④ Catalog Properties: 數據源(Connectors)的配置參數
⑤ Log Properties:日誌參數配置
node.properties
#集羣名稱。所有在同一個集羣中的Presto節點必須擁有相同的集羣名稱。
node.environment=production
#每個Presto節點的唯一標示。每個節點的node.id都必須是唯一的。在Presto進行重啓或者升級過程中每個節點的node.id必須保持不變。如果在一個節點上安裝多個Presto實例(例如:在同一臺機器上安裝多個Presto節點),那麼每個Presto節點必須擁有唯一的node.id。
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff
# 數據存儲目錄的位置(操作系統上的路徑)。Presto將會把日期和數據存儲在這個目錄下。
node.data-dir=/root/training/presto-server-0.217/data
jvm.config(內存相關配置)
-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError
config.properties(因爲測試用到的一臺虛擬機所以我們只簡單配置一個文件就行了,如果我們是全分佈式的需要配置主節點和從節點的)
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery-server.enabled=true
discovery.uri=http://192.168.112.111:8080
log.properties (日誌相關配置)
com.facebook.presto=INFO
集成hive,集成hive的時候我們必須在presto的etc文件夾下創建一個catalog目錄,所有集成數據源都在這裏配置
mkdir /root/training/presto-server-0.217/etc/catalog
hive.properties(集成hive的配置文件)
#註明hadoop的版本
connector.name=hive-hadoop2
#hive-site中配置的地址
hive.metastore.uri=thrift://192.168.157.111:9083
#hadoop的配置文件路徑
hive.config.resources=/root/training/hadoop-3.1.2/etc/hadoop/core-site.xml,/root/training/hadoop-3.1.2/etc/hadoop/hdfs-site.xml
注意:要訪問Hive的話,需要將Hive的MetaStore啓動:hive --service metastore
這個窗口不能關掉
用來另一個窗口啓動Presto
啓動Presto Server
./launcher start
運行presto-cli
下載:presto-cli-0.217-executable.jar
重命名jar包,並增加執行權限
cp presto-cli-0.217-executable.jar presto
chmod a+x presto
連接Presto Server
./presto --server localhost:8080 --catalog hive --schema default
然後我們使用presto命令行模式連接到hive的default默認的數據庫中
可以使用show tables查看一下default庫中的table,並查看一下它裏邊的表
這樣我們就把presto配置完成了