Apache Hive分布式容错数据仓库系统

Apache Hive™是一个分布式的、容错的数据仓库系统,它支持大规模的分析,并使用SQL方便地读取、写入和管理驻留在分布式存储中的pb级数据。

Apache Hive

 Apache Hive是什么

Apache Hive是一个分布式的、容错的数据仓库系统,支持大规模的分析。Hive Metastore(HMS)提供了一个元数据的中央存储库,可以很容易地对其进行分析,从而做出明智的、数据驱动的决策,因此它是许多数据湖架构的关键组件。Hive建立在Apache Hadoop之上,通过hdfs支持S3、adls、gs等存储。Hive允许用户使用SQL读取、写入和管理pb级的数据。

Hive-Server 2 (HS2)

HS2支持多客户机并发性和身份验证。它旨在为JDBC和ODBC等开放API客户机提供更好的支持。 

>beeline -u "jdbc:hive2://host:10001/default"
Connected to: Apache Hive 

>jdbc:hive2://host:10001/>select count(*) from test_t1;

学习更多:https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Overview

Hive Metastore Server (HMS)


Hive Metastore (HMS)是关系数据库中Hive表和分区的元数据中央存储库,并通过Metastore服务API为客户端(包括Hive、Impala和Spark)提供访问这些信息的服务。它已经成为数据湖的构建块,这些数据湖利用了各种开源软件,比如Apache Spark和Presto。事实上,一个完整的工具生态系统,开源的和其他的,都是围绕Hive Metastore构建的,这张图展示了其中的一些。 

 

学习更多:Design - Apache Hive - Apache Software Foundation

 Hive ACID

Hive为ORC表提供了完整的ACID支持,并且只支持插入所有其他格式。

了解更多:Hive Transactions - Apache Hive - Apache Software Foundation

Hive数据压缩


基于查询和基于mr的数据压缩是开箱即用的。 


jdbc:hive2://> alter table test_t1 compact "MAJOR";
Done!
jdbc:hive2://> alter table test_t1 compact "MINOR";
Done!
jdbc:hive2://> show compactions;

学习更多:LanguageManual DDL - Apache Hive - Apache Software Foundation

Hive冰山

Hive通过Hive StorageHandler为Apache冰山表提供了开箱即用的支持,冰山表是一种云原生的高性能开放表格式。 

 

Hive - Apache Iceberg™ 

安全性和可观察性


Apache Hive支持kerberos认证,并与Apache Ranger和Apache Atlas集成以提高安全性和可观察性。

 

Apache Atlas – Apache Atlas Hook & Bridge for Apache Hive

Hive LLAP

Apache Hive通过低延迟分析处理(LLAP)实现交互式和亚秒级SQL, LLAP在Hive 2.0中引入,通过使用持久的查询基础设施和优化的数据缓存使Hive更快

LLAP - Apache Hive - Apache Software Foundation

查询规划器和基于成本的优化器


Hive使用Apache Calcite的基于成本的查询优化器(CBO)和查询执行框架来优化sql查询。 

jdbc:hive2://> explain cbo select ss.ss_net_profit, sr.sr_net_loss from store_sales ss join store_returns sr on (ss.ss_item_sk=sr.sr_item_sk) limit 5 ;+---------------------------------------------+ Explain +---------------------------------------------+ CBO PLAN: HiveSortLimit(fetch=[5]) HiveProject(ss_net_profit=[$1], sr_net_loss=[$3])   HiveJoin(condition=[=($0, $2)], joinType=[inner])     HiveProject(ss_item_sk=[$2], ss_net_profit=[$22])     HiveFilter(condition=[IS NOT NULL($2)])       HiveTableScan(table=[[tpcds_text_10, store_sales]], table:alias=[ss])     HiveProject(sr_item_sk=[$2], sr_net_loss=[$19])     HiveFilter(condition=[IS NOT NULL($2)])       HiveTableScan(table=[[tpcds_text_10, store_returns]], table:alias=[sr]) +---------------------------------------------+

 Hive复制


Hive支持启动复制和增量复制,用于备份和恢复。

Replication - Apache Hive - Apache Software Foundation

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/904743.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue CLI: 安装、项目创建及基本概念指南,vue生命周期

只有经历地狱般的磨砺,才能练就创造出天堂的力量;只有流过血的手指,才能弹奏出世间绝唱 文章目录 vue-cli介绍安装创建项目入口文件修改文件夹名称的步骤ES6模块化单文件组件 vue生命周期vue动画 vue-cli 介绍 vue-lic是一个开发vue项目的脚…

Geotrust SSL证书

在数字化浪潮席卷全球的今天,互联网已成为信息交流与商业活动不可或缺的平台。然而,随着网络应用的深入,数据泄露、身份盗用、网络诈骗等安全问题也日益凸显,严重威胁着用户的隐私与财产安全。在这样的背景下,数字证书…

css实现边框双色凹凸半圆

整体效果如下图&#xff1a; 结构代码&#xff1a; <div classline-outside-wrap><div classwrap><img src../img/avatar2x.png/><div classcontent-wrap></div></div></div> 内凹框实现&#xff1a; .content-wrap{width:100%;he…

HarmonyOS:自定义组件冻结功能

一、简介 自定义组件冻结功能专为优化复杂UI页面的性能而设计&#xff0c;尤其适用于包含多个页面栈、长列表或宫格布局的场景。在这些情况下&#xff0c;当状态变量绑定了多个UI组件&#xff0c;其变化可能触发大量UI组件的刷新&#xff0c;进而导致界面卡顿和响应延迟。为了提…

Kafka相关API开发

(一)引入依赖 用API直接去操作kafka(读写数据)在实际开发中用的并不多&#xff0c;学习它主要还是为了加深对Kafka功能的理解。kafka的读写操作&#xff0c;实际开发中&#xff0c;是通过各类更上层的组件去实现。而这些组件在读写kafka数据时&#xff0c;用的当然是kafka的jav…

警务辅助人员管理系统小程序ssm+论文源码调试讲解

2系统关键技术 2.1 微信小程序 微信小程序&#xff0c;简称小程序&#xff0c;英文名Mini Program&#xff0c;是一种全新的连接用户与服务的方式&#xff0c;可以快速访问、快速传播&#xff0c;并具有良好的使用体验。 小程序的主要开发语言是JavaScript&#xff0c;它与普…

微服务设计模式 - 断路器模式 (Circuit Breaker Pattern)

微服务设计模式 - 断路器模式 (Circuit Breaker Pattern) 定义 断路器模式&#xff08;Circuit Breaker Pattern&#xff09;是云计算和微服务架构中的一种保护性设计模式&#xff0c;其目的是避免系统中的调用链出现故障时&#xff0c;导致系统瘫痪。通过断路器模式&#xff…

Yelp 数据集进行用户画像, 使用聚类做推荐

使用 Yelp 数据集进行用户画像&#xff08;User Profiling&#xff09;是一项有趣的任务&#xff0c;可以理解用户的偏好、行为和特征。以下是总结的一个基本的步骤&#xff0c;帮助构建用户画像 pandas 加载数据&#xff1a; import pandas as pd# 加载数据 users pd.read_…

DDRPHY数字IC后端设计实现系列专题之后端设计导入,IO Ring设计

本章详细分析和论述了 LPDDR3 物理层接口模块的布图和布局规划的设计和实 现过程&#xff0c;包括设计环境的建立&#xff0c;布图规划包括模块尺寸的确定&#xff0c;IO 单元、宏单元以及 特殊单元的摆放。由于布图规划中的电源规划环节较为重要&#xff0c; 影响芯片的布线资…

前端路由如何从0开始配置?vue-router 的使用

在 Web 开发中&#xff0c;路由是指根据 URL 的不同部分将请求分发到不同的处理函数或页面的过程。路由是单页应用&#xff08;SPA, Single Page Application&#xff09;和服务器端渲染&#xff08;SSR, Server-Side Rendering&#xff09;应用中的一个重要概念。 在开发中如何…

强化学习的数学原理-06随即近似理论和随机梯度下降

文章目录 Robbins-Monro algorithmStochastic gradient descentBGD、MBGD、 and SGDSummary Robbins-Monro algorithm 迭代式求平均数的算法 S t o c h a s t i c a p p r o x i m a t i o n ( S A ) Stochastic \; approximation \;(SA) Stochasticapproximation(SA)&#xf…

Apache Hive 通过Docker快速入门

QuickStarted 介绍 在伪分布式模式下在 docker 容器内运行 Apache Hive&#xff0c;以便为 Hive 提供以下快速启动/调试/准备测试环境 快速入门 步骤 1&#xff1a;拉取镜像 从 DockerHub 拉取镜像&#xff1a;https://hub.docker.com/r/apache/hive/tags。以下是最新的镜像…

【K8S系列】Kubernetes 中 NodePort 类型的 Service 无法访问的问题【已解决】

在 Kubernetes 中&#xff0c;NodePort 类型的 Service 允许用户通过每个节点的 IP 地址和指定的端口访问应用程序。如果 NodePort 类型的 Service 无法通过节点的 IP 地址和指定端口进行访问&#xff0c;可能会导致用户无法访问应用。本文将详细分析该问题的常见原因及其解决方…

逻辑卷动态扩容与缩容-----

一、创建逻辑卷 需求&#xff1a;创建一个2.5G大小的逻辑卷 思路&#xff1a; 1. 物理的设备 2. 将物理设备做成物理卷 pv 3. 创建卷组并将物理卷加入其中 vg 4. 创建逻辑卷 lv 5. 格式化逻辑卷 mkfs.ext4 6. 挂载使用 mount 步骤&#xff1a; 1. 物理设备【如何来分区】…

开关灯问题(c语言)

样例&#xff1a;10 10 &#xff0c;输出&#xff1a;1&#xff0c;4&#xff0c;9 5 5 &#xff0c;输出&#xff1a;1&#xff0c;4 代码如下 #include<stdio.h> //引入bool值的概念 #include<stdbool.h> int main() {int n 0;//n为灯的数量int m 0;…

扫雷游戏(C语言详解)

扫雷游戏&#xff08;C语言详解&#xff09; 放在最前面的1、前言&#xff08;扫雷游戏的简介&#xff09;2、扫雷游戏的规则&#xff08;简易版&#xff09;3、代码实现&#xff08;3.1&#xff09;提醒一下&#xff1a;( i ) 提醒1&#xff1a;( ii ) 提醒2&#xff1a; &…

在面试了些外包以后,我有了些自己的思考

大家好&#xff0c;我是洋子&#xff0c;最近公司在降本增效&#xff0c;需要把外包从北京迁移到陕西的某新一线城市&#xff0c;其实就是变相裁员&#xff0c;减少外包的成本&#xff0c;裁掉现有的员工&#xff0c;重新招聘新人 在整个测试行业&#xff0c;外包测试的比重是…

论文 | Ignore Previous Prompt: Attack Techniques For Language Models

这篇论文探讨了针对大型语言模型&#xff08;LLM&#xff09;的“提示注入”攻击&#xff0c;并提出了一种名为 PROMPTINJECT 的框架来研究这类攻击。 论文的主要内容包括&#xff1a;1. 提示注入攻击&#xff1a; 论文定义了“提示注入”的概念&#xff0c;即通过在用…

Django-中间件

定义&#xff1a; 编写中间件&#xff1a; 注册中间件&#xff1a; 添加中间件&#xff1a; 1.在项目目录下添加一个文件夹&#xff08;名字随意&#xff09;&#xff0c;然后文件夹下创建.py文件 2.将中间件添加到setting文件中 MIDDLEWARE [django.middleware.security.Se…

MBR20100CT-ASEMI半塑封肖特基二极管MBR20100CT

编辑&#xff1a;ll MBR20100CT-ASEMI半塑封肖特基二极管MBR20100CT 型号&#xff1a;MBR20100CT 品牌&#xff1a;ASEMI 封装&#xff1a;TO-220 安装方式&#xff1a;插件 批号&#xff1a;最新 最大平均正向电流&#xff08;IF&#xff09;&#xff1a;20A 最大循环…