hive客户端连接

这篇具有很好参考价值的文章主要介绍了hive客户端连接。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

hive客户端

第一代客户端直接使用hive指令连接,连接的就是metastore服务,并且只要连接成功就可以操作hive数据库

第一代客户端的启动和使用

第一代客户端,直接启动metastore服务即可

前台启动(当终端任务结束后,立刻结束服务)

前台启动,可以方便查看日志信息

 hive--service metastore

后台启动(不影响终端的使用,在哪个目录下启动该服务,就会在哪个目录下生成一个nohuo.out记录日志信息)

nuhoop hive -- service metastore &

使用第一代客户端

hive

第一代客户端存在的问题

1、meta store即负责元数据的管理,又负责客户端的连接保持(峰值性能不强)

2、没有身份识别,只要能连接metastore就可以操作hive安全性不强

3、无法连接第三行服务(jdbc)

第二代客户端

创建了一个单独额hiveserver2服务

1、专门处理客户端的连接请求,以保持客户端的连接

2、hiveserver2会对客户端的身份进行校验,如果不满足将无法使用hive服务,提高安全性

3、使用jdbc协议连接,可以无缝连接第三方服务

metastore和hiveserver2的启动

前台启动会占用终端窗口,如果前台启动,使用ctrl+c结束终端占用,服务也会跟着关闭

#前台启动
hive --service metastore
hiver --service hiveserver2

#后台启动
nohup hive --service metastore  &
nohup hive --service hiveserver2 &

注意:hiveserver服务启动后也会产生一个runjar进程,hiveserver2启动服务后1-2分钟后才可以使用,如果不放心可以使用 lost-i:10000去查询,如果有进程使用了该端口号则hiveserver2服务就可以使用

datagrip连接hive服务本质上是连接的hiveserver2

数据库和数据仓库

OLTP:联机事务处理,保存我们日常生活中的各种用户行为产生记录的数据平台

特点:服务于业务,需要少量数据的频繁增删改查,要保证响应速度,保证数据安全,保证时效性

OLAP:联机分析处理,数据分析时所使用的海量数据存放的数据平台,一般会将多个业务数据库或各种数据源中的数据提取出来,统一存在OLAP服务中

特点:服务于分析,要能应对海量数据的存储和数据计算,对于响应速度要求不高没我们很少修改数据,所以也不需要对数据的一致性,安全性进行考虑。

思考:数据仓库是大型数据库吗?不是

数据库主要是为了企业的业务发展记录数据

数据库主要是为了企业的业务发展记录数据

数据仓库主要是为了对于企业的历史数据进行分析

数据库和数据仓库并不能互相取代,企业中可以没有数据仓库但是不能没有数据库

我们现在学过的数据库有mysql(sql server),数据仓库有hive

数据库和数据仓库的区别

本质上时OLTP和OLAP系统的区别

数据库更偏重于事务处理,要求其支持事务,要求增删改查效率比较高

事务:最小的业务单元,执行过程中,要么全部成功,要么全部失败

事例:小明给小刘转账1000元,银行系统要给小明减少1000元,给小刘增加1000元,要么同时成功,要么同时失败。

数据仓库更偏重于数据吞吐量和稳定,不要求支持事务,不要求搞得响应效率,所以必须处理海量的数据或文件

OLTP

transcation  事务  面向事务支持事务
oltp系统更注重的是安全、完整、相应效率、通常指的就是关系型数据库
注意 不是nosql数据库  没有事务支持  redis  hbase

OLAP

analytical分析  面向分析支持分析
olap更注重的是数据吞吐量
主要指的是数据仓库、数据集市(小型数据仓库):apche hive

注意:在某些场合下,说oracle也是olap系统,如何理解?

如果关系型数据库只要从事数据分析工作,就可以看作是olap系统,但是hive不可以做为oltp使用,因为不具备事务功能

数据仓库的核心特征

1、面向主题性

主题:是一个抽象的概念,数据综合体,一个分析的主题可以对应多个数据源,在数仓的开展分析中,首先确定分析的主题,然后基于主题寻找,采集跟主题相关的数据

2、集成性

数仓不是生成数据的平台其数据来自各个不同的数据源

当我们确定主题后,就需要把和主题相关的数据从各个数据源集成过来

因为同一个主题的数据可能来自不同的数据源他们之间会存在差异(异构数据):字段名同名不统一,单位不统一,编码不统一。

因此在继承的过程中需要进行ELT(抽取 转换 加载)

3、不可更新性

数仓上面的数据几乎没有修改操作,都是分析的操作

数据仓库是分析规律的平台不是创造数据规律的平台

注意:改指的是数据之间的规律不能修改

当下所学的侧重于离线数据 分析的都是历史数据

4、实变性

数仓是一个持续维护建设的东西

站在时间角度,数仓的数据成批或批次变化更新,一天一分析,一周一分析

数仓分层

ODS:源数据层、数据操作层,主要就是将各个数据园中的数据集中到指定的平台中,几乎不对数据做任何处理,只是临时存放等待后续处理

DW:数据仓库层,对于数据进行数据清洗,数据处理,数据转换等,使其满足数据分析的需要

DA/APP层:数据应用层,根据业务部门的需求,进行数据分析处理获取的数据可以直接用于前端展示或者制作报表。

思考:为什么进行数据分层?

1、数据分层便于我们进行过程检查,方便协同开发

2、方便过程数据的复用,能缩短开发周期

3、如果出现数据错误,便于追根溯源

分层的好处?

1·、解耦合(相互依赖),方便协同开发

2、可以追根溯源,可以更快的对于问题进行解决和修复

3、空间换时间提高最终应用层使用数据的效率

每一个公司数仓的分层策略都不同,所以我们只需要记住三层架构即可,在公司中通常对dw层和da层细化

ETL和ELT

E:extact数据抽取,将数据从不同的数据源中抽取出来

T:transform数据转换,将数据通过清洗,处理,转换为满足数据分析要求的数据

L:load数据加载,将数据加载到数据仓库中

ETL:传统的数仓处理模式,将数据抽取出来存放到临时数据库,进行转换后加载到数据仓库

ELT:将数据抽取后直接加载到数据仓库中,在数据仓库中进行反复处理(分层处理)文章来源地址https://www.toymoban.com/news/detail-856272.html

数据库操作
1、创建数据库
create  database if not  exists myhive;
2、使用数据库
use  myhive
3、查看当前使用的数据库
selet  current_database();
4、查看数据库的详细信息
desc  database myhive;
5、创建数据库时指定数据存放位置
create database if  not  exists  test_1 location 'hdfs://node1:8020/tmp/db_1';
#8020是namenode的监听端口号,默认情况下hdfs的namenode使用端口8020进行通信,但是这个端口号可以根据实际的hadoop集群配置进行修改
6、创建数据库时制订注释信息
create  database if not  exists test_2  comment  'this is a test'
7、删除数据库
drop database myhive;
#如果是空数据库可以直接删除,如果内部创建了表,则不能随意删除
如果说要强制删除非空数据库,可以使用cascade进行修饰
drop database myhive  cascade;

到了这里,关于hive客户端连接的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • openGauss数据库客户端连接工具之Datastudio安装

    Datastudio使用前电脑必须安装jdk1.8版本或者1.11版本,如未安装可点击以下连接,参考第一步把jdk给安装成功。 点击此处查看jdk安装步骤 Datastudio 下载地址 :软件包|Datastudio 下载完成后,解压安装包,双击exe文件打开软件。 本次使用的Datastudio是3.1.0版本,电脑安装jdk是1.8.0.必

    2023年04月08日
    浏览(47)
  • Hive(3):Hive客户端使用

    1 Hive Client、Hive Beeline Client Hive发展至今,总共历经了两代客户端工具。 第一代客户端(deprecated不推荐使用):$HIVE_HOME/bin/hive, 是一个 shellUtil。主要功能:一是可用于以交互或批处理模式运行Hive查询;二是用于Hive相关服务的启动,比如metastore服务。 第二代客户端(recommen

    2024年02月03日
    浏览(38)
  • MySQL基础篇——MySQL数据库客户端连接,数据模型,SQL知识

    作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。   座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.客户端连接MySQL 二. 数据模型 1.关系型数据库(RDBMS) 2.数据模型 三.SQL 1.SQL通用语法 2.SQL分类 3.数据库操作 1). 查

    2024年02月06日
    浏览(50)
  • Java 构建websocket客户端,构建wss客户端,使用wss连接,并发送数据到服务器端,接收服务器端消息

    Java 构建websocket客户端,构建wss客户端,使用wss连接,并发送数据到服务器端,接收服务器端消息 回调函数处理

    2024年02月13日
    浏览(45)
  • Hive的安装与使用(内嵌模式derby+将Hive的元数据配置到MySQL)配置hive的远程访问,实现多客户端访问安全机制

    前期准备:因为hive是构建在hadoop集群之上的,所以要先进行hadoop集群的搭建 一、内嵌模式:使用hive内置的关系型数据库(derby)来存储元数据 1.下载并上传到虚拟机上,我是在/opt目录下 2.解压并且重命名 3.配置hive环境,个人习惯把配置文件放在my_enc.sh中 4. 初始化元数据库

    2024年02月06日
    浏览(33)
  • 【HDFS】Hadoop-RPC:客户端侧通过Client.Connection#sendRpcRequest方法发送RPC序列化数据

    org.apache.hadoop.ipc.Client.Connection#sendRpcRequest : 这个方法是客户端侧向服务端发送RPC请求的地方。调用点是Client#call方法过来的。 此方法代码注释里描述了一个细节:这个向服务端发送RPC请求数据的过程并不是由Connection线程发送的,而是其他的线程(sendParamsExecutor这个线程池)

    2024年02月09日
    浏览(37)
  • Mysql数据库(五) Mysql命令行客户端:内连接查询、左连接查询、右连接查询、自连接查询、子查询

    目录 一、 连接查询 对多个表进行查询 1.0 数据准备 1.1 连接查询 1.2 内连接 INNER JOIN 1.3 左连接 LEFT JOIN 1.4 右连接 RIGHT JOIN 1.5 FULL OUTER JOIN 1.6 自连接查询 1.7 子查询-嵌套在查询中 在之前的文章当中,我们在 base_1 当中有了一个 stu 表,记录的是学生的name age height等信息 第一步

    2024年02月13日
    浏览(40)
  • 【Hadoop】HDFS读写流程和客户端命令使用

    🦄 个人主页——🎐开着拖拉机回家_Linux,Java基础学习,大数据运维-CSDN博客 🎐✨🍁 🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬请批评指正!🍁🐥 🪁🍁🪁🍁🪁🍁🪁🍁 🪁🍁🪁🍁🪁🍁🪁 🪁🍁🪁🍁🪁🍁🪁🍁🪁🍁🪁🍁 感谢点赞和关注 ,每天进步

    2024年02月11日
    浏览(30)
  • openGauss学习笔记-102 openGauss 数据库管理-管理数据库安全-客户端接入之查看数据库连接数

    102.1 背景信息 当用户连接数达到上限后,无法建立新的连接。因此,当数据库管理员发现某用户无法连接到数据库时,需要查看是否连接数达到了上限。控制数据库连接的主要以下几种选项。 全局的最大连接数:由运行参数max_connections指定。 某用户的连接数:在创建用户时

    2024年02月07日
    浏览(48)
  • 什么是docker(docker客户端、镜像、容器、仓库)

    Docker 是一个开源的容器化平台,它可以让开发者打包应用程序及其依赖项成为一个轻量级、可移植的容器,然后在任何环境中运行。Docker 容器将应用程序及其依赖项打包到一个标准化单元中,包括代码、运行时环境、系统工具、系统库等,确保应用程序在不同的环境中具有

    2024年04月10日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包