App下載

為什么說Presto是數據分析堆?;A? Presto是數據分析堆?;A5大理由!

君心似我心 2021-09-09 15:34:11 瀏覽數 (6268)
反饋

數據工程師和分析師對大量數據運行交互式臨時分析的需求繼續(xù)呈爆炸性增長。數據平臺團隊越來越多地使用聯(lián)合SQL 查詢引擎 PrestoDB 為各種用例運行此類分析,跨越廣泛的數據湖和數據庫就地,而無需移動數據。PrestoDB 由 Linux 基金會的Presto 基金會托管,是在 Facebook、Uber 和 Twitter 上大規(guī)模運行的同一個項目。

讓我們來看看 Presto 的一些重要特征,這些特征解釋了它的日益普及。  

更輕松地與生態(tài)系統(tǒng)集成 

Presto 旨在與現有數據生態(tài)系統(tǒng)無縫集成,無需對正在進行的系統(tǒng)進行任何修改。這就像使用額外的更快的數據訪問接口為您現有的堆棧增壓。

Presto 提供額外的計算層以加快分析速度。它不存儲數據,這使它具有能夠根據需求向上和向下擴展查詢資源的巨大優(yōu)勢。

這種計算和存儲分離使 Presto 查詢引擎非常適合云環(huán)境。大多數云部署利用對象存儲,它已經從計算層中分離出來,并自動擴展以優(yōu)化資源成本。

統(tǒng)一的 SQL 接口 

SQL 是迄今為止最古老、使用最廣泛的數據分析語言。分析師、數據工程師和數據科學家使用 SQL 來探索數據、構建儀表板并通過 Jupyter 和 Zeppelin 等筆記本或 Tableau、PowerBI 和 Looker 等 BI 工具來測試假設。 

Presto 是一個聯(lián)合查詢引擎,它不僅能夠從分布式文件系統(tǒng)中查詢數據,還能夠從其他來源查詢數據,例如 Cassandra、Elasticsearch 和 RDBMS 等 NoSQL 存儲,甚至是 Kafka 等消息隊列。

表現

Facebook 團隊開發(fā) Presto 是因為 Apache Hive 不適合交互式查詢。Hive 的下劃線架構通過執(zhí)行多個 MapReduce 和 Tez 作業(yè)來執(zhí)行查詢,非常適合大型復雜作業(yè),但不適用于低延遲查詢。Hive 項目最近使用 Hive LLAP 引入了內存緩存;然而,它適用于某些類型的查詢,但它也使 Hive 更加資源密集。 

同樣,Apache Spark 非常適合使用內存計算的大型復雜作業(yè)。但是,它不如 Presto 交互式 BI 查詢有效。 

Presto 專為高性能而打造,具有多項關鍵功能和優(yōu)化,例如代碼生成、內存中處理和流水線執(zhí)行。Presto 查詢在工作節(jié)點上共享一個長期存在的 Java 虛擬機 (JVM) 進程,從而避免了產生新 JVM 容器的開銷。

查詢聯(lián)合

Presto 提供了一個統(tǒng)一的 SQL 方言,可以抽象出所有支持的數據源。這是一項強大的功能,用戶無需了解底層系統(tǒng)的連接和 SQL 方言。 

適合云的設計 

Presto 將存儲和計算分開運行的基本設計使其在云環(huán)境中操作極其方便。由于 Presto 集群不存儲任何數據,因此可以根據負載自動擴展,而不會造成任何數據丟失。

如您所見,Presto 為交互式即席查詢提供了許多優(yōu)勢。難怪數據平臺團隊越來越多地使用 Presto 作為事實上的 SQL 查詢引擎,在不需要移動數據的情況下跨數據源運行分析。


0 人點贊