Hive本质1大数据和Hive概述

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 大数据和Hive概述

关系和NoSQL数据库与Hadoop

为了更好地理解关系数据库,NoSQL数据库和Hadoop之间的差异,让我们将它们与旅行方式进行比较。您会惊讶地发现它们有许多相似之处。当人们旅行时,他们要么乘坐汽车或飞机,这取决于旅行距离和费用。例如,当您从多伦多前往温哥华时,就旅行时间与成本而言,飞机始终是首选。当您从多伦多前往尼亚加拉瀑布时,一辆车总是一个不错的选择。当您从多伦多前往蒙特利尔时,有些人可能更喜欢乘车去飞机。这里的距离和成本就像大数据量和投资一样。传统的关系数据库就像汽车一样,Hadoop大数据工具就像飞机一样。当您处理少量数据(短距离)时,关系数据库(如汽车)始终是最佳选择,因为处理少量或中等数量的数据非常快捷灵活。当您处理大量数据(长距离)时,Hadoop(如飞机)是最佳选择,因为它更具线性可扩展性,快速且稳定,可处理大量数据。你可以从多伦多开车到温哥华,但需要花费太多时间。
您也可以从多伦多乘坐飞机前往尼亚加拉瀑布,但是前往机场需要更多时间,而且比开车旅行需要更多费用。

此外,您可以乘坐船只或火车。这就像NoSQL数据库,它提供了关系数据库和Hadoop在良好性能方面的特性和平衡,以及对中等到大量数据的各种数据格式支持。

批处理,实时和流处理

使用批处理批量处理数据。它从输入读取数据,处理它,并将其写入输出。 Apache Hadoop是使用MapReduce范例的分布式批处理系统中最着名和最流行的开源实现。数据存储在称为Hadoop分布式文件系统(HDFS)的共享和分布式文件系统中,并分为多个分区,这些分区是MapReduce处理的逻辑数据分区。
要使用MapReduce范例处理这些拆分,map任务会读取拆分并将其所有键/值对传递给map函数,并将结果写入中间文件。映射阶段完成后,reducer将读取通过shuffle进程发送的中间文件,并将它们传递给reduce函数。最后,reduce任务将结果写入最终输出文件。 MapReduce模型的优点包括使分布式编程更容易,接近线性加速,良好的可扩展性以及容错性。批处理模型的缺点是无法执行递归或迭代作业。此外,明显的批处理行为是在reduce作业启动之前所有输入必须通过map准备好,这使得MapReduce不适合在线和流处理用例。

实时处理用于处理数据并几乎立即获得结果。大数据实时即席查询领域的这一概念最初是由Google在Dremel中实现的。它使用一种新颖的柱状存储格式用于嵌套结构,具有快速索引和可伸缩聚合算法,用于并行计算查询结果而不是批处理序列。这两种技术是实时处理的主要特征,并且被类似的实现使用,例如Impala,Presto和Drill,由柱状存储数据格式提供支持,例如Parquet,ORC,CarbonData和Arrow。另一方面,内存计算无疑为实时处理提供了解决方案。与硬盘的200兆字节/秒相比,内存计算提供了非常高的带宽,超过10千兆字节/秒。此外,与硬盘相比,延迟相对较低,为纳秒与毫秒。随着RAM的价格每天越来越低,内存计算更实惠 ,例如Apache Spark(https://spark.apache.org/),这是一种流行的内存计算开源实现。

Spark可以轻松地与Hadoop集成,其内存数据结构Resilient Distributed Dataset(RDD)可以从数据源(如HDFS和HBase)生成,以实现高效的缓存。

流处理用于连续处理实时流数据并对其进行操作以获得结果。在流处理中,有两种常用的通用流处理框架:Storm(https://storm.apache.org/)和Flink(https://flink.apache.org/)。两个框架都在Java虚拟机(JVM)上运行,并且都处理密钥流。在编程模型方面,Storm为您提供了构建框架的基本工具,而Flink为您提供了一个定义明确且易于使用的框架。此外,Samza(http://samza.ap ache.org/)和Kafka Stream(https://kafka.apache.org/documentation/streams/)利用Kafka进行消息缓存和转换。最近,Spark还提供了一种类型的流处理。

Hadoop生态系统概述

Hadoop于2011年首次由Apache发布,版本为1.0.0,仅包含HDFS和MapReduce。 Hadoop从一开始就被设计为计算(MapReduce)和存储(HDFS)平台。随着对大数据分析的需求不断增加,Hadoop吸引了大量其他软件来解决大数据问题并融入以Hadoop为中心的大数据生态系统。

image.png

在当前的Hadoop生态系统中,HDFS仍然是使用硬盘存储时的主要选择,而Alluxio提供了几乎分布式的内存替代方案。在HDFS之上,Parquet,Avro和ORC数据格式可以与用于计算和存储优化的快速压缩算法一起使用。 Yarn作为第一个Hadoop通用资源管理器,旨在实现更好的资源管理和可扩展性。作为内存计算引擎,Spark和Ignite能够在Yarn上运行,以便与Hadoop紧密协作。
另一方面,Kafka,Flink和Storm主导着流处理。 HBase是一个领先的NoSQL数据库,尤其是在Hadoop集群上。对于机器学习,Spark MLlib和Madlib以及新的Mahout。 Sqoop仍然是在Hadoop和关系数据库之间交换数据的主要工具之一。 Flume是一种成熟,分布且可靠的日志收集工具,用于将数据移动或收集到HDFS。 Impala和Drill能够直接针对Hadoop上的数据启动交互式SQL查询。此外,Hive over Spark / Tez以及Live Long和Process(LLAP)为用户提供了在不同计算框架(而不是MapReduce)上使用内存数据缓存在长期流程中运行查询的能力。因此,Hive在生态系统中扮演着比以往更重要的角色。我们也很高兴看到Ambari成为新一代集群,除了Zookeeper之外,管理工具还提供更强大的集群管理和协调。对于计划和工作流程管理,我们可以使用Airflow或Oozie。最后,我们有一个开源治理和元数据服务,Altas,它支持生态系统中大数据的合规性和线条.

完整内容参见 https://www.jianshu.com/p/db6aae0d9e16

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
2月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
68 2
|
2月前
|
存储 分布式计算 API
大数据-107 Flink 基本概述 适用场景 框架特点 核心组成 生态发展 处理模型 组件架构
大数据-107 Flink 基本概述 适用场景 框架特点 核心组成 生态发展 处理模型 组件架构
85 0
|
2月前
|
存储 消息中间件 大数据
大数据-68 Kafka 高级特性 物理存储 日志存储概述
大数据-68 Kafka 高级特性 物理存储 日志存储概述
30 1
|
2月前
|
存储 分布式计算 NoSQL
大数据-144 Apache Kudu 基本概述 数据模型 使用场景
大数据-144 Apache Kudu 基本概述 数据模型 使用场景
38 0
|
2月前
|
SQL 存储 OLAP
大数据-133 - ClickHouse 基础概述 全面了解
大数据-133 - ClickHouse 基础概述 全面了解
50 0
|
2月前
|
存储 分布式计算 算法
大数据-105 Spark GraphX 基本概述 与 架构基础 概念详解 核心数据结构
大数据-105 Spark GraphX 基本概述 与 架构基础 概念详解 核心数据结构
50 0
|
2月前
|
消息中间件 分布式计算 Kafka
大数据-98 Spark 集群 Spark Streaming 基础概述 架构概念 执行流程 优缺点
大数据-98 Spark 集群 Spark Streaming 基础概述 架构概念 执行流程 优缺点
41 0
|
2月前
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
41 0
|
2月前
|
SQL 存储 分布式计算
大数据-93 Spark 集群 Spark SQL 概述 基本概念 SparkSQL对比 架构 抽象
大数据-93 Spark 集群 Spark SQL 概述 基本概念 SparkSQL对比 架构 抽象
41 0
|
4月前
|
存储 SQL 分布式计算
Hadoop生态系统概述:构建大数据处理与分析的基石
【8月更文挑战第25天】Hadoop生态系统为大数据处理和分析提供了强大的基础设施和工具集。通过不断扩展和优化其组件和功能,Hadoop将继续在大数据时代发挥重要作用。