python中使用snappy与avro的问题

2024-10-01 05:00:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在读取.gz文件并转换为AVRO格式。当我使用codec='deflate'时。它工作得很好。i、 我可以转换成avro格式。当我使用codec='snappy'时,它抛出一个错误,说明如下:

raise DataFileException("Unknown codec: %r" % codec)
avro.datafile.DataFileException: Unknown codec: 'snappy'

使用deflate-->working fine

^{pr2}$

使用snappy-->抛出错误

writer = DataFileWriter(open(avro_file, "wb"), DatumWriter(), schema, codec = "snappy")

一个快速的反应将是一个很大的帮助。在

谢谢。在

一。 . 在


Tags: 文件格式错误unknowncodecavroworkingraise
1条回答
网友
1楼 · 发布于 2024-10-01 05:00:44

来自avro/数据文件.py在

try:
  import snappy
  has_snappy = True
except ImportError:
  has_snappy = False

...

# Codecs supported by container files:
VALID_CODECS = frozenset(['null', 'deflate'])
if has_snappy:
  VALID_CODECS = frozenset.union(VALID_CODECS, ['snappy'])

所以必须安装python snappy lib

相关问题 更多 >