当前位置: 首页 > 知识库问答 >
问题:

如何使用在 Hive 中使用 Apache Drill 创建的 Parquet 文件

钱青青
2023-03-14

Apache Drill有一个很好的功能,可以从许多传入的数据集中制作镶木地板文件,但是似乎没有太多关于如何稍后使用这些镶木地板文件的信息 - 特别是在Hive中。

Hive有没有办法利用这些“1_0_0.parquet”等文件?也许创建一个表并从拼花文件加载数据,或者创建一个表并以某种方式将这些拼花文件放在hdfs中,以便Hive读取它?

共有1个答案

沈旻
2023-03-14

我遇到过这个问题,如果您使用的是Cloudera发行版,您可以使用impala(impala和Hive共享metastore)创建表,它允许从拼花文件创建表。不幸的是,Hive不允许这样做

CREATE EXTERNAL TABLE table_from_fileLIKE PARQUET     '/user/etl/destination/datafile1.parquet'
STORED AS PARQUET
LOCATION '/user/test/destination';
 类似资料:
  • Cloudera留档,显示了一种“使用Avro模式文件创建Avro支持的Hive表”的简单方法。这很好。我想对Parque支持的Hive表做同样的事情,但是在这种情况下,相关的留档列出了每种列类型,而不是从模式中读取。是否可以像Avro数据一样从模式中读取Parque列?

  • 我是HDFS和Hive的新手。在阅读了一些书籍和文档之后,我得到了这两个方面的一些介绍。我有一个关于在HIVE中创建一个表的问题,该表的文件存在于HDFS中。我有这个文件在HDFS中有300个字段。我想在HDFS中创建一个访问该文件的表。但我想利用这个文件中的30个字段。我的问题是1。配置单元是否创建单独的文件目录?2.我必须先创建配置单元表,然后从HDFS导入数据吗?3.既然我想创建一个300列

  • 我用Pyarow创建了几百个拼花文件。但是,其中一些文件的字段/列与原始列(称为Sporange)的名称略有不同(我们称之为橙色),因为其中一个文件使用了查询的变体。否则,数据(所有其他字段和所有数据)是相同的。在数据库世界中,我将执行ALTER TABLE并重命名列。但是,我不知道如何使用镶木地板/PyArrow 有没有一种方法可以重命名文件中的列,而不必重新生成或复制文件? 或者,我可以读取它

  • 问题内容: 我正在使用Delphi 2010和 超级对象 库。 我知道如何解析json文件,但是我不知道如何创建json? 该算法是: 解析JSON并在TStringGrid中加载 新增资料 将所有TStringGrid数据保存到json。 需要一些例子。 谢谢。 问题答案: 代码示例将以下结构提供给JSON对象,然后保存到文件: