我試圖使用^ A作爲鍵和值之間的分隔符,以減少輸出文件。 我發現,配置設置「mapred.textoutputformat.separator」是我想要的,這個正確切換分隔符「」:Hadoop - textouputformat.separator使用ctrlA(^ A)
conf.set("mapred.textoutputformat.separator", ",");
但它不能處理的^ A字符:
conf.set("mapred.textoutputformat.separator", "\u0001");
拋出這個錯誤:
ERROR security.UserGroupInformation: PriviledgedActionException as:user (auth:SIMPLE) cause:org.apache.hadoop.ipc.RemoteException: java.io.IOException: java.lang.RuntimeException: org.xml.sax.SAXParseException; lineNumber: 68; columnNumber: 94; Character reference "&#
我發現這張票https://issues.apache.org/jira/browse/HADOOP-7542,看看他們至三編輯來解決這個問題,但由於XML1.1的擔憂而恢復了該補丁。
所以我想知道是否有人成功地將分隔符設置爲^ A(似乎很常見),使用簡單的解決方法。或者,如果我只是解決並使用選項卡分隔符。
謝謝!
我在CentOS 6.2
Upvote,這是一個有效的問題,必須鼓勵。 – Siddharth