【譯】Apache Hadoop 系列之四(Edits Viewer指
概述
離線Edits檢視器是一個解析Edits日誌檔案的工具。目前的程式用於不同格式之間的轉換,包括xml(比二進位制檔案更易讀且容易修改)。
這個工具可以解析formats -18及以後的版本。這個工具只操作檔案,並不需要Hadoop叢集處於執行狀態。
輸入格式支援:
1、二進位制
2、xml格式
輸出格式:
1、二進位制
2、xml格式
3、stats:列印統計資料
用法
XML Processor
將edits檔案轉換成xml格式,並輸出檔案
bash$ bin/hdfs oev -p xml -i edits -o edits.xml
因為xml是預設的處理格式,所以上面命令也可以簡寫成如下
bash$ bin/hdfs oev -i edits -o edits.xml
輸出格式大致如下:
?xml version="1.0" encoding="UTF-8"?> <EDITS> <EDITS_VERSION>-64</EDITS_VERSION> <RECORD> <OPCODE>OP_START_LOG_SEGMENT</OPCODE> <DATA> <TXID>1</TXID> </DATA> </RECORD> <RECORD> <OPCODE>OP_UPDATE_MASTER_KEY</OPCODE> <DATA> <TXID>2</TXID> <DELEGATION_KEY> <KEY_ID>1</KEY_ID> <EXPIRY_DATE>1487921580728</EXPIRY_DATE> <KEY>2e127ca41c7de215</KEY> </DELEGATION_KEY> </DATA> </RECORD> <RECORD> ...remaining output omitted...
Binary Processor
xml格式檔案轉二進位制
bash$ bin/hdfs oev -p binary -i edits.xml -o edits
Stats Processor
統計edits日誌檔案中各個運算元量
bash$ bin/hdfs oev -p stats -i edits -o edits.stats
輸出格式大致如下:
VERSION : -64 OP_ADD ( 0): 8 OP_RENAME_OLD ( 1): 1 OP_DELETE ( 2): 1 OP_MKDIR ( 3): 1 OP_SET_REPLICATION ( 4): 1 OP_DATANODE_ADD ( 5): 0 OP_DATANODE_REMOVE ( 6): 0 OP_SET_PERMISSIONS ( 7): 1 OP_SET_OWNER ( 8): 1 OP_CLOSE ( 9): 9 OP_SET_GENSTAMP_V1 ( 10): 0 ...some output omitted... OP_APPEND ( 47): 1 OP_SET_QUOTA_BY_STORAGETYPE ( 48): 1 OP_INVALID ( -1): 0
選項
Flag | Description |
---|---|
[-i ; --inputFile] input file | Specify the input edits log file to process. Xml (case insensitive) extension means XML format otherwise binary format is assumed. Required. |
[-o ; --outputFile] output file | Specify the output filename, if the specified output processor generates one. If the specified file already exists, it is silently overwritten. Required. |
[-p ; --processor] processor | Specify the image processor to apply against the image file. Currently valid options are binary, xml (default) and stats. |
[-v ; --verbose] | Print the input and output filenames and pipe output of processor to console as well as specified file. On extremely large files, this may increase processing time by an order of magnitude. |
[-f ; --fix-txids] | Renumber the transaction IDs in the input, so that there are no gaps or invalid transaction IDs. |
[-r ; --recover] | When reading binary edit logs, use recovery mode. This will give you the chance to skip corrupt parts of the edit log. |
[-h ; --help] | Display the tool usage and help information and exit. |
案例研究:Hadoop叢集恢復
當Hadoop叢集出現問題,比如edits日誌檔案損壞但還是有部分是正常的。這個時候,我們可以使用該工具將二進位制檔案轉換成xml格式,然後對xml格式進行修改,最終將xml檔案轉回二進位制。如果edits檔案缺少結束標識(以opCode -1結束),工具執行時會意識到這一點,通常格式化也將終止。
如果xml檔案中沒有結束標識,我們可以在最後一個正確的操作記錄後面加上結束標識。任何在“opCode -1”的操作都會被忽略。
結束標識示例(帶有 opCode -1):
<RECORD> <OPCODE>-1</OPCODE> <DATA> </DATA> </RECORD>
作者:Kooola大資料
連結:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/854/viewspace-2817363/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Hadoop 學習系列(四)之 MapReduce 原理講解Hadoop
- Hadoop 系列(四)—— Hadoop 開發環境搭建Hadoop開發環境
- CDH impala for Apache HADOOP 安裝編譯步驟.ApacheHadoop編譯
- Apache Hadoop文件翻譯之一(HDFS架構)ApacheHadoop架構
- Apache Hadoop文件翻譯之二(HDFS命令指南)ApacheHadoop
- 【譯】Apache Storm系列 之一(核心概念)ApacheORM
- Hadoop運維記錄系列(四)薦Hadoop運維
- VB真是想不到系列之四:VB指標葵花寶典之SafeArray (轉)指標
- Apache Hadoop文件翻譯之三(使用者指南)ApacheHadoop
- What Is Apache HadoopApacheHadoop
- 小丸子學Hadoop系列之——部署Hadoop叢集Hadoop
- Hadoop系列之HDFS 資料塊Hadoop
- Apache Commons 系列簡介 之 PoolApache
- [譯]Effective Kotlin系列之使用Sequence來優化集合的操作(四)Kotlin優化
- 《xhtml入門系列》之四HTML
- Flex Viewer 解析(四)自定義WidgetFlexView
- 「譯」Java集合框架系列教程四:Set介面Java框架
- guava翻譯系列之JoinerGuava
- guava翻譯系列之SplitterGuava
- Apache Hadoop Day5ApacheHadoop
- Apache Hadoop 入門教程ApacheHadoop
- 什麼是 Apache Hadoop?ApacheHadoop
- 【公益譯文】航空網路安全指導手冊(四)
- Hadoop官網翻譯之HDFS ArchitectureHadoop
- MySQL鎖系列(四)之undologMySql
- RxBinding系列之RxAdapterView(四)APTView
- Hadoop大資料實戰系列文章之安裝HadoopHadoop大資料
- 測試眼裡的Hadoop系列 之TerasortHadoop
- Apache Ranger——Hadoop ACL控制工具ApacheRangerHadoop
- Apache Hadoop Yarn 學習(二)ApacheHadoopYarn
- Apache Hadoop creator — Doug CuttingApacheHadoop
- 大資料時代之hadoop(四):hadoop 分散式檔案系統(HDFS)大資料Hadoop分散式
- Hadoop官網翻譯之HDFS Users GuideHadoopGUIIDE
- RxJS 系列之四 - Subject 詳解JS
- .NET進階系列之四:深入DataTable
- 隨筆之:VC操作Word系列(四)
- Hadoop 學習系列(二)之 HDFS 詳細解析Hadoop
- Hadoop 學習系列(三)之 YARN 詳細解析HadoopYarn