一種大數據處理方法
【專利摘要】本發明公開了一種大數據處理方法,包括以下步驟:在OpenStack云平臺上創建Hadoop集群,提供大數據處理的基本環境;通過將數據導入到HDFS和Swift中來創建數據源;用戶對步驟2中創建的數據進行處理,并將處理結果通過Web頁面顯示或將處理結果指定到特定路徑下的輸出文件。本發明一種基于OpenStack和Hadoop實現大數據處理的方法,提高了服務器的資源利用率,且降低了大數據的準入門檻。
【專利說明】一種大數據處理方法
【技術領域】
[0001]本發明屬于大數據處理【技術領域】,涉及一種大數據處理方法。
【背景技術】
[0002]隨著網絡信息化時代的日益普遍,移動互聯網、社交網絡、電子商務大大拓展了互聯網的疆界和應用領域,我們正處在一個數據爆炸性增長的"大數據"時代,大數據在社會經濟、政治、文化,人們生活等方面產生深遠的影響,大數據時代對人類的數據駕馭能力提出新的挑戰與機遇。大數據具有海量性、多樣性、高速性、易變性、數據類型繁多,數據價值相對密度低、時效性要求高等特點,已經超出了傳統的數據庫處理系統的處理能力。數據中隱藏著有價值的模式和信息,利用傳統的數據處理的方式,要挖掘出大數據中的信息,需要花費較長時間和巨大的成本,甚至對有些數據無法處理。云計算和大數據革命掀起的浪潮,帶動了數據分析行業的發展,云計算提供基礎架構平臺,大數據應用運行在這個平臺上,這是目前公認非常高效的處理大數據的方法之一。利用云計算來進行大數據分析,勢必成為將來的發展趨勢之一。其中以Hadoop應用為代表的大數據分析,是最適合在云平臺上運行的業務之一。
[0003]OpenStack是一種開源云計算技術,它主要的任務是簡化云的部署過程并為其帶來良好的可擴展性。
[0004]為了方便快速的對大數據進行處理分析,從中挖掘出數據的價值,我們提出一種新的處理方法即OpenSatck Sahara,利用Openstack Sahara可以快速和低成本的挖掘出大數據中的信息。
【發明內容】
[0005]本發明的目的是提供一種大數據處理方法,提高了服務器的資源利用率,且降低了大數據的準入門檻。
[0006]本發明的技術方案是,一種大數據處理方法,具體按照以下步驟實施:
[0007]步驟I,在openstack云平臺上創建Hadoop集群,提供大數據處理的基本環境;
[0008]步驟2,通過將數據導入到HDFS和Swift中來創建數據源;
[0009]步驟3,用戶對步驟2中創建的數據源中的數據進行處理,并將處理結果通過Web頁面顯示或將處理結果指定到特定路徑下的輸出文件。
[0010]本發明的特點還在于,
[0011]步驟I具體按照以下步驟實施:
[0012]步驟1.1,用戶申請OpenStack賬號,并使用OpenStack賬號登陸OpenStack云平臺;
[0013]步驟1.2,用戶上傳鏡像至OpenStack云平臺并注冊鏡像;
[0014]步驟1.3,用戶創建網絡和路由、結點組模塊和集群模板;
[0015]步驟1.4,用戶通過選擇Plugin和Hadoop版本、填寫集群名、選擇集群模板、基礎鏡像、密鑰對和網絡來創建Hadoop集群。
[0016]步驟2中數據源包括HDFS數據源和Swift數據源。
[0017]步驟3中用戶對數據進行處理包括用戶界面處理方法和命令行處理方法,
[0018]用戶界面處理方法是指通過用戶界面進行人機交互,創建Job Binaries和Job,并執行作業,通過web頁面查看執行結果;
[0019]命令行處理方法是指用戶在命令行界面下,通過命令提交并執行作業,通過輸出結果的指定路徑下的輸出文件查看。
[0020]步驟3中用戶采用Hadoop的Map-Reduce框架對數據進行處理。
[0021]本發明的有益效果是,利用Sahara可以在openstack云環境中快速部署Hadoop集群,作為云計算和大數據的橋梁,能夠推動openstack云平臺和Hadoop的整合,從而可以快速和低成本的挖掘出大數據中的信息,提高服務器的資源利用率,又大大降低了大數據的準入門檻,大數據應用運行在云平臺上是非常高效的處理大數據的方法之一。
【專利附圖】
【附圖說明】
[0022]圖1是本發明一種大數據處理方法的流程示意圖;
[0023]圖2是本發明方法中Hadoop集群創建過程的示意圖;
[0024]圖3是本發明方法中Map-Reduce處理方法的流程示意圖。
【具體實施方式】
[0025]下面結合附圖和【具體實施方式】對本發明進行詳細說明。
[0026]本發明一種大數據處理方法,如圖1所示,包括以下步驟:
[0027]步驟I,在OpenStack云平臺上創建Hadoop集群,提供大數據處理的基本環境;
[0028]其中,如圖2所示,步驟I具體按照以下步驟實施:
[0029]步驟1.1,用戶申請OpenStack賬號,并使用OpenStack賬號登陸OpenStack云平臺;
[0030]步驟1.2,用戶上傳鏡像至OpenStack云平臺并注冊鏡像;
[0031]步驟1.3,用戶創建網絡和路由、結點組模塊和集群模板;
[0032]步驟1.4,用戶通過選擇Plugin和Hadoop版本、填寫集群名、選擇集群模板、基礎鏡像、密鑰對和網絡來創建Hadoop集群;
[0033]步驟2,通過將數據導入到HDFS和Swift中來創建數據源;
[0034]其中,步驟2中數據源包括HDFS數據源和Swift數據源,
[0035]HDFS數據源包括輸入/輸出數據源名稱、選擇數據源類型HDFS、輸入/輸出URL路徑。
[0036]Swift數據源包括輸入/輸出數據源名稱、選擇數據源類型Swift、輸入/輸出URL路徑、輸入用戶名和密碼。
[0037]步驟3,用戶可以通過兩種方法對數據進行處理,一種是通過用戶界面進行人機交互,倉Il建Job Binaries,創建job,執行job,通過web查看執行結果;一種是通過命令行界面,用戶在命令行界面下,通過命令提交并執行作業,通過輸出結果的指定路徑下的輸出文件查看。具體的數據處理是采用Hadoop的Map-Reduce框架。Map-reduce就是任務的分解與結果的匯總。處理過程如圖3所示:
[0038]Map階段:Hadoop Map/Reduce框架為每一個InputSplit產生一個map任務,而每個InputSplit是由該作業的InputFormat產生的;框架會把與一個特定key關聯的所有中間過程的值(value)分成組,Mapper的輸出被排序后,就被劃分給每個Reducer
[0039]Reduce 階段:Reducer 有 3 個主要階段:shuffle、sort 和 reduce。ShuffleReducer的輸入就是Mapper已經排好序的輸出。在這個階段,框架通過HTTP為每個Reducer獲得所有Mapper輸出中與之相關的分塊。
[0040]Sort這個階段,框架將按照key的值對Reducer的輸入進行分組(因為不同mapper的輸出中可能會有相同的key)。
[0041]Shuffle和Sort兩個階段是同時進行的;map的輸出也是一邊被取回一邊被合并的。
[0042]Reduce在這個階段,框架為已分組的輸入數據中的每個〈key, (list of values) >對調用一次reduce方法。Reduce任務的輸出通常是通過調用OutputCollector.collect寫入文件系統的。
【權利要求】
1.一種大數據處理方法,其特征在于,具體按照以下步驟實施: 步驟1,在OpenStack云平臺上創建Hadoop集群,提供大數據處理的基本環境; 步驟2,通過將數據導入到HDFS和Swift中來創建數據源; 步驟3,用戶對步驟2中創建的數據源中的數據進行處理,并將處理結果通過Web頁面顯示或將處理結果指定到特定路徑下的輸出文件。
2.根據權利要求1所述的一種大數據處理方法,其特征在于,所述步驟I具體按照以下步驟實施: 步驟1.1,用戶申請OpenStack賬號,并使用OpenStack賬號登陸OpenStack云平臺; 步驟1.2,用戶上傳鏡像至OpenStack云平臺并注冊鏡像; 步驟1.3,用戶創建網絡和路由、結點組模塊和集群模板; 步驟L 4,用戶通過選擇Plugin和Hadoop版本、填寫集群名、選擇集群模板、基礎鏡像、密鑰對和網絡來創建Hadoop集群。
3.根據權利要求1所述的一種大數據處理方法,其特征在于,步驟2中數據源包括HDFS數據源和Swift數據源。
4.根據權利要求1所述的一種大數據處理方法,其特征在于,所述步驟3中用戶對數據進行處理包括用戶界面處理方法和命令行處理方法, 所述用戶界面處理方法是指通過用戶界面進行人機交互,創建Job Binaries和Job,并執行作業,通過web頁面查看執行結果; 所述命令行處理方法是指用戶在命令行界面下,通過命令提交并執行作業,通過輸出結果的指定路徑下的輸出文件查看。
5.根據權利要求1至4任意一項所述的一種大數據處理方法,其特征在于,步驟3中用戶采用Hadoop的Map-Reduce框架對數據進行處理。
【文檔編號】H04L29/08GK104320460SQ201410577834
【公開日】2015年1月28日 申請日期:2014年10月24日 優先權日:2014年10月24日
【發明者】王茜, 李安穎, 史晨昱, 葛新, 梁小江 申請人:西安未來國際信息股份有限公司