avro和parquet格式的数据必须在hadoop基础设施中写入吗?

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

我一直在研究在一个项目中使用avro、parquet和其他数据源的利弊。如果我从其他不使用hadoop的人那里接收到输入数据,他们能以avro/parquet格式提供这些输入数据吗?到目前为止,我对这些格式的阅读只是在hadoop基础设施的范围内,所以我想知道对于那些仅仅使用oracle/sql来提供这种格式的数据的人来说有多困难。

cqoc49vn

cqoc49vn1#

不使用hadoop也可以使用这些格式,但是这样做的容易程度取决于语言绑定。
例如,使用java语言绑定(甚至称为 parquet-mr mr代表mapreduce),因为它大量构建在hadoop类上。它们通常在hadoop集群的类路径上提供,但在独立计算机上不太容易获得。
(虽然 parquet-mr 主要是一个java库,它还包含一些用户可能希望在本地机器上运行的工具。为了解决这个问题 parquet-tools 的模块 parquet-mr 包含一个名为 local 它将hadoop依赖项打包到编译工具中。但是,这只适用于 parquet-tools 你必须自己编译它来生成本地版本。)
另一方面,python语言绑定非常容易设置,在独立机器上也可以很好地工作。您可以直接使用高级pandas接口或实际实现pyarrow/fastparquet。

相关问题