首页 > 其他分享 >Hive操作基础(入门篇)

Hive操作基础(入门篇)

时间:2024-11-03 21:46:50浏览次数:4  
标签:数据库 数据仓库 hive 入门篇 metastore Hive 操作 数据

Hive 执行流程

Hive 架构

MetaStore 三种服务模式

内嵌模式:
    优点: 配置简单 hive命令直接可以使用
    缺点: 不适用于生产环境,derby和Metastore服务都嵌入在主Hive Server进程中,一个服务只能被一个客户端连接(如果用两个客户端以上就非常浪费资源),且元数据不能共享。

本地模式: 
    优点:可以单独使用外部的数据库(mysql),元数据共享
    缺点:相对浪费资源,metastore嵌入到了hive进程中,每启动一次hive服务,都内置启动了一个metastore。

远程模式:
    优点:可以单独使用外部库(mysql),可以共享元数据,本地可以连接metastore服务也可以连接hiveserver2服务,增加了扩展性(其他依赖hive的软件都可以通过Metastore访问hive)
    缺点:需要注意的是如果想要启动hiveserver2服务需要先启动metastore服务。

配置环境变量

注意:配置环境变量后才能在任意目录使用hive命令.

/etc/profile

export HIVE_HOME=/export/server/apache-hive-3.1.2-bin

export PATH=$PATH:$HIVE_HOME/bin:$HIVE_HOME/sbin

立即生效: source /etc/profile

环境生效后可以不进入hive的安装目录去敲hive命令了.而是在任意目录都可以敲.

Hive 开启服务

 Hive 关闭服务

 重要命令合集

1.启动hdfs和yarn集群:  start-all.sh

2.启动任务历史服务器:  mapred --daemon start historyserver

3.启动hive元数据服务: nohup hive --service metastore &

4.启动hive远程连接服务: nohup hive --service hiveserver2 &

5.查看所有的java进程:  jps -m

6.查看10000端口是否可用:  lsof -i:10000

 Hive 客户端连接

 测试用例

创建表
CREATE TABLE test(id INT, name STRING, gender STRING);

插入数据
INSERT INTO test VALUES(1, "王力红", "男"), (2, "周杰轮", "男"), (3, "林志灵", "女");

查询数据
SELECT gender, COUNT(*) AS cnt FROM test GROUP BY gender;

连接外部客户端DataGrip

 数据库和数据仓库的区别

数据库与数据仓库的区别:实际讲的是OLTP与OLAP的区别。

OLTP(On-Line Transaction Processin):叫联机事务处理,也可以称面向用户交易的处理系统,  主要面向用户进行增删改查

OLAP(On-Line Analytical Processing):叫联机分析处理,一般针对某些主题的历史数据进行分析 主要面向分析,支持管理决策。

数据仓库主要特征:面向主题的(Subject-Oriented )、集成的(Integrated)、非易失的(Non-Volatile)和时变的(Time-Variant)

数据仓库的出现,并不是要取代数据库,主要区别如下:

数据库是面向事务的设计,数据仓库是面向主题设计的。
数据库是为捕获数据而设计,数据仓库是为分析数据而设计
数据库一般存储业务数据,数据仓库存储的一般是历史数据。
数据库设计是尽量避免冗余,一般针对某一业务应用进行设计,比如一张简单的User表,记录用户名、密码等简单数据即可,符合业务应用,但是不符合分析。
数据仓库在设计是有意引入冗余,依照分析需求,分析维度、分析指标进行设计。

 数据仓库三层架构

源数据层(ODS):此层数据无任何更改,直接沿用外围系统数据结构和数据,不对外开放;为临时存储层,是接口数据的临时存储区域,为后一步的数据处理做准备。

数据仓库层(DW):也称为细节层,DW层的数据应该是一致的、准确的、干净的数据,即对源系统数据进行了清洗(去除了杂质)后的数据。

数据应用层(DA或APP):前端应用直接读取的数据源;根据报表、专题分析需求而计算生成的数据。

ETL和ELT 

广义上ETL:数据仓库从各数据源获取数据及在数据仓库内的数据转换和流动都可以认为是ETL(抽取Extract, 转化Transform , 装载Load)的过程。

但是在实际操作中将数据加载到仓库却产生了两种不同做法:ETL和ELT。

狭义上ETL: 先从数据源池中抽取数据,数据保存在临时暂存数据库中(ODS)。然后执行转换操作,将数据结构化并转换为适合目标数据仓库系统的形式,然后将结构化数据加载到数据仓库中进行分析。

ELT: 从数据源中抽取后立即加载。没有专门的临时数据库(ODS),这意味着数据会立即加载到单一的集中存储库中,数据在数据仓库系统中直接进行转换,然后进行分析。

标签:数据库,数据仓库,hive,入门篇,metastore,Hive,操作,数据
From: https://blog.csdn.net/CG_MPX/article/details/143470294

相关文章

  • C++——文件操作
    在C++编程中,文件操作是一个重要的组成部分,它允许程序读取、写入和处理文件数据。为了执行文件操作,C++提供了一系列的类和函数,这些都包含在标准库的<iostream>和<fstream>头文件中。目录一、I/O流二、文本文件1.写文件2.写文件三、二进制文件1.二进制读写操作四、C++......
  • 19-操作系统安全保护
    19.1概述1)概念一般来说,操作系统的安全是指满足安全策略要求,具有相应的安全机制及安全功能,符合特定的安全标准,在一定约束条件下,能够抵御常见的网络安全威胁,保障自身的安全运行及资源安全。操作系统的安全可控目标分为两个层面:第一个层面,是指给定一个操作系统,用户能够实现对操......
  • Sigrity Power SI 3D-EM Full Wave Extraction模式如何进行S参数提取和观测3D电磁场和
    SigrityPowerSI3D-EMFullWaveExtraction模式如何进行S参数提取和观测3D电磁场和远场操作指导(三)-去嵌SigrityPowerSI3D-EMFullWaveExtraction模式如何进行S参数提取和观测3D电磁场和远场操作指导(三)-去嵌  SigrityPowerSI如何使用3D-EMFullWaveExtracti......
  • JavaScript的DOM操作
    JavaScript的DOM(DocumentObjectModel,文档对象模型)是一种用于表示和操作HTML或XML文档的编程接口。DOM将整个文档建模为一个由节点和对象组成的树结构,使得开发者可以通过JavaScript来访问和修改文档的内容、结构和样式。一、DOM节点DOM节点指的是文档对象模型(DOM......
  • 【国产化替换】信创操作系统:银河麒麟桌面操作系统V10SP1-2403-X86上安装和使用Wiresha
    https://mp.weixin.qq.com/s/cDPN024RaavRcyedGtKYGg信创操作系统:银河麒麟桌面操作系统V10SP1-2403-X86上安装和使用Wireshark网络协议分析器的详细步骤原创易联无界一、引言1.1文档概述Wireshark适用于所有主流Linux发行版,是一款自由开源的网络协议分析器,通过使用Wi......
  • Apache HTTP Sever 的初级操作指南
    Apache初级操作指南摘要:本文详细介绍了ApacheHTTPServer的初级操作方法,包括安装与配置、启动与停止服务、虚拟主机设置以及访问日志与错误日志的查看与分析等内容。通过本文的学习,初学者可以快速掌握Apache的基本操作,为搭建和管理网站奠定基础。一、引言ApacheH......
  • Python自动化操作Word文档详解
        在日常办公和数据处理中,我们经常需要处理Word文档。手动操作Word文档可能会非常繁琐和耗时,而使用Python可以实现自动化操作,提高工作效率。本文将详细介绍如何使用Python自动化操作Word文档,包括读取、写入、修改和格式化等操作。一、安装所需的库    要使用......
  • java OOP 对象操作
     目录引对象比较”引用比较“与“内容比较”对象的比较:Comparable接口泛型化的Comparable接口使用例子“==”与“equals”重写equals()的必要性重写equals方法的要求重写hashCode()方法hashCode()与equals()的关系重写hashCode()的规则引前面的OOP部分......
  • 【JQuery】基础从零入门操作,简单详细
    阿华代码,不是逆风,就是我疯你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你!!目录一:JQuery介绍1:引入依赖2:src3:下载说明4:版本说明二:JQuery使用三:JQuery语法1:起手式2:选中元素四:JQuery选择器五:JQuery事件1:事件的组成六:获取、设置元素内容1:获取元素内......
  • 从递归到递推--入门篇
    从递归到递推–入门篇一.1.什么是递归递归是指一种通过重复将问题分解为子问题而解决问题的方法。具体到使用上来,就是指对函数自身的调用。本文所讨论的递归,都是基于函数对自身的调用。但是,递归并非仅对函数而言,递归是种思想,例如C语言中的链表的实现同样依托递归思想,本文......