Python-如何将包含表模式的.txt / .csv文件转换为.avsc文件

时间:2018-10-16 05:22:04

标签: python-2.7 avro avsc

需要将表模式(使用describe \ list列)提取到.txt或.csv文件中,以后又希望使用python将这些文件转换成.avsc(avro模式)文件。

sample.txt:

COLUMN_NAME | TYPE_NAME | DEC&| NUM&| COLUM&| COLUMN_DEF | CHAR_OCTE&| IS_NULL&

AIRLINE | CHAR | NULL | NULL | 2 | NULL | 4 | NO AIRLINE_FULL | VARCHAR | NULL | NULL | 24 | NULL | 48 |是

需要将sample.txt转换为sample.avsc

1 个答案:

答案 0 :(得分:0)

  1. 将CSV读入python字典
  2. 将标头部分保存到其他dict(header_dict)
  3. 创建一个空的dict(final_dict)并追加类型,命名空间可替换的东西,并将行从header_dict传递到final_dict。
  4. 将final_dict转储到文件中,这将是您的avsc