這篇文章給大家分享的是有關大數(shù)據(jù)查詢引擎Presto的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)是專業(yè)的宜昌網(wǎng)站建設公司,宜昌接單;提供成都網(wǎng)站建設、做網(wǎng)站,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行宜昌網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
Presto設計精巧,可以處理海量數(shù)據(jù),最大化地利用硬件性能,計算全部在內(nèi)存中完成,很好的利用高速網(wǎng)絡來進行數(shù)據(jù)調度。性能基本上是Hive的10倍。
支持直接使用presto-jdbc驅動完成Java應用程序開發(fā)。
Presto集群中的數(shù)據(jù)傳輸、節(jié)點通信、心跳感應、計算監(jiān)控、計算調度和計算分布全部都是基于RESTful服務實現(xiàn)的,因此Presto中的RESTful服務就是Presto所有服務的基石。
Presto客戶端對查詢語句的提交流程:
1、從指定文件、命令行參數(shù)或者Cli窗口中獲取需要執(zhí)行的SQL語句
2、將得到的SQL語句組裝成一個RESTful請求,發(fā)送給Coordinator,并處理返回的response。
3、Cli 會不停地循環(huán)分批讀取查詢結果并在屏幕進行動態(tài)顯示,直到查詢結果完全顯示完畢。
向Presto集群提交一個查詢,其整個過程會經(jīng)歷4個階段:
1、提交查詢:客戶端向Coordinator提供的RESTful服務提交SQL語句
2、生成查詢執(zhí)行計劃:Coordinator根據(jù)傳遞的SQL語句生成響應的查詢執(zhí)行計劃
3、查詢調度:Coordinator根據(jù)生成的查詢執(zhí)行計劃,依次進行Stage和Task調度。
4、查詢執(zhí)行:最終Coordinator會調度最空閑的Worker執(zhí)行相應的Task進行實際計算任務。
Presto隊列是用于控制查詢并發(fā)量和可接收的SQL數(shù)量,可針對用戶、提交來源、Session等信息進行個性化配置。
Presto支持眾多數(shù)據(jù)源Connector,最常用的為Hive Connector。
Hive Connector 使用Hive的元數(shù)據(jù),Coordinator節(jié)點通過Hive Metastore加載元數(shù)據(jù),Presto的計算節(jié)點讀取Hive表對應的HDFS數(shù)據(jù)。
Kafka Connector 支持Apache Kafka 0.8及以上版本,將Apache Kafka 中的topics 當作表進行處理,topics中每條消息在Presto中被解析為表中的一行數(shù)據(jù)。
感謝各位的閱讀!關于“大數(shù)據(jù)查詢引擎Presto的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!