Hive3怎么使用代理键
发表于:2024-10-01 作者:千家信息网编辑
千家信息网最后更新 2024年10月01日,这篇文章主要介绍"Hive3怎么使用代理键",在日常操作中,相信很多人在Hive3怎么使用代理键问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Hive3怎么使用代理键"
千家信息网最后更新 2024年10月01日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安全错误
数据库的锁怎样保障安全
想学习网络技术哪里可以学
普通台式机使用服务器网卡
软件开发秋招流程
聚橙网络技术公司怎么样
csgo怎么建创意工坊服务器
软件开发的人工智能应用
杨浦区安装软件开发预算
trap服务器是什么
巴士管家服务器偷懒
云原生数据库优缺点
网络安全管网
定制app软件开发平台宁波
三级网络技术模拟题库
数学常用数据库
软件开发工具指什么
2018年的网络安全问题
科技创新助力网络安全
客户服务器模式
动漫公司下游服务器租赁
长春服务器托管有哪些运营商
js算数据库吗
杭州仕佳网络技术官网
数据库的dns怎么查看
tomcat连接数据库
技术运营数据库题
上海通信软件开发价格服务标准
学校破解路由器网络安全
rhub服务器多少钱一台
计算机设计软件开发
打印服务器无线测评