如何使用sqoop以parquet avro文件格式保存数据?

zvms9eto  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(413)

我需要将我的数据从关系数据库移动到hdfs,但我想将数据保存为parquet avro文件格式。查看sqoop文档,我的选项似乎是——parquetfile或——avrodatafile,但不是两者的混合。根据我对下面这个博客/图片的理解,parquet avro的工作方式是,它是一个嵌入了avro模式的parquet文件,并且是一个转换器,用于将avro对象转换并保存到parquet文件,反之亦然。
我最初的假设是,如果使用sqoop选项-as parquetfile,那么保存到parquet文件的数据将丢失avro模式,转换器将无法工作。然而,在查看将数据保存为Parquet文件格式的sqoop代码时,它似乎使用了与avro相关的util,但我不确定发生了什么。有人能澄清一下吗?如果我不能用sqoop做到这一点,我还有什么其他的选择呢?

hgtggwj0

hgtggwj01#

parquet-avro 主要是一个方便层,这样您就可以将apacheparquet中存储的数据读/写到avro对象中。当你再次读Parquet地板的时候 parquet-avro ,avro模式是从parquet模式推断出来的(或者您应该能够指定一个显式avro模式)。所以你应该对 --as-parquetfile .

相关问题