99re热这里只有精品视频,7777色鬼xxxx欧美色妇,国产成人精品一区二三区在线观看,内射爽无广熟女亚洲,精品人妻av一区二区三区

HBase批量加載架構

2018-06-20 11:31 更新

批量加載架構

HBase批量加載過程包含兩個主要步驟。

通過MapReduce作業(yè)準備數(shù)據(jù)

批量加載的第一步是使用HFileOutputFormat2從MapReduce作業(yè)生成HBase數(shù)據(jù)文件(StoreFiles)。這種輸出格式以 HBase 的內(nèi)部存儲格式寫出數(shù)據(jù),以便以后可以非常高效地將其加載到群集中。

為了高效工作,必須對HFileOutputFormat2進行配置,使每個輸出 HFile 適合單個區(qū)域。為了做到這一點,輸出將被批量加載到HBase中的作業(yè)使用Hadoop的TotalOrderPartitioner類來將映射輸出分區(qū)到密鑰空間的不相交范圍中,對應于表中區(qū)域的鍵范圍。

HFileOutputFormat2包括一個方便函數(shù),configureIncrementalLoad(),它根據(jù)根據(jù)表格的當前區(qū)域邊界自動設置TotalOrderPartitioner。

完成數(shù)據(jù)加載

在準備好數(shù)據(jù)導入之后,無論是通過使用具有“importtsv.bulk.output”選項的importtsv工具,還是使用HFileOutputFormat的其他MapReduce作業(yè),該completebulkload工具都可用于將數(shù)據(jù)導入到正在運行的集群中。這個命令行工具遍歷準備好的數(shù)據(jù)文件,并且每個文件確定文件所屬的區(qū)域。然后,它會聯(lián)系采用HFile的相應RegionServer,將其移動到其存儲目錄并使數(shù)據(jù)可供客戶端使用。

如果在批量加載準備過程中或者在準備和完成步驟之間區(qū)域邊界發(fā)生了變化,completebulkload公用程序會自動將數(shù)據(jù)文件分成與新邊界相對應的部分。這個過程并不是最佳效率,因此用戶應該注意盡量減少在準備批量加載和將其導入群集之間的延遲,特別是如果其他客戶端同時通過其他方式加載數(shù)據(jù)。

$ hadoop jar hbase-server-VERSION.jar completebulkload [-c /path/to/hbase/config/hbase-site.xml] /user/todd/myoutput mytable

該-c config-file選項可用于指定包含適當?shù)膆base參數(shù)的文件(例如,hbase-site.xml)(如果CLASSPATH中尚未提供此參數(shù))(此外,如果zookeeper不是由HBase管理,則CLASSPATH必須包含具有zookeeper配置文件的目錄)。

如果目標表在HBase中不存在,則此工具將自動創(chuàng)建表。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號