《CDP企业数据云平台从入门到实践》——CDP之数据仓库(1)

简介: 《CDP企业数据云平台从入门到实践》——CDP之数据仓库(1)


CDP 之数据仓库


Cloudera Data Platform 的数据仓库功能主要有 Apache Impala、Apache Hive 和Hue进行支持。使用这些组件熟悉的 SQL 接口,您可以访问您的数据。


一、 数据仓库概览


1. Hive Metastore 概述


Hive metastore(HMS)是一种服务,用于在后端 RDBMS(例如 MySQL 或PostgreSQL)中存储与 Apache Hive 和其他服务相关的元数据。Impala、Spark、Hive 和其他服务共享 Metastore。与 HMS 的连接包括 HiveServer、Ranger 和代表 HDFS 的NameNode。


Beeline、Hue、JDBC 和 Impala shell 客户端通过 thrift 或 JDBC 向 HiveServer 发出请求。HiveServer 实例向 HMS 读取/写入数据。默认情况下,冗余 HMS 以主动/主动模式运行。物理数据驻留在后端 RDBMS 中,其中一个用于 HMS。所有 HMS 实例都使用相同的后端数据库。一个单独的 RDBMS 支持安全服务,例如 Ranger。在任何给定时间,所有连接都路由到单个 RDBMS 服务。HMS 通过 thrift 与 NameNode对话,并充当 HDFS 的客户端。



image.png

HMS 直接连接到 Ranger 和 NameNode(HDFS),HiveServer 也是如此,但为简单起见,图中未显示。后端的一个或多个 HMS 实例可以与其他服务通信,例如Ranger。


2. Apache Hive 概览


Apache Hive 3.x 的主要更改改进了 Apache Hive 2.x 事务和安全性。了解这些版本之间的主要差异对于 SQL 用户(包括使用 Apache Spark 和 Apache Impala 的用户)来说至关重要。


Hive 是一个数据仓库系统,用于汇总、查询和分析庞大的不同数据集。


1) ACID 事务处理


Hive 3 表符合 ACID(原子性、一致性、隔离性和持久性)。Hive 3 写入和读取操作提高了事务表的性能。原子操作包括简单的写入和插入、写入多个分区以及在单个SELECT 语句中进行多次插入。读取操作不受操作期间发生的更改的影响。您可以插入或删除数据,并且它在整个软件和硬件崩溃期间保持一致。Hive 表的创建和维护得到简化,因为不再需要存储表。


2) 物化视图


因为多个查询经常需要相同的中间汇总表或连接表,所以您可以通过预先计算中间表并将其缓存到视图中来避免代价高昂的重复查询部分共享。


3) 查询结果缓存


Hive 过滤并缓存相似或相同的查询。Hive 不会重新计算未更改的数据。当成百上千的 BI 工具和 Web 服务用户查询 Hive 时,缓存重复查询可以大大减少负载。


4) 预定查询


使用 SQL 语句,您可以安排 Hive 查询定期运行、监控查询进度、暂时忽略查询计划并限制并行运行的数量。例如,您可以使用计划查询来启动压缩并定期重建物化视图。


5) 安全改进


Apache Ranger 默认保护 Hive 数据。为了满足并发改进、ACID 支持、呈现安全性和其他功能的需求,Hive 严格控制文件系统或对象存储和内存资源上的仓库位置。借助Apache Ranger 和 Apache Hive ACID 支持,您的组织将准备好支持和实施GDPR(通用数据保护条例)。


6) 连接池


Hive 支持 HakariCP JDBC 连接池。


7) 不支持的功能


CDP 不支持 HDP 和 CDH 平台中可用的以下功能:

• CREATE TABLE 指定托管表位置

不要使用 LOCATION 子句创建托管表。Hive 将仓库中的默认位置分配给托管表。

• 创建索引

Hive 在主表中的 ORC 或 Parquet 中自动构建和存储索引,而不是在不同的表中自动存储。设置 hive.optimize.index.filter 为启用(不推荐——改用物化视图)。在升级期间,现有索引将在 Parquet 或 ORC 中保留并迁移到 CDP。


《CDP企业数据云平台从入门到实践》——CDP之数据仓库(2) https://developer.aliyun.com/article/1226345?groupCode=ClouderaCDP

目录
相关文章
|
2月前
|
机器学习/深度学习 算法 数据可视化
基于Google Earth Engine云平台构建的多源遥感数据森林地上生物量AGB估算模型含生物量模型应用APP
基于Google Earth Engine云平台构建的多源遥感数据森林地上生物量AGB估算模型含生物量模型应用APP
93 0
|
1月前
|
SQL 数据采集 存储
数据仓库(12)数据治理之数仓数据管理实践心得
这边文章聊聊自己对数据治理开发实践的一些思路,就是聊聊怎么开始去做数据治理这件事情。说起数据治理,有时候虽然看了很多文章,看了很多的介绍,了解数据治理的理论,但是实际上需要我们去搞的时候,就会踩很多的坑。这里记一下自己做数据治理的一些思路,做做笔记,也分享给需要的同学。 当然,想要做数据治理,想要学习了解,一下数据治理的范围,理论等,最好可以看看别人怎么做的,了解数据治理可以参考:[数据仓库(11)什么是大数据治理,数据治理的范围是哪些](https://zhuanlan.zhihu.com/p/467433967)。
230 0
|
1月前
|
存储 监控 大数据
数据仓库(11)什么是大数据治理,数据治理的范围是哪些
什么是数据治理,数据治理包含哪些方面?大数据时代的到来,给了我们很多的机遇,也有很多的挑战。最基础的调整也是大数据的计算和管理,数据治理是一个特别重要的大数据基础,他保证着数据能否被最好的应用,保证着数据的安全,治理等。那么数据治理到底能治什么,怎么治?
64 0
|
1月前
|
存储 大数据 数据管理
数据仓库(09)数仓缓慢变化维度数据的处理
数据仓库的重要特点之一是反映历史变化,所以如何处理维度的变化是维度设计的重要工作之一。缓慢变化维的提出是因为在现实世界中,维度的属性并不是静态的,它会随着时间的流逝发生缓慢的变化,与数据增长较为快速的事实表相比,维度变化相对缓慢。阴齿这个就叫做缓慢变化维。
210 2
数据仓库(09)数仓缓慢变化维度数据的处理
|
3月前
|
存储 机器学习/深度学习 数据挖掘
数据仓库与数据湖:解析数据驱动的未来
在数字化时代,数据成为企业决策的核心资源。本文将深入探讨数据仓库和数据湖的概念、特点以及应用场景,分析其在实现数据驱动决策过程中的重要性和优势,并展望数据驱动的未来发展趋势。
49 5
|
3月前
|
SQL 分布式计算 Java
数仓学习---7、数据仓库设计、数据仓库环境准备、模拟数据生成
数仓学习---7、数据仓库设计、数据仓库环境准备
123 2
|
4月前
|
Cloud Native 关系型数据库 MySQL
云数据仓库ADB如何更新、删除和导入AnalyticDBMySQL数据-更新数据?
云数据仓库ADB如何更新、删除和导入AnalyticDBMySQL数据-更新数据?
81 0
|
4月前
|
Cloud Native 关系型数据库 MySQL
云数据仓库ADB问一下,数据批量导入失败的有地方导出吗?
云数据仓库ADB问一下,数据批量导入失败的有地方导出吗?
37 0
|
4月前
|
关系型数据库 MySQL OLAP
云数据仓库ADB如何更新、删除和导入AnalyticDBMySQL数据-更新数据?
云数据仓库ADB如何更新、删除和导入AnalyticDBMySQL数据-更新数据?
199 0
|
4月前
|
存储 数据采集 缓存
云数据仓库ADB问一下,数据批量导入失败的有地方导出吗?
云数据仓库ADB问一下,数据批量导入失败的有地方导出吗?
34 0