Hive(六)Hive数据操作DML
数据操作 (DML 操作)主要说明一些常用的数据操作的方法,本地数据导入到hive 和通过hive 导出数据到指定的文件等操作。 文档地址 https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML 加载本地数据1load data [local] inpath '数据的path' [overwrite] into table table_name [partition (partcol1=val1,…)]; load data 加载数据 local 表示磁盘数据 inpath 跟着数据的路径 partition 表示数据的分区 overwrite 表示是否覆盖数据 在磁盘上创建一个数据文件 12341 小明2 小红3 小绿 创建一个表 12create table user_2(id int,name string) row format delimited fields terminated by ' ' lines terminated ...
Hive(五)Hive分桶表
分桶表分桶和分区一样,也是将数据拆分和分离的一种方式,不同点时,分区是通过目录的方式进行数据拆分。而分桶是将数据文件进行拆分和隔离的一种方式,不同的桶的数据分布在同一个目录,不同文件。 注意,分区是通过外部字段进行分区,而分桶是根据表中的内在属性进行分桶。 使用分桶表 创建分桶表 12345678create table user_bucket(id int,name string)clustered by (id)into 4 bucketsrow format delimited fields terminated by ','; 根据id 进行分表,并且分到4个桶里。 插入数据 12345insert into user_bucket(id,name) values (1,'name1');insert into user_bucket(id,name) values (2,'name2');insert into user_bucket(id,name) values (3,'name3 ...
Hive(四)Hive分区表
分区表默认的 创建一个数据库 对应着一个hdfs 文件夹,创建一个表 对应着一个hdfs文件夹。而分区表,是在表的文件夹下 再创建多个子文件夹。通过指定的条件,将多个不同属性的数据分割到多个子目录中。主要用来拆分大的数据文件为多个小的数据文件。 使用分区表 创建一个分区表 123create table log(id int ,info string ) partitioned by (date_str string) row format delimited fields terminated by ','; 创建日志表,根据日期进行分区 插入多个测试数据 123456insert into log(id,info,date_str) values (1,'sdfdssdfsd','2022_01');insert into log(id,info,date_str) values (2,'sdfdssdfsd','2022_02');insert into log(id, ...
Hive(三)Hive字段类型和DDL操作
hive的sql基本使用和mysql是很像的。也有对应的数据类型字段等信息; 在metastore 中的 存储了描述了数据类型的相关的信息。 hive 中的字段类型简单的数据类型对应关闭 123456789101112Hive数据类型 JAVA数据类型 长度TINYINT byte 1byte有符号整数SMALINT short 2byte有符号整数INT int 4byte有符号整数BIGINT long 8byte有符号整数BOOLEAN boolean true或者falseFLOAT float 单精度浮点数DOUBLE double 双精度浮点数STRING string 字符串。可以指定字符集TIMESTAMP 时间类型BINARY 字节数组 数据类型和mysql是差不多,字符类型只有一个是STRING 类型,不区分长度的,最大可以到2GB 整数类型有好几种类型,我们预估数据的长度选择合适的类型,与mysql不一样的是,即使数据超过了长度也不会报错,内部最自动对长度进行提升,选用小的可以在计 ...
Hive(二)Hive安装
Hive 的安装hive 和 hadoop版本关系hive使用的前提是安装hadoop。版本的对应关系一定要对,不然可能出现各种因为版本不兼容的问题。 我们 之前安装的hadoop版本是 3.1.3. 所以hive也要选中 3.x版本; hive 也分为2.x 和3.x 版本; 目前hive最新版本3.1.3 ,直接使用此版本. 为了确认版本的一致,可以去github 中的 hive项目的依赖中找到对应的hadoop版本 github 地址 https://github.com/apache/hive 找到对应的tag 查看pom.xml 搜索hadoop.verion 可以查看依赖的版本。 基础环境目前3台机器 hadoop1 hadoop2 hadoop3 hadoop1 安装了 hdfs NameNode 3台都安装了hdfs的 DataNodehadoop2 安装了yarn 的 ResouceManger ,3 台都安装了yarn的 NodeManager 安装hive之前hadoop是必须要安装的 安装参考链接 https://blog.ponyo.website ...
Hive(一)Hive基本介绍和说明
hive 基本介绍概述hive 是什么借用百度百科的一段话 hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。hive十分适合对数据仓库进行统计分析。 在使用hadoop 操作数据的过程中,操作是比较复杂的,需要自己定义map reduce程序,定义其中的参数的一些细节.而hive 可以通过使用SQL的方式(HQL),hive将用户的sql语句解析并转化成MapReduce程序,处理数据结果,方便了对数据的查询和统计,提高了效率。 hive 是apache的项目,最早由facebook开源。hive 的官网 http://hive.apache.org/ hive 的基本架构 hive 使用jdbc ...
免费内网穿透方案
免费的一些内网穿透的方法介绍靠谱好用的内网穿透方案。最关键是免费能用。 花生壳花生壳是一个比较成熟的内网穿透软件。 官网地址 https://hsk.oray.com/ 使用方法使用起来也很简单。使用步骤基本分为2步。 下载客户端 支持windows , mac ,linux ,树莓派 ,选择对应的下载安装 配置内网穿透 以windows为例,点击 内网穿透 –> 添加映射 –> 支持的协议有tcp udp http https 配置下内网的地址和端口,就可以完成穿透。操作起来很简单。 但是,免费版 只有1M带宽 ,并且每月有流量限制。 总结优点: 配置简单 服务稳定 缺点: 免费版带宽限制1M ,并且每月流量1G 只适合小数据量穿透 https 不提供给免费版用户,想用需要升级,一年需要38¥ 贵,如果想加带宽,1年需要752¥ zerotierzerotier 是一个组网的方案,可以将不同的内网的设备组件一个虚拟的网络,以vpn的方式进行访问,达到内网访问的目的。但是访问者和被访问者都需要安装对应的客户端。 官方网站 https://ww ...
Spring Security(10) spring security oauth2服务器
spring security oauth2 服务通过springSecurity Oauth2 相关的配置,可以很方便的搭建一个授权服务器,完成颁发令牌和访问控制等功能,也可以搭建一个资源服务器 以springsecurity 来管理资源的访问控制。 这里演示如何搭建授权服务器和资源服务器(这里放到一个项目中) 注意: oauth2 相关的核心包目前已经迁移到springsecurity 中内置了; https://zhuanlan.zhihu.com/p/342883010 (参考链接) 基础入门环境 首先引入对应的依赖 spring-security-oauth2 已经被废弃,不建议使用此类,直接使用spring-security 内部的一些配置就可完成. 要作为资源服务器 使用 spring-boot-starter-oauth2-resource-server 而要作为授权服务器,未来将又另一个项目来支持 https://github.com/spring-projects/spring-authorization-server 所以目前要使用授权服务器的功能,只能还用 ...
hadoop(十二)hadoop组件之Yarn-Yarn操作及配置项
yarn 的常用执行命令客户端的子命令12345678910111213app|application prints application(s) report/kill application/manage long running application 显示应用列表和状态信息 杀死应用等applicationattempt prints applicationattempt(s) report 打印尝试运行任务的报告 classpath prints the class path needed to get the hadoop jar and the required libraries 打印需要的类库和环境变量等信息cluster prints cluster information 打印集群报告container ...
Spring Security(9) oauth2单点登录实现
spring security oauth2 单点登录功能本篇将演示springsecurity 通过oauth2 实现github ,google 或其他的授权服务的第三方授权登录功能; 以github为例来说明如何使用; 首先对于 我们自己搭建的项目来说就是 客户端角色 ,github 就是充当了 授权服务器 和 资源服务器.oauth2 单点登录使用的是授权码模式. 基本操作流程是 客户端 到 服务提供者(github) 申请client_id 和 client_secret这两个信息要配置到客户端用于请求授权服务器的接口使用; 客户端的登录页面 要增加一个通过外部登录的按钮 (这里使用github登录),点击外部登录后携带client_id 和申请权限参数 重定向到 服务提供者(github) 的登录页面,登录成功后提示是否接受授权. 确定授权后,回调到客户端服务的回调处理地址,将返回的code 再请求授权服务器的换取 access_token 接口,返回access_token 获取access_token 后再调用资源服务器的获取用户信息的接口(因为是登录功能所以 ...





