【翻译】Flink Table Api & SQL — Hive —— 读写 Hive 表
本文翻译自官网:Reading & Writing Hive Tables https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/hive/read_write_hive.html
使用HiveCatalog和Flink的Hive连接器,Flink可以读取和写入Hive数据,以替代Hive的批处理引擎。确保遵循说明在您的应用程序中包括正确的依赖项。
从 Hive 读数据
假设Hive在其default数据库中包含一个表,该表名为people,其中包含几行。
hive> show databases;
OK
default
Time taken: 0.841 seconds, Fetched: 1 row(s) hive> show tables;
OK
Time taken: 0.087 seconds hive> CREATE TABLE mytable(name string, value double);
OK
Time taken: 0.127 seconds hive> SELECT * FROM mytable;
OK
Tom 4.72
John 8.0
Tom 24.2
Bob 3.14
Bob 4.72
Tom 34.9
Mary 4.79
Tiff 2.72
Bill 4.33
Mary 77.7
Time taken: 0.097 seconds, Fetched: 10 row(s)
准备好数据后,您可以连接到现有的Hive 安装程序并开始查询。
Flink SQL> show catalogs;
myhive
default_catalog # ------ Set the current catalog to be 'myhive' catalog if you haven't set it in the yaml file ------ Flink SQL> use catalog myhive; # ------ See all registered database in catalog 'mytable' ------ Flink SQL> show databases;
default # ------ See the previously registered table 'mytable' ------ Flink SQL> show tables;
mytable # ------ The table schema that Flink sees is the same that we created in Hive, two columns - name as string and value as double ------
Flink SQL> describe mytable;
root
|-- name: name
|-- type: STRING
|-- name: value
|-- type: DOUBLE Flink SQL> SELECT * FROM mytable; name value
__________ __________ Tom 4.72
John 8.0
Tom 24.2
Bob 3.14
Bob 4.72
Tom 34.9
Mary 4.79
Tiff 2.72
Bill 4.33
Mary 77.7
写数据到hive
同样,可以使用INSERT INTO子句将数据写入 hive。
Flink SQL> INSERT INTO mytable (name, value) VALUES ('Tom', 4.72);
局限性
以下是Hive连接器的主要限制列表。我们正在积极努力缩小这些差距。
- 不支持 INSERT OVERWRITE。
- 不支持插入分区表。
- 不支持ACID表。
- 不支持存储桶的表。
- 不支持某些数据类型。有关详细信息,请参见限制。
- 仅测试了有限数量的表存储格式,即文本,SequenceFile,ORC和Parquet。
- 不支持视图。
欢迎关注Flink菜鸟公众号,会不定期更新Flink(开发技术)相关的推文

【翻译】Flink Table Api & SQL — Hive —— 读写 Hive 表的更多相关文章
- 【翻译】Flink Table Api & SQL —Streaming 概念 ——动态表
本文翻译自官网:Flink Table Api & SQL 动态表 https://ci.apache.org/projects/flink/flink-docs-release-1.9/de ...
- 【翻译】Flink Table Api & SQL —Streaming 概念 —— 时态表
本文翻译自官网: Temporal Tables https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/strea ...
- Flink Table Api & SQL 翻译目录
Flink 官网 Table Api & SQL 相关文档的翻译终于完成,这里整理一个安装官网目录顺序一样的目录 [翻译]Flink Table Api & SQL —— Overv ...
- 【翻译】Flink Table Api & SQL — Hive —— 在 scala shell 中使用 Hive 连接器
本文翻译自官网:Use Hive connector in scala shell https://ci.apache.org/projects/flink/flink-docs-release-1 ...
- 【翻译】Flink Table Api & SQL — Hive —— Hive 函数
本文翻译自官网:Hive Functions https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/hive/h ...
- 【翻译】Flink Table Api & SQL — Hive Beta
本文翻译自官网:Hive Beta https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/hive/ Flink ...
- 【翻译】Flink Table Api & SQL — Catalog Beta 版
本文翻译自官网:Catalogs Beta https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/catalog ...
- 【翻译】Flink Table Api & SQL — SQL客户端Beta 版
本文翻译自官网:SQL Client Beta https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev/table/sqlCl ...
- 【翻译】Flink Table Api & SQL —— 连接到外部系统
本文翻译自官网:Connect to External Systems https://ci.apache.org/projects/flink/flink-docs-release-1.9/dev ...
随机推荐
- HDU2883 kebab(最大流判断满流 + 离散化 + 区间化点)
[题意]: 有一个烤箱,烤箱在一个时刻最多考M个肉串,N个顾客,每个顾客有属性s,n,e,t s是来的时间,n是想要的肉串数量,e是最晚离开的时间,t是烤的时间(几分熟). 顾客的烤肉可以分开烤,比如 ...
- shell脚本攻略1
换行符 \n echo -n 禁止换行 环境变量声明export export PATH="$PATH:/home/user/bin" 获取字符串的长度 length=${#var ...
- nuxt 项目设置缩进为4个空格
1..editorconfig 文件下的indent_size: 2更改为indent_size: 4 2..prettierrc 文件 { "singleQuote": true ...
- 【Postgres】根据字段数据创建空间字段
--添加空间字段 , ); --根据其他字段更新空间字段数据 update "GIS" b ) from "GIS" a where b."ID&qu ...
- Nuxt项目中通过ESlint命令行修复格式问题
在package.json文件中, 往往会有个类似于 "lint": "eslint --ext .js,.vue --ignore-path .gitignore .& ...
- UE4破碎物体
1. 创建可破碎物体 首先,启用插件: 然后,选择一个模型,右键,创建可破碎物体: 2. 创建蓝图 把新创建出来的物体创建为蓝图: 击碎物体的蓝图节点: 当然,要把那个物体(图上的Destructib ...
- kernel 获取ntoskrnl.exe基址
标题: kernel shellcode之寻找ntoskrnl.exe基址 http://scz.617.cn:8/windows/201704171416.txt 以64-bits为例,这是Eter ...
- nginx之allow、deny
allow和deny这两个指令的意思是指,允许ip和限制ip 在此之前不得不提一下,这两个指令是存在于ngx_http_access_module模块之中的 allow语法:allow address ...
- Mysql与Postgresql常用命令比较
PostgreSQL MySQL 服务启动:1)#service postgresql start2)#/etc/init.d/postgresql start3)#su – postgresql$p ...
- ubuntu之路——day20 昨天和今天搞定Res18并在GPU上运行 明天YOLO在车辆识别上试一下