【譯】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開發環境
- Apache Hadoop文件翻譯之一(HDFS架構)ApacheHadoop架構
- Apache Hadoop文件翻譯之二(HDFS命令指南)ApacheHadoop
- CDH impala for Apache HADOOP 安裝編譯步驟.ApacheHadoop編譯
- Apache Hadoop文件翻譯之三(使用者指南)ApacheHadoop
- 【譯】Apache Storm系列 之一(核心概念)ApacheORM
- Hadoop系列之HDFS 資料塊Hadoop
- Hadoop官網翻譯之HDFS ArchitectureHadoop
- Hadoop大資料實戰系列文章之安裝HadoopHadoop大資料
- Apache Hadoop Day5ApacheHadoop
- [譯]Effective Kotlin系列之使用Sequence來優化集合的操作(四)Kotlin優化
- Hadoop官網翻譯之HDFS Users GuideHadoopGUIIDE
- Apache Ranger——Hadoop ACL控制工具ApacheRangerHadoop
- Apache Hadoop Yarn 學習(二)ApacheHadoopYarn
- Hadoop - macOS 上編譯 Hadoop 3.2.1HadoopMac編譯
- 《xhtml入門系列》之四HTML
- Hadoop 學習系列(三)之 YARN 詳細解析HadoopYarn
- Hadoop大資料實戰系列文章之HiveHadoop大資料Hive
- Hadoop大資料實戰系列文章之ZookeeperHadoop大資料
- Hadoop大資料實戰系列文章之HBaseHadoop大資料
- Hadoop 學習系列(二)之 HDFS 詳細解析Hadoop
- Hadoop入門系列(2)-安裝HadoopHadoop
- 09 大資料之Hadoop(第四部 HDFS)大資料Hadoop
- 【公益譯文】航空網路安全指導手冊(四)
- hadoop編譯—+2.x編譯Hadoop編譯
- webpack系列之四loader詳解1Web
- webpack系列之四loader詳解3Web
- webpack系列之四loader詳解2Web
- viewerView
- Serilog文件翻譯系列(四) - 結構化資料
- hadoop官網翻譯之HDFS High Availability Using the Quorum Journal ManagerHadoopAI
- 基於Hadoop的Apache Hudi 0.10 釋出HadoopApache
- apache編譯安裝Apache編譯
- Hadoop大資料實戰系列文章之Mapreduce 計算框架Hadoop大資料框架
- 劍指Offer系列之「表示數值的字串」字串
- Hadoop(四)C#操作HbaseHadoopC#
- Hadoop面試題(四)——YARNHadoop面試題Yarn