Pivotal 產品介紹: Greenplum Stream Server

Celebrus 在資料科學上的應用
2021-06-16
EDB 成功案例: ARiMR 波蘭農業組織透過 Postgres Advanced 改善關鍵系統的可用性
2021-06-18

概述

Greenplum Stream Server (GPSS) 是一個 ETL 工具,用於提取、轉換、加載數據。

從單個或數個用戶端擷取數據流,並藉由 Greenplum 資料庫的可讀式分類表轉換數據並新增至選定 Greenplum 表格中,而資料的來源和格式則專於客戶端 ── 以上為 GPSS 實例。

GPSS 包括 gpss 命令列工具 (command-line utility),這也代表當用戶使用 gpss 時, GPSS 的一個實例會被開啟── 也就是會無限期的等待來自客戶端的數據。

此外,GPSS 也擁有 gpsscli 命令列工具── 一個向 GPSS 實例回報數據加載工作並管理作業的客戶端工具。

架構

Greenplum Stream Server 是一個 gRPC 服務器,不論是連接到 Greenplum 資料庫和檢查 Greenplum metadata ,或是將數據從客戶端寫入 Greenplum 資料庫表過程中所需的操作和資訊,都屬於 GPSS gRPC 的業務範疇。

Gpsscli 公用程式是 GPSS 的一個 gRPC 客戶端,而 Greenplum-Kafka 整合和 Greenplum-Informatica 連接器也是如此,這讓使用者能夠透過 GPSS API 開發自己的 GPSS gRPC 客戶端。

圖示. Greenplum Stream Server 架構

greenplum structure

使用 GPSS 執行 ETL 任務的常見事件順序如下:

  1. 使用者透過客戶端應用程式啟動一個或多個 ETL 負載任務
  2. 客戶端應用程式藉由 gRPC 協議向執行中的 GPSS 服務實例提交數據並啟動加載作業。
  3. GPSS 服務實例向 Greenplum 資料庫集群中的主管實例提交每一個加載要求事項,並創建或重新使用外部表格以儲存數據。
  4. GPSS 服務實例將來自客戶端的數據直接寫入 Greenplum 資料庫集群的分段中。

限制

Greenplum Stream Server 不支援將多個 Kafka 主題數據加載至單一 Greenplum 資料庫表中。

若 GPSS 遭遇此情況,所有作業將停止。

更多 Greenplum 資訊請至產品專區