導航:首頁 > 編程語言 > hbase開發代碼

hbase開發代碼

發布時間:2023-08-05 09:19:29

A. 漫談工業大數據9:開源工業大數據軟體簡介(上)

今天真是一個美好的時代,有無數的開源系統可以為我們提供服務,現在有許多開發軟體可以用到工業大數據中,當然很多系統還不成熟,應用到工業中還需要小心,並且需要開發人員對其進行一定的優化和調整。下面就簡單介紹一些開源的大數據工具軟體,看看有哪些能夠應用到工業大數據領域。

下面這張圖是我根據網上流傳的一張開源大數據軟體分類圖整理的:

我們可以把開源大數據軟體分成幾類,有一些可以逐步應用到工業大數據領域,下面就一一介紹一下這些軟體。(以下系統介紹大都來源於網路

1、數據存儲類

(1)關系資料庫MySQL

這個就不用太多介紹了吧,關系型資料庫領域應用最廣泛的開源軟體,目前屬於 Oracle 旗下產品。

(2)文件資料庫Hadoop

Hadoop是大數據時代的明星產品,它最大的成就在於實現了一個分布式文件系統(Hadoop Distributed FileSystem),簡稱HDFS。HDFS有高容錯性的特點,並且設計用來部署在低廉的硬體上,而且它提供高吞吐量來訪問應用程序的數據,適合那些有著超大數據集的應用程序。

Hadoop可以在工業大數據應用中用來作為底層的基礎資料庫,由於它採用了分布式部署的方式,如果是私有雲部署,適用於大型企業集團。如果是公有雲的話,可以用來存儲文檔、視頻、圖像等資料。

(3)列資料庫Hbase

HBase是一個分布式的、面向列的開源資料庫,HBase是Apache的Hadoop項目的子項目。HBase不同於一般的關系資料庫,它是一個適合於非結構化數據存儲的資料庫。另一個不同的是HBase基於列的而不是基於行的模式。

基於Hbase開發的OpenTSDB,可以存儲所有的時序(無須采樣)來構建一個分布式、可伸縮的時間序列資料庫。它支持秒級數據採集所有metrics,支持永久存儲,可以做容量規劃,並很容易的接入到現有的報警系統里。

這樣的話,它就可以替代在工業領域用得最多的實時資料庫。

(4)文檔資料庫MongoDB

MongoDB是一個介於關系資料庫和非關系資料庫之間的產品,是非關系資料庫當中功能最豐富,最像關系資料庫的。他支持的數據結構非常鬆散,是類似json的bson格式,因此可以存儲比較復雜的數據類型。Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似於面向對象的查詢語言,幾乎可以實現類似關系資料庫單表查詢的絕大部分功能,而且還支持對數據建立索引。

MongoDB適合於存儲工業大數據中的各類文檔,包括各類圖紙、文檔等。

(5)圖資料庫Neo4j/OrientDB

圖資料庫不是存放圖片的,是基於圖的形式構建的數據系統。

Neo4j是一個高性能的,NOSQL圖形資料庫,它將結構化數據存儲在網路上而不是表中。它是一個嵌入式的、基於磁碟的、具備完全的事務特性的java持久化引擎,但是它將結構化數據存儲在網路(從數學角度叫做圖)上而不是表中。Neo4j也可以被看作是一個高性能的圖引擎,該引擎具有成熟資料庫的所有特性。程序員工作在一個面向對象的、靈活的網路結構下而不是嚴格、靜態的表中——但是他們可以享受到具備完全的事務特性、 企業級 的資料庫的所有好處。

OrientDB是兼具文檔資料庫的靈活性和圖形資料庫管理 鏈接 能力的可深層次擴展的文檔-圖形資料庫管理系統。可選無模式、全模式或混合模式下。支持許多高級特性,諸如ACID事務、快速索引,原生和SQL查詢功能。可以JSON格式導入、導出文檔。若不執行昂貴的JOIN操作的話,如同關系資料庫可在幾毫秒內可檢索數以百記的鏈接文檔圖。

這些資料庫都可以用來存儲非結構化數據。

2、數據分析類

(1)批處理MapRece/Spark

MapRece是一種編程模型,用於大規模數據集(大於1TB)的並行運算。概念"Map(映射)"和"Rece(歸約)",是它們的主要思想,都是從函數式編程語言里借來的,還有從矢量編程語言里借來的特性。它極大地方便了編程人員在不會分布式並行編程的情況下,將自己的程序運行在分布式系統上。 當前的軟體實現是指定一個Map(映射)函數,用來把一組鍵值對映射成一組新的鍵值對,指定並發的Rece(歸約)函數,用來保證所有映射的鍵值對中的每一個共享相同的鍵組。

Apache Spark 是專為大規模數據處理而設計的快速通用的計算引擎。Spark 是一種與 Hadoop 相似的開源集群計算環境,但是兩者之間還存在一些不同之處,這些有用的不同之處使 Spark 在某些工作負載方面表現得更加優越,換句話說,Spark 啟用了內存分布數據集,除了能夠提供互動式查詢外,它還可以優化迭代工作負載。盡管創建 Spark 是為了支持分布式數據集上的迭代作業,但是實際上它是對 Hadoop 的補充,可以在 Hadoop 文件系統中並行運行。

這些大數據的明星產品可以用來做工業大數據的處理。

(2)流處理Storm

Storm是一個開源的分布式實時計算系統,可以簡單、可靠的處理大量的數據流。Storm有很多使用場景:如實時分析,在線機器學習,持續計算,分布式RPC,ETL等等。Storm支持水平擴展,具有高容錯性,保證每個消息都會得到處理,而且處理速度很快(在一個小集群中,每個結點每秒可以處理數以百萬計的消息)。Storm的部署和運維都很便捷,而且更為重要的是可以使用任意編程語言來開發應用。

(3)圖處理Giraph

Giraph是什麼?Giraph是Apache基金會開源項目之一,被定義為迭代式圖處理系統。他架構在Hadoop之上,提供了圖處理介面,專門處理大數據的圖問題。

Giraph的存在很有必要,現在的大數據的圖問題又很多,例如表達人與人之間的關系的有社交網路,搜索引擎需要經常計算網頁與網頁之間的關系,而map-rece介面不太適合實現圖演算法。

Giraph主要用於分析用戶或者內容之間的聯系或重要性。

(4)並行計算MPI/OpenCL

OpenCL(全稱Open Computing Language,開放運算語言)是第一個面向 異構系統 通用目的並行編程的開放式、免費標准,也是一個統一的編程環境,便於軟體開發人員為高性能計算 伺服器 、桌面計算系統、手持設備編寫高效輕便的代碼,而且廣泛適用於多核心處理器(CPU)、圖形處理器(GPU)、Cell類型架構以及數字信號處理器(DSP)等其他並行處理器,在 游戲 、 娛樂 、科研、醫療等各種領域都有廣闊的發展前景。

(5)分析框架Hive

Hive是基於Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張資料庫表,並提供簡單的sql查詢功能,可以將sql語句轉換為MapRece任務進行運行。 其優點是學習成本低,可以通過類SQL語句快速實現簡單的MapRece統計,不必開發專門的MapRece應用,十分適合數據倉庫的統計分析。

(6)分析框架Pig

Apache Pig 是apache平台下的一個免費開源項目,Pig為大型數據集的處理提供了更高層次的抽象,很多時候數據的處理需要多個MapRece過程才能實現,使得數據處理過程與該模式匹配可能很困難。有了Pig就能夠使用更豐富的數據結構。[2]

Pig LatinPig Latin 是一個相對簡單的語言,一條語句 就是一個操作,與資料庫的表類似,可以在關系資料庫中找到它(其中,元組代錶行,並且每個元組都由欄位組成)。

Pig 擁有大量的數據類型,不僅支持包、元組和映射等高級概念,還支持簡單的數據類型,如 int、long、float、double、chararray 和 bytearray。並且,還有一套完整的比較運算符,包括使用正則表達式的豐富匹配模式。

B. hbase 源碼 什麼語言開發的

是用java開發的,hbase包含兩個核心服務,一個是HMaster,一個是HRegionServer,在hbase部署的伺服器上調用jps命令能查看到這兩個進程。

閱讀全文

與hbase開發代碼相關的資料

熱點內容
電子資料文件有哪些 瀏覽:241
猥瑣貓表情教程 瀏覽:599
android音頻文件格式 瀏覽:458
漫畫臉app哪裡可以下載 瀏覽:959
購買歡樂升級歡樂豆 瀏覽:282
學習智能機器人用什麼編程最好 瀏覽:655
蘋果手機如何管控app 瀏覽:633
mn文件夾 瀏覽:590
安卓平板通用刷機包下載 瀏覽:751
安卓獲取內部存儲路徑 瀏覽:880
寫代碼兩台顯示器 瀏覽:327
unitypackage壓縮文件 瀏覽:493
奕心安卓 瀏覽:563
使用土地的有關證明文件包含哪些 瀏覽:493
數據標注哪裡可以接 瀏覽:482
在家自學編程下什麼學 瀏覽:705
最近很火的app軟體是什麼軟體 瀏覽:862
ai文字工具 瀏覽:157
蘭博玩游戲路徑怎麼選擇正確文件 瀏覽:972
淘寶直通車恢復老版本 瀏覽:510

友情鏈接