自建Hive数据仓库跨版本迁移到阿里云E-MapReduce
最佳實踐概述
應用場景
客戶在IDC或者公有云環境自建Hadoop集群,數據集中保存在HDFS文件系統,同時借助Hive進行常見的ETL任務。客戶在決策上云之后,會將自建Hadoop集群的數據遷移到阿里云自建Hadoop或者EMR。
技術架構
本實踐方案基于如下圖所示的技術架構和主要流程編寫操作步驟。?
方案優勢
- 易用性?
您可以簡單選擇所需ECS機型(CPU、內存)與磁盤,并選擇所需的軟件,進行自動化部署。 - 經濟性?
您可以按需創建集群,即離線作業運行結束就可以釋放集群,還可以在需要時動態地增加節點。 - 深度整合?
E-MapReduce與阿里云其它產品(例如,OSS、MNS、RDS 和 MaxCompute 等)進行了深度整合,支持以這些產品作為Hadoop/Spark計算引擎的輸入源或者輸出目的地。 - 安全?
E-MapReduce整合了阿里云RAM資源權限管理系統,通過主子賬號對服務權限進行隔離。 - 可靠性?
使用阿里云數據庫RDS保存Hive的元數據信息,可以提升數據可靠性和服務可用性,免除客戶運維自建MySQL數據庫的工作。
前置條件
在進行本文操作之前,您需要完成以下準備工作:
- 注冊阿里云賬號,并完成實名認證。您可以登錄阿里云控制臺,并前往實名認證頁面查看是否已經完成實名認證。
- 阿里云賬戶余額大于100元。您可以登錄阿里云控制臺,并前往賬戶總覽頁面查看賬戶余額。
- 擁有已經通過備案的域名。
- 開通ECS、OSS、EMR、RDS、DTS和VPN網關等服務。
資源規劃說明
- 本方案僅作為實踐演練使用,在生產環境中執行時請結合業務系統實際架構進行
調整。 - 本方案購買的所有云產品規格均為演示需要,請根據實際業務需求購買對應規格
的產品和服務。 - 本方案重在展示遷移思路和方法,線下IDC的模擬環境以組件配置呈現。
1. 基礎環境搭建
本實踐方案中,將按照技術架構圖搭建相對完整的實踐環境,包括Apache日志發生
器、Kafka隊列、Hadoop集群、Hive+MySQL元數據庫。?
1.1. 搭建Hadoop + Kafka + 日志發生器環境
請參考《自建Hadoop數據遷移到阿里云EMR》最佳實踐
第1章:1. 自建Hadoop集群環境搭建,完成本實踐方案的基礎環境搭建。
1.2. 創建Hive元數據庫
本實踐方案將在ECS上安裝MySQL數據庫,用于保存Hive元數據信息。?
步驟1?登錄云服務器控制臺,地域:華東2(上海)。?
步驟2?在實例列表頁面,單擊右上角的創建實例。?
步驟3?在自定義購買模式下,完成各項配置。?
基礎配置:
- 付費模式:本實踐方案選用搶占式實例。?
說明:在方案演示過程中,我們選用搶占式實例來降低您的成本;在實際商用環境中,請選擇適合業務場景的ECS實例付費模式。搶占式實例的具體信息, - 地域及可用區:華東2(上海) 可用區F?
- 實例?
ᅳ 實例規格:ecs.g6.large(2 vCPU 8 GiB,通用型g6)
ᅳ 單臺實例規格上限價:創建搶占式實例,必須設置單臺實例規格的價格上限。
a) 選擇設置單臺上限價。?
b) 單擊查看歷史價格。?
c) 在搶占式實例歷史價格走勢圖中,可以看到華東2可用區F的實例當前市場價格為0.034 ¥/實例/小時,因此,我們設置單臺上限價為0.04 ¥/實例/小時,要求略高于當前市場價格。使用者在進行實際操作時,請以界面顯示的實時價格為準。
- 購買實例數量:1臺
- 鏡像:
a) 選擇鏡像市場。?
b) 單擊從鏡像市場獲取更多選擇(含操作系統)。?
c) 輸入magento,并單擊搜索。?
d) 選擇Magento開源電子商務系統(LAMP | 含演示數據),并單擊使用,該鏡像中包含了MySQL數據庫,root用戶的默認密碼為123456?
- 存儲:系統盤?
高效云盤 80GiB
步驟4?配置完成,單擊下一步:網絡和安全組。?
步驟5?在網絡和安全組頁面,參考下表,配置相關參數。
配置完成,單擊下一步:系統配置。
步驟6?在系統配置頁面,參考下表,配置相關參數。
配置完成,單擊確認訂單。
步驟7?在確認訂單頁面,確認各項參數信息。確認無誤,閱讀、同意并勾選《云服務器ECS服務條款》和《鏡像商品使用條款》,并單擊創建實例。?
步驟8?創建任務提交成功后,單擊管理控制臺前往ECS實例列表頁面查看詳情。
至此,本實踐方案中用于模擬客戶自建Hadoop系統的ECS已經全部搭建完成,如下圖所示:?
步驟9?通過如下網址登錄到MySQL控制臺:?
http://mysql所在ecs的公網ip地址/phpmyadmin?
步驟10?創建賬號,該賬號用于Hive進行連接。
完成后界面顯示如下圖所示:?
1.3. 安裝并配置Hive
在本實踐方案中,采用Hive 1.2.2版本作為源版本。?
步驟1?通過SSH登錄到hadoop-master節點,執行以下命令下載并解壓Hive軟件包。
步驟2?配置環境變量。?
vim /etc/profile
步驟3?生成hive-site.xml配置文件。
cd /usr/local/apache-hive-1.2.2-bin/conf cp hive-default.xml.template hive-site.xml vim hive-site.xmljdbc:mysql://192.168.100.140:3306/hive122db?createDatabaseIfNotExist=true
說明:
(1) 將紅色字體的192.168.100.140替換為您環境中MySQL的VPC IP地址。?
(2) hive122db為MySQL中的數據庫,用于保存Hive的元數據。
步驟4?生成并配置hive-env.sh啟動文件。
cd /usr/local/apache-hive-1.2.2-bin/conf cp hive-env.sh.template hive-env.sh vim hive-env.sh在文件末尾添加如下內容,保存后退出:
export HIVE_AUX_JARS_PATH=/usr/local/apache-hive-1.2.2-bin/lib步驟5?下載MySQL驅動程序。
cd /usr/local/apache-hive-1.2.2-bin/lib- 通過下面命令下載MySQL Connector庫文件
步驟6?初始化源數據庫。
cd /usr/local/apache-hive-1.2.2-bin/bin ./schematool -dbType mysql -initSchema -verbose當界面出現下圖所示信息時表示初始化完成。?
?
步驟7?啟動Hive進入HQL命令行交互界面。?
hive?
說明:在hive命令行界面,使用quit退出。
原文鏈接
本文為阿里云原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的自建Hive数据仓库跨版本迁移到阿里云E-MapReduce的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 云解析DNS能为你做什么?
- 下一篇: 【机器人】标记不友好评论,AI工作效果是