Mapr-Db 批量加载在减速器端失败
Mapr-Db bulkloading is failing at reducer end
处理减速器时批量加载失败并出现以下错误。我们 运行 M5 集群上的 mapreduce 试图更新 m7 table。
java.io.IOException: bulkLoaderClose() on '/home/test/account122' failed
with error: Function not implemented (38).
at com.mapr.fs.Inode.checkError(Inode.java:1611)
at com.mapr.fs.Inode.checkError(Inode.java:1583)
at com.mapr.fs.Inode.bulkLoaderClose(Inode.java:1278)
at com.mapr.fs.MapRHTable.bulkLoaderClose(MapRHTable.java:119)
at com.mapr.fs.hbase.BulkLoadRecordWriter.close(BulkLoadRecordWriter.java:160)
at org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:621)
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:458)
at org.apache.hadoop.mapred.Child.run(Child.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1566) at org.apache.hadoop.mapred.Child.main(Child.java:267)
hbase 版本为 0.98.12-mapr-1506.
Mapr-Db table 已启用批量加载。
Reducers 处理所有数据,并且在批量加载时它以某种方式失败。
请帮忙。
您用于批量加载的实用程序是什么?您可以使用 ImportTsv 批量加载到 MapR-DB 个表中。
我测试了下面的数据文件和导入。试试这是否适用于您的集群。
1) 将以下数据添加到集群中的 mfs。将其替换为您的路径 ./mapr/demo.mapr.com/home/datafile.csv:
2014,1,1,1,3,2014-01-01,AA,N338AA,1,JFK,LAX,0914,14.00,1238,13.00,0.00,385.00,359.00,2475.00,
2014,1,1,2,4,2014-01-02,AA,N338AA,1,JFK,LAX,0857,-3.00,1226,1.00,0.00,385.00,340.00,2475.00,
导出 CF="cf1"
2) maprcli table delete -path /home/test/account122
3) maprcli table 创建路径 /home/test/account122
3) maprcli table cf create -path /home/test/account122 -cfname $CF
运行 导入作业
4)java -cp hbase classpath
org.apache.hadoop.hbase.mapreduce.ImportTsv \
-Dimporttsv.separator=, \
-Dimporttsv.columns=$CF:year,$CF:qtr,$CF:month,$CF:dom,$CF:dow,HBASE_ROW_KEY,$CF:carrier,$CF: tailnum,$CF:flightnumber,$CF:origin,$CF:dest,$CF:deptime,$CF:depdelay,$CF:arrtime,$CF:arrdelay,$CF:cncl,$CF:cnclcode,$CF: elaptime,$CF:airtime,$CF:distance,$CF:carrierdelay,$CF:weatherdelay,$CF:nasdelay,$CF:securitydelay,$CF:aircraftdelay,$CF:dummy \
/home/test/account122\
/mapr/demo.mapr.com/home/datafile.csv
默认情况下,MaprdDb 表不支持批量加载。 Function not implemented (38) 错误表示不支持此功能。
处理减速器时批量加载失败并出现以下错误。我们 运行 M5 集群上的 mapreduce 试图更新 m7 table。
java.io.IOException: bulkLoaderClose() on '/home/test/account122' failed
with error: Function not implemented (38).
at com.mapr.fs.Inode.checkError(Inode.java:1611)
at com.mapr.fs.Inode.checkError(Inode.java:1583)
at com.mapr.fs.Inode.bulkLoaderClose(Inode.java:1278)
at com.mapr.fs.MapRHTable.bulkLoaderClose(MapRHTable.java:119)
at com.mapr.fs.hbase.BulkLoadRecordWriter.close(BulkLoadRecordWriter.java:160)
at org.apache.hadoop.mapred.ReduceTask.runNewReducer(ReduceTask.java:621)
at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:458)
at org.apache.hadoop.mapred.Child.run(Child.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1566) at org.apache.hadoop.mapred.Child.main(Child.java:267)
hbase 版本为 0.98.12-mapr-1506.
Mapr-Db table 已启用批量加载。 Reducers 处理所有数据,并且在批量加载时它以某种方式失败。
请帮忙。
您用于批量加载的实用程序是什么?您可以使用 ImportTsv 批量加载到 MapR-DB 个表中。
我测试了下面的数据文件和导入。试试这是否适用于您的集群。
1) 将以下数据添加到集群中的 mfs。将其替换为您的路径 ./mapr/demo.mapr.com/home/datafile.csv: 2014,1,1,1,3,2014-01-01,AA,N338AA,1,JFK,LAX,0914,14.00,1238,13.00,0.00,385.00,359.00,2475.00, 2014,1,1,2,4,2014-01-02,AA,N338AA,1,JFK,LAX,0857,-3.00,1226,1.00,0.00,385.00,340.00,2475.00,
导出 CF="cf1"
2) maprcli table delete -path /home/test/account122 3) maprcli table 创建路径 /home/test/account122 3) maprcli table cf create -path /home/test/account122 -cfname $CF
运行 导入作业
4)java -cp hbase classpath
org.apache.hadoop.hbase.mapreduce.ImportTsv \
-Dimporttsv.separator=, \
-Dimporttsv.columns=$CF:year,$CF:qtr,$CF:month,$CF:dom,$CF:dow,HBASE_ROW_KEY,$CF:carrier,$CF: tailnum,$CF:flightnumber,$CF:origin,$CF:dest,$CF:deptime,$CF:depdelay,$CF:arrtime,$CF:arrdelay,$CF:cncl,$CF:cnclcode,$CF: elaptime,$CF:airtime,$CF:distance,$CF:carrierdelay,$CF:weatherdelay,$CF:nasdelay,$CF:securitydelay,$CF:aircraftdelay,$CF:dummy \
/home/test/account122\
/mapr/demo.mapr.com/home/datafile.csv
默认情况下,MaprdDb 表不支持批量加载。 Function not implemented (38) 错误表示不支持此功能。