Hive3怎么使用代理键
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章主要介绍"Hive3怎么使用代理键",在日常操作中,相信很多人在Hive3怎么使用代理键问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Hive3怎么使用代理键"
千家信息网最后更新 2025年12月02日Hive3怎么使用代理键您可以使用内置的SURROGATE_KEY用户定义函数(UDF)在将数据输入表中时自动为行生成数字ID。生成的代理键可以替换多个复合键。 Hive仅在ACID表上支持代理键,如以下表类型矩阵中所述:
您要使用代理键联接的表不能具有需要转换的列类型。这些数据类型必须是原生类型,例如INT或STRING。 使用生成的键进行联接比使用字符串进行联接要快。使用生成的键不会通过行号将数据强制进入单个节点。您可以生成键作为自然键的抽象。代理键比UUID具有优势,后者速度较慢且具有概率。 SURROGATE_KEY UDF为您插入表中的每一行生成唯一的ID。它基于分布式系统中的执行环境生成键,其中包括许多因素,例如内部数据结构,表的状态和最后的事务ID。代理键生成不需要计算任务之间的任何协调。 UDF不带参数或带两个参数: 1. 以具有 ACID 属性的默认 ORC 格式创建一个学生表。 2. 将数据插入表中。例如: 3. 使用 SURROGATE_KEY UDF 创建学生表的版本。 4. 插入数据,它会自动为主键生成代理键。 5. 看一下代理键。 6. 将代理键作为外键添加到另一个表(例如 student_grades 表)中,以加快表的后续联接。 现在,您可以在代理键上实现快速联接。
这篇文章主要介绍"Hive3怎么使用代理键",在日常操作中,相信很多人在Hive3怎么使用代理键问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Hive3怎么使用代理键"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
Write Id bit
Task ID bit
CREATE TABLE students (row_id INT, name VARCHAR(64), dorm INT);
INSERT INTO TABLE students VALUES (1, 'fred flintstone', 100), (2, 'barney rubble', 200);
CREATE TABLE students_v2 (`ID` BIGINT DEFAULT SURROGATE_KEY(), row_id INT, name VARCHAR(64), dorm INT, PRIMARY KEY (ID) DISABLE NOVALIDATE);
INSERT INTO students_v2 (row_id, name, dorm) SELECT * FROM students;
SELECT * FROM students_v2;+-----------------+---------------------+-------------------+-------------------+| students_v2.id | students_v2.row_id | students_v2.name | students_v2.dorm |+-----------------+---------------------+-------------------+-------------------+| 1099511627776 | 1 | fred flintstone | 100 || 1099511627777 | 2 | barney rubble | 200 |+-----------------+---------------------+-------------------+-------------------+
ALTER TABLE student_grades ADD COLUMNS (gen_id BIGINT); MERGE INTO student_grades g USING students_v2 s ON g.row_id = s.row_idWHEN MATCHED THEN UPDATE SET gen_id = s.id;
到此,关于"Hive3怎么使用代理键"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
代理
生成
数据
类型
学习
托管
事务
参数
学生
更多
格式
帮助
实用
接下来
一行
两个
之间
事务性
任务
优势
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
做软件开发的公司好干吗
吉林现代化软件开发发展现状
数据库导出到excel显示
桌面应用 软件开发
软件开发与程序设计图
科技互联网行业分析
中国台湾oa软件开发视频
手机上服务器无法连接是怎么回事
服务器下安全狗需要注意什么
新密数据库采集工作站
网络安全威胁预防
网络技术带来的发展影响
永宁县政务软件开发找哪家
招聘网络安全工程师骗局
数据库维护招聘
云计算和软件开发那个未来
软件开发参考书籍
天津信息化软件开发设施
excel 引用姓名数据库
进销存软件数据库设计
云易贷互联网科技有限公司
衡南网络安全专项检查
英特尔服务器原理图
徐汇区网络技术服务业务流程
批量数据导入数据库
如何运行服务器管理器
建立腐蚀数据库的意义
南京软件开发就业需求量
孝感市网络安全法制主题日活动
四川旅游app小程序软件开发