優化數據處理效率,解讀 EasyMR 大數據組件升級

来源:https://www.cnblogs.com/DTinsight/p/18334245
-Advertisement-
Play Games

EasyMR 作為袋鼠雲基於雲原生技術和 Hadoop、Hive、Spark、Flink、Hbase、Presto 等開源大數據組件構建的彈性計算引擎。此前,我們已就其展開了多方位、多角度的詳盡介紹。而此次,我們成功接入了大數據組件的升級和回滾功能,能夠藉助 EasyMR 來掌控大數據組件的升級與回 ...


EasyMR 作為袋鼠雲基於雲原生技術和 Hadoop、Hive、Spark、Flink、Hbase、Presto 等開源大數據組件構建的彈性計算引擎。此前,我們已就其展開了多方位、多角度的詳盡介紹。而此次,我們成功接入了大數據組件的升級和回滾功能,能夠藉助 EasyMR 來掌控大數據組件的升級與回滾流程。

在本文中,我們就將為大家詳細介紹在 EasyMR 中如何接管大數據組件的升級和回滾流程。

傳統大數據組件升級

大數據技術當下是全球各行業的核心技術之一,其核心要義在於把數據拆解為更小的數據塊,然後在分散式的環境中加以處理。Hadoop 和 Spark 作為當前最流行的大數據處理框架,它們通過不同的方法來實現這一目標。

而在傳統的大數據組件升級流程中,通常會遵循以下幾個步驟:

● 環境準備

· 確保當前環境滿足新版本 Spark 和 Hive 的依賴要求

· 備份當前的配置文件和重要數據

● 下載軟體

· 從官方網站下載新版本的 Spark 和 Hive 安裝包

● 停止服務

· 在升級前,停止所有正在運行的 Hadoop、Hive 和 Spark 服務

● 替換安裝包

· 將下載的新版本 Spark 和 Hive 安裝包替換舊版本的安裝包

● 配置 Hive

· 解壓 Hive 安裝包並重命名目錄

· 修改 hive-site.xml 配置文件,將舊版本的配置文件複製到新版本中,並根據新版本的要求進行必要的修改和更新

· 將 MySQL 的 JDBC 驅動放到 Hive 的 lib 目錄下

● 配置 Spark

· 解壓 Spark 安裝包

· 配置 spark-env.sh 和 spark-defaults.conf 文件,將舊版本的配置文件複製到新版本中,並根據新版本的要求進行必要的修改和更新

· 將 Spark 的 jar 包上傳到 HDFS 的特定目錄下

● Hive 元數據升級

· 如果 Hive 版本有變更,可能需要使用 schematool 工具來升級 Hive 的元數據存儲

● 啟動服務

· 啟動 Hadoop 集群和 MySQL 服務

· 啟動 Hive 服務,包括 Metastore 和 HiveServer2

● 重新配置集成

· 根據新版本的要求重新配置 Spark 與 Hive 的集成,包括更新 hive-site.xml 和 spark-defaults.conf 文件

● 測試驗證

· 啟動 Hadoop、Hive 和 Spark 服務,執行測試查詢以驗證升級是否成功

在上述流程中,我們能夠明顯看出升級流程的繁瑣。同時,大數據組件部署之間存在一定差異,例如:hbase 與其他組件不同,需要備份 zookeeper。這意味著在部署時,我們首先要將各個組件間升級的差異點和升級方案進行總結。

鑒於 Hadoop 本身的複雜性,運維人員在進行升級操作時,需要確認升級方案有無遺漏之處,一旦出現步驟遺漏,便會致使升級失敗,嚴重情況下還可能造成數據丟失。

EasyMR 接管大數據組件升級

考慮到上述傳統 Hadoop 升級所產生的複雜狀況,我們決定把這種複雜性交由平臺來處理,由平臺接管升級過程中不同組件的差異性操作以及配置文件備份等相關操作,將簡單的操作邏輯呈現給用戶。

接下來,我們將從 Hive、HBase 和 Spark 組件的升級方面,來介紹 EasyMR 是如何接管大數據組件的升級流程的。

Hadoop 部署

主機模式下部署 Hadoop 時,我們需要下載 Hadoop 的安裝包,並依照步驟逐步進行操作。然而,在 EasyMR 上,我們僅需按照打包文檔把打包好的產品包上傳至 EasyMR 平臺,即可實現一鍵部署。

file

選擇需要部署的 Hadoop 服務。

file

先分配服務需要部署的節點,隨後執行部署,等待一段時間,若沒有問題,便完成了 Hadoop 組件的部署工作。

Hadoop 的升級也僅需按照上述流程操作即可,EasyMR 會首先自動停止並卸載舊服務,並且備份舊的配置文件。在上述流程順利通過後,再進行新版本的部署。

file

Hive 升級

上面我們已回顧了 Hadoop 組件的部署方式,接下來正式介紹 Hive 組件從 3.1.2 版本升級到 3.2.2 版本的具體步驟。

file

在 Hive 的升級過程中,需要先利用 mysqldump 工具對 MySQL 資料庫進行備份,只有當備份成功後,方可進行後續的升級操作。

file

升級流程將按照 Hadoop 升級邏輯分配服務節點進行部署。

file

HBase 升級

HBase 升級和 Hive 升級存在差異。Hive 升級首先得備份資料庫,HBase 卻不用,只需操作人員在部署時確認 HBase 的相容性問題就行。

file

後續同樣按照升級流程,勾選產品包部署服務,分配服務部署節點即可。

Spark 升級

Spark 升級時需要留意的是,有無正在運行的任務。在 Spark 升級前,會獲取 yarn_resourcemanager 上運行中的任務狀態,若存在,會給出提示。然後由操作人員依據當前狀況決定是否強制升級。

file

平臺管控備份流程

上面介紹了用戶層面能感知到的不同服務升級的差異,下麵來講一講在程式後臺我們開展的那些操作。

· 每次升級回滾,後臺會自動將 conf 配置文件備份,防止配置丟失

file

· 在 HBase 升級流程中,會先備份 zookeeper 的服務數據

file

· 然後通過 grpc 服務調用 hbase_bak 備份腳本,對 Hadoop 的服務數據進行備份

file

經過上述操作,我們可以很輕鬆地在 EasyMR 上完成大數據組件的升級和回滾操作,其餘服務也能通過類似步驟操作完成。

總結

在 AI 蓬勃發展的時代,數據已然成為 AI 應用中至關重要的一個環節。EasyMR 作為國產的大數據引擎,將會在大數據領域展開更為深入的探索,致力於簡化大數據工具的操作難度,提高運維人員的工作效率。

《行業指標體系白皮書》下載地址:https://www.dtstack.com/resources/1057?src=szsm

《數棧產品白皮書》下載地址:https://www.dtstack.com/resources/1004?src=szsm

《數據治理行業實踐白皮書》下載地址:https://www.dtstack.com/resources/1001?src=szsm

想瞭解或咨詢更多有關大數據產品、行業解決方案、客戶案例的朋友,瀏覽袋鼠雲官網:https://www.dtstack.com/?src=szbky


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文分享自天翼雲開發者社區《redis漸進式rehash》,作者:l****n Redis是k-v型資料庫,其內部設計了一種dict類型的數據結構用來存儲鍵值結構。 dict 通常的存儲結構是 Key-Value 形式的,通過 Hash 函數對 key 求 Hash 值來確定 Value 的位置,因 ...
  • 《數據資產管理核心技術與應用》是由清華大學出版社出版的一本圖書,該圖書主要特點如下: 1、依托於大數據技術,獨家解密數據血緣的底層技術實現 2、詳解數據資產管理的知識體系和核心技術 3、應用元數據管理和數據建模技術,充分發揮出數據資產的更大潛力和價值。 4、全書從元數據、數據血緣、數據質量、數據服務 ...
  • 因為在工作中需要推動Apache DolphinScheduler的升級,經過預研,從1.3.4到3.1.2有的體驗了很大的提升,在性能和功能性有了很多的改善,推薦升級。 查看官方的升級文檔,可知有提供升級腳本,如果只是跨小版本的更新那麼只用執行腳本就好了,但跨多個大版本升級時依然容易出現各種問題, ...
  • 近日,2024可信資料庫發展大會在北京召開,主題為“自主、創新、引領”。大會重磅發佈多項中國信通院及中國通信標準化協會大數據技術標準推進委員會(CCSA TC601)在資料庫領域最新研究和實踐成果。一眾資料庫領域的專家、學者、創業者匯聚一堂,圍繞金融、電信、能源與政務領域的資料庫應用創新帶來切實的落... ...
  • 最近我們遇到很多客戶需求是把Talend遷移到WhaleStudio,主要是發現WhaleStudio支持的數據源多很多,從各個版本的SAP到AWS Redshift,S3,從MangoDB CDC到 Neo4J甚至各種國產信創數據源,可謂應有盡有。同時,客戶發現WhaleStudio同步效率比Ta ...
  • 這次向大家分享一篇流圖處理系統論文GraphBolt,看如何基於計算曆史的方式實現增量圖計算,並保證與全量圖計算語義的一致性。 ...
  • 寫在前面 今天繼續前面的20題之後的練習,數據都是一樣的,可以直接使用,來看看你的sql功底降了沒。 基礎20題 #1.查詢每個員⼯的姓名、郵箱、職位名稱以及所在部⻔名稱。 SELECT CONCAT(last_name,first_name) as 姓名, email, job_title, de ...
  • 這次向大家分享Microsoft發表在SOSP'13的另一篇關於流處理系統論文Naiad,TimelyDataflow是它的開源實現。該論文促進了後續的流圖系統的設計與創新,從其調度框架設計中也可以看到TuGraph Analytics調度器的影子。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...