问题标签 [hiveddl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
csv - csv 文件使用加载数据到 hive 表 - 如何格式化 csv 中的日期以由 hive 表接受
我正在使用加载数据语法将 csv 文件加载到表中。该文件与 hive 接受的格式相同。但仍然在发出加载数据后,最后 2 列在选择时返回 null。
Select 返回最后 2 列的 NULL 值
另一个问题是,如果日期格式与 YYYY-MM-DD 不同怎么办。是否可以让 hive 识别格式?(因为现在我正在修改 csv 文件格式以被 hive 接受)
sql - 我想在我现有的 hive 表中添加一个额外的列,以便我可以获得当天的当前时间戳
需要在我现有的配置单元表中添加额外的日期列,以便它从系统中获取当天的当前日期
我想在此处添加一个日期列,以便在添加列后立即获取当天的当前系统日期。我认为解决方法是将两个表与具有当前系统日期的另一个表连接起来。
下面是我的代码和思考过程。
这给了我一个错误,我无法找到实际的方法
请帮忙。
预期产出
json - 配置单元将 json 记录解析为 NULL
我有一个简单的蜂巢表:
在文件夹 /tmp/1 中有一个文件 test.json ,文件中的唯一内容是 {"appname":"app-name"}
从推文中选择返回 NULL
我知道文件格式错误或发生了其他事情。有人可以帮忙吗?
apache-spark - 如何为嵌套目录结构定义分区外部表
对于存储在如下结构中的一组数据hdfs
文件year/*.csv
:
有 12 个csv
文件 - 每个月一个。由于我们的查询不关心月份粒度,因此可以将一年中的所有月份都放入一个目录中。这是其中一年的内容:注意这些是.csv
文件:
标题和一行如下所示:
问题是:如何“说服” hive
/spark
正确阅读这些内容?方法是:
- 最后一列
year
将由 hive 自动读取,因为partitioning
- 第一列
YearIn
将是一个占位符:它的值将被读入,但我的应用程序代码将忽略它以支持year
分区列- 处理所有其他字段,无需任何特殊考虑
这是我的尝试。
结果是:
- 表是
hive
由 `spark 和`spark创建和访问的 - 但表格是空的 - 正如两者所报告的
hive
那样spark
在这个过程中有什么不正确的?
hive - 如何将查询结果分区为输入?
我是 hive 的新手,所以有一个基本问题:如何创建一个查询,以便该查询的结果以特定方式分区?
例如:
在那个例子中,我希望 tbl_y 也被分区。
尝试这个不起作用:
这里的诀窍是什么?我应该先定义分区表并将结果插入吗?
json - 使用 json serde 在 hive 中加载 json 文件
我正在尝试使用 json serde 在 hadoop 上上传 json 文件。我已将 jar lib 上传到 hadoop,但在运行 hive 命令时出错
我已将 json serde jar 文件上传到 /apps/hive/warehouse/lib 路径。现在,当我想运行此命令时
我收到了这个错误
H110 无法提交声明。处理语句时出错:/apps/hive/warehouse/lib/json-serde-1.3.7-SNAPSHOT-jar-with-dependencies.jar 不存在 [ERROR_STATUS]
regex - 我们如何使用正则表达式删除 hive 中的分区。是否可以?
我正在尝试运行以下
这给了我一个例外
我找不到类似的东西。我确实在 SO 中的某个问题上看到了一个答案,但它不起作用。
任何帮助表示赞赏。
hive - hive 中允许的分区列数据类型有哪些?
我很确定像 STRUCT 这样的复杂类型不能是分区列的类型。但我不确定所有原始类型是否有效。我已经阅读了很多文档,但没有找到任何东西。
hive - 更改配置单元表的分区规范并移动数据
我有一个外部配置单元表员工,它由 extract_timestamp (yyyy-mm-dd hh:mm:ss) 分区,如下所示。
我正在尝试通过 extract_time 删除分区并将其更改为年、月和日分区。我正在遵循以下方法。
1. 新建表employee_new,分区年月日
2. 通过从员工表中选择数据将覆盖插入到employee_new
3. 删除employee 和employee_new 并在/user/emp/data/employee_new.txt 之上创建employee 表
请让我知道这种方法是否有效,以及是否有更好的方法可以做到这一点。
hive - Hive 仅从 hdfs 导入某些文件类型
我正在使用 Serde 创建一个外部表
org.apache.hive.hcatalog.data.JsonSerde
hdfs 文件夹位置有多种文件格式,我想只导入json文件类型。我试着用
但似乎不起作用