日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Presto概述

Presto(即PrestoDB)是一款靈活、可擴展的分布式SQL查詢引擎。本文介紹Presto的基本特性、系統組成和優勢等信息。

注意事項

EMR-3.45.0和EMR-5.11.0版本開始支持Presto,其版本號通常為0.2XX。此前各版本中的組件版本號為3XX的Presto,其內核均為PrestoSQL或Trino,相關信息請參見Trino概述

基本特性

Presto使用Java語言進行開發,具備易用、高性能和強擴展能力等特點,具體如下:

  • 完全支持ANSI SQL。

  • 支持豐富的數據源,例如,Hive、Hudi、Iceberg、Delta Lake、MySQL和PostgreSQL。

  • 支持高級數據結構,具體如下:

    • 數組和Map數據

    • JSON數據

    • GIS(Geographic Information System)數據

    • 顏色數據

  • 功能擴展能力強,提供了多種擴展機制:

    • 擴展數據連接器

    • 自定義數據類型

    • 自定義SQL函數

  • 流水線:基于Pipeline處理模型數據在處理過程中實時返回給用戶。

  • 監控接口完善:

    • 提供友好的Web UI,可視化的呈現查詢任務執行過程。

    • 支持JMX協議。

系統組成

Presto的系統組成如下圖所示。Presto系統組成

Presto是典型的M/S架構的系統,由一個Coordinator節點和多個Worker節點組成。 Coordinator負責如下工作:

  • 接收用戶查詢請求,解析并生成執行計劃,下發Worker節點執行。

  • 監控Worker節點運行狀態,各個Worker節點與Coordinator節點保持心跳連接,匯報節點狀態。

  • 維護MetaStore數據。

Worker節點負責執行下發到任務,通過連接器讀取外部存儲系統到數據,進行處理,并將處理結果發送給Coordinator節點。

Presto當前不支持高可用架構。在EMR集群中,Coordinator僅會部署在master-1-1節點上;Worker部署在全部Core和Task節點上。

應用場景

Presto是定位在數據倉庫和數據分析業務的分布式SQL引擎,適合以下應用場景:

  • ETL

  • Ad-Hoc查詢

  • 海量結構化數據或半結構化數據分析

  • 海量多維數據聚合或報表分析

重要

Presto是一個數倉類產品,因為其對事務支持有限,所以不適合在線業務場景。

產品優勢

E-MapReduce(簡稱EMR)中的Presto與開源Presto比較,還具備如下優勢:

  • 即買即用,快速完成上百節點的Presto集群搭建。

  • 彈性擴縮容,簡單快速。

  • 與EMR軟件棧完美結合,支持DLF和OSS或OSS-HDFS。

  • 無需運維,EMR提供一站式服務。

基本概念

數據模型

數據模型即數據的組織形式。Presto使用Catalog、Schema和Table三層結構來管理數據。

  • Catalog:一個Catalog可以包含多個Schema,物理上指向一個外部數據源,可以通過Connector訪問該數據源。一次查詢可以訪問一個或多個Catalog。

  • Schema:相當于一個數據庫實例,一個Schema包含多張數據表。

  • Table:數據表,與一般意義上的數據庫表相同。

Connector

Presto通過內置的各種Connector來接入多種外部數據源。Presto提供了一套標準的SPI接口,您可以使用這套接口開發自己的Connector,以便訪問自定義的數據源。

通常,一個Catalog會綁定一種類型的Connector,并在Catalog的Properties文件中進行設置。

更多參考

請根據您所使用的Presto組件的版本號,修改https://prestodb.io/docs/XXX/中的XXX為對應的版本號,然后在瀏覽器訪問該鏈接,即可查看開源Presto文檔。

例如,如果您的Presto版本號為0.279,則可以訪問https://prestodb.io/docs/0.279/,查看相應版本的開源Presto文檔。