我正在编写mapReduce Job来读取和处理Avrofile.输入文件是Avro输出格式是Avro
当我执行Mapreduce Job时,我在reducer阶段遇到以下异常.当reducer抛出IOException时,我无法在reducer中捕获并消除它.Hue中的错误堆栈跟踪看起来
java.io.IOException: Invalid int encoding
at org.apache.avro.io.DirectBinaryDecoder.readInt(DirectBinaryDecoder.java:113)
at org.apache.avro.io.ValidatingDecoder.readInt(ValidatingDecoder.java:83)
at org.apache.avro.reflect.ReflectDatumReader.readInt(ReflectDatumReader.java:166)
at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:156)
at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:177)
at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:148)
at org.apache.avro.generic.GenericDatumReader.readArray(GenericDatumReader.java:206)
at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:150)
at org.apache.avro.generic.GenericDatumReader.readRecord(GenericDatumReader.java:177)
at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:148)
at org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:139)
at org.apache.avro.hadoop.io.AvroDeserializer.deserialize(AvroDeserializer.
Run Code Online (Sandbox Code Playgroud)
谷歌搜索时,我注意到有一张阿帕奇JIRA票(https://issues.apache.org/jira/browse/AVRO-882).没有更新.
我正在使用AVRO-1.7.5,以下是依赖maven
<dependency>
<groupId>org.apache.avro</groupId>
<artifactId>avro</artifactId>
<version>1.7.5</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
任何帮助将非常感激?.谢谢
我们有一个自定义文件系统类,它是 hadoop.fs.FileSystem 的扩展。该文件系统的 uri 方案为 abfs:///。已在此数据上创建了外部配置单元表。
CREATE EXTERNAL TABLE testingCustomFileSystem (a string, b int, c double) PARTITIONED BY dt
STORED AS PARQUET
LOCATION 'abfs://<host>:<port>/user/name/path/to/data/'
Run Code Online (Sandbox Code Playgroud)
使用 loginbeeline,我可以查询表并获取结果。
现在我正在尝试使用 spark.table('testingCustomFileSystem') 将同一个表加载到 spark 数据框中,它会抛出以下异常
java.io.IOException: No FileSystem for scheme: abfs
at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2586)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2593)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:91)
at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2632)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2614)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:370)
at org.apache.hadoop.fs.Path.getFileSystem(Path.java:296)
at org.apache.spark.sql.execution.datasources.CatalogFileIndex$$anonfun$2.apply(CatalogFileIndex.scala:77)
at org.apache.spark.sql.execution.datasources.CatalogFileIndex$$anonfun$2.apply(CatalogFileIndex.scala:75)
at scala.collection.immutable.Stream.map(Stream.scala:418)
Run Code Online (Sandbox Code Playgroud)
包含 CustomFileSystem(定义 abfs:// 方案)的 jar 已加载到类路径中并且也可用。
spark.table 如何解析元存储中的 hive 表定义并解析 uri?。
我的结构化 Spark Streaming 作业在运行超过 24 小时后失败,并出现以下异常。
Exception in thread "spark-listener-group-eventLog" java.lang.OutOfMemoryError: GC overhead limit exceeded
at java.math.BigInteger.<init>(BigInteger.java:1114)
at java.math.BigInteger.valueOf(BigInteger.java:1098)
at scala.math.BigInt$.apply(BigInt.scala:49)
at scala.math.BigInt$.long2bigInt(BigInt.scala:101)
at org.json4s.Implicits$class.long2jvalue(JsonDSL.scala:45)
at org.json4s.JsonDSL$.long2jvalue(JsonDSL.scala:61)
Run Code Online (Sandbox Code Playgroud)
快速背景:我的结构化 Spark 流工作是将作为新文件(镶木地板)接收的事件提取到 Solr 集合中。因此,源是 8 个不同的 Hive 表(8 个不同的 hdfs 位置)接收事件,而接收器是一个 solr 集合。
配置:
Number Executors: 30
Executor Memory: 20 G
Driver memory: 20 G
cores - 5
Run Code Online (Sandbox Code Playgroud)
生成 hprof 转储文件并加载到 MAT 中以了解原因。转储文件看起来像。这是一个测试环境,数据流TPS(每分钟交易数)非常低,有时根本没有交易。
关于造成此问题的任何线索。不幸的是,我无法分享代码片段。对于那个很抱歉。
我是python的新手,我已经在我的RHEL linux上安装了Luigi-2.0.1.试图运行示例程序
import luigi
class MyTask(luigi.Task) :
param = luigi.Parameter(default=42)
def requires(self):
return SomeOtherTask(self.param)
def run(self):
f = self.output.open('w')
print >>f, 'hello world'
f.close()
def output(self):
return luigi.LocalTarget('/tmp/foo/bar-%s.txt' % self.param)
if __name__ == '__main__':
luigi.run()
Run Code Online (Sandbox Code Playgroud)
执行以下命令
luigi --module maintask.py MyTask
Run Code Online (Sandbox Code Playgroud)
我收到以下错误.
Traceback (most recent call last):
File "/usr/bin/luigi", line 5, in <module>
from pkg_resources import load_entry_point
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 2655, in <module>
working_set.require(__requires__)
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 648, in require
needed = self.resolve(parse_requirements(requirements))
File "/usr/lib/python2.6/site-packages/pkg_resources.py", line 546, in resolve
raise DistributionNotFound(req) …Run Code Online (Sandbox Code Playgroud)