DynamoDB - MapReduce



Amazon 的 Elastic MapReduce (EMR) 允許您快速有效地處理大資料。EMR 在 EC2 例項上執行 Apache Hadoop,但簡化了流程。您可以利用 Apache Hive 透過 HiveQL(類似於 SQL 的查詢語言)查詢 MapReduce 作業流程。Apache Hive 作為一種最佳化查詢和應用程式的方法。

您可以使用管理控制檯的 EMR 選項卡、EMR CLI、API 或 SDK 來啟動作業流程。您還可以選擇互動式執行 Hive 或使用指令碼。

EMR 的讀/寫操作會影響吞吐量消耗,但是,在大請求中,它會在後退演算法的保護下執行重試。此外,與其他操作和任務同時執行 EMR 可能會導致限制。

DynamoDB/EMR 整合不支援二進位制和二進位制集屬性。

DynamoDB/EMR 整合先決條件

在使用 EMR 之前,請檢視此必要專案清單 -

  • AWS 賬戶
  • 在 EMR 操作中使用的同一賬戶下填充的表
  • 具有 DynamoDB 連線性的自定義 Hive 版本
  • DynamoDB 連線支援
  • S3 儲存桶(可選)
  • SSH 客戶端(可選)
  • EC2 金鑰對(可選)

Hive 設定

在使用 EMR 之前,建立一個金鑰對以互動模式執行 Hive。金鑰對允許連線到 EC2 例項和作業流程的主節點。

您可以按照以下步驟執行此操作 -

  • 登入到管理控制檯,並開啟位於 https://console.aws.amazon.com/ec2/ 的 EC2 控制檯

  • 在控制檯的右上方選擇一個區域。確保區域與 DynamoDB 區域匹配。

  • 在導航窗格中,選擇“金鑰對”。

  • 選擇“建立金鑰對”。

  • 在“金鑰對名稱”欄位中,輸入名稱並選擇“建立”。

  • 下載生成的私鑰檔案,該檔案使用以下格式:filename.pem。

注意 - 如果沒有金鑰對,則無法連線到 EC2 例項。

Hive 叢集

建立一個啟用 Hive 的叢集以執行 Hive。它構建了 Hive 到 DynamoDB 連線所需的環境應用程式和基礎設施。

您可以使用以下步驟執行此任務 -

  • 訪問 EMR 控制檯。

  • 選擇“建立叢集”。

  • 在建立螢幕中,設定叢集配置,為叢集設定描述性名稱,為終止保護選擇“是”,並選中“啟用”以進行日誌記錄,為“日誌資料夾 S3 位置”指定 S3 目標,併為除錯選中“啟用”。

  • 在“軟體配置”螢幕中,確保欄位為 Hadoop 分發版保留“Amazon”,為 AMI 版本保留最新版本,為“要安裝的應用程式-Hive”保留預設 Hive 版本,為“要安裝的應用程式-Pig”保留預設 Pig 版本。

  • 在“硬體配置”螢幕中,確保欄位為網路保留“啟動到 EC2-Classic”,為 EC2 可用區保留“無偏好”,為“主-Amazon EC2 例項型別”保留預設值,不選中“請求 Spot 例項”,為“核心-Amazon EC2 例項型別”保留預設值,為“數量”保留“2”,不選中“請求 Spot 例項”,為“任務-Amazon EC2 例項型別”保留預設值,為“數量”保留“0”,不選中“請求 Spot 例項”。

務必設定一個限制,提供足夠的容量以防止叢集失敗。

  • 在“安全和訪問”螢幕中,確保欄位在 EC2 金鑰對中保留您的金鑰對,在 IAM 使用者訪問中保留“無其他 IAM 使用者”,在 IAM 角色中保留“無需角色繼續”。

  • 檢視“引導操作”螢幕,但不要修改它。

  • 檢視設定,完成後選擇“建立叢集”。

叢集啟動時會在“摘要”窗格中顯示。

啟用 SSH 會話

您需要一個活動的 SSH 會話才能連線到主節點並執行 CLI 操作。透過在 EMR 控制檯中選擇叢集來查詢主節點。它將主節點列為“主公共 DNS 名稱”。

如果您沒有 PuTTY,請安裝它。然後啟動 PuTTYgen 並選擇“載入”。選擇您的 PEM 檔案並開啟它。PuTTYgen 會通知您匯入成功。選擇“儲存私鑰”以儲存為 PuTTY 私鑰格式 (PPK),併為儲存時不使用密碼選擇“是”。然後為 PuTTY 金鑰輸入名稱,點選“儲存”,然後關閉 PuTTYgen。

使用 PuTTY 透過首先啟動 PuTTY 來與主節點建立連線。從“類別”列表中選擇“會話”。在“主機名”欄位中輸入 hadoop@DNS。在“類別”列表中展開“連線 > SSH”,然後選擇“身份驗證”。在控制選項螢幕中,為身份驗證選擇“瀏覽”以獲取私鑰檔案。然後選擇您的私鑰檔案並開啟它。為安全警報彈出視窗選擇“是”。

連線到主節點後,將出現 Hadoop 命令提示符,這意味著您可以開始互動式 Hive 會話。

Hive 表

Hive 作為一種資料倉庫工具,允許使用 HiveQL 查詢 EMR 叢集。之前的設定為您提供了一個有效的提示。只需輸入“hive”,然後輸入您想要的任何命令即可互動式執行 Hive 命令。有關 Hive 的更多資訊,請參閱我們的 Hive 教程。

廣告

© . All rights reserved.