背景介绍 | 学习笔记

简介: 快速学习 背景介绍

开发者学堂课程【NoSQL 数据库 Kudu 教程背景介绍学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/723/detail/12898


背景介绍


内容介绍:

一、  背景介绍

二、Kudu 是什么

三、Kudu 的应用场景

 

一、背景介绍

一个新的软件为 Apache Kudu,当下大数据当中两种主流的数据存储方式,第一种是针对的静态数据,历史数据而言这种存储,主要是以 HDFS 作为存储引擎,叫做 HDFS 的分布式文件系统,这种存储引擎,理论上可以怎么样横向的扩展至成千上万台机器,

所以最大特点就是吞吐量极高,离线数据,静态数据,历史数据,只要越大越好,都可以分布式的存储起来,吞吐量比较大,这是的优点,但是的缺点也比较明显,HBase 最大的缺点就是数据,无法进行随机的读写,甚至说是数据的修改,要想去找一个数据位于哪里,发现在做起来是极其的困难,而且定位非常复杂,比如想把当中100万条记录当中某一条某两条找出来,把给删除,或者做一个更新,发现 hdfs 基本上无法满足,这是第一部分做静态数据,以 HDFS为主,另外一种叫做动态数据,动态数据主要是需要随机的读写访问的能力思路的分析。这种数据往往是以 HBase 或者开始时这种作为数据的存储引擎,以 HBase 为例,是一个面向列的的数据库。局限性在于适合于的实施的随机读写能力,但是吞吐能力不如 HDFS 这么强。

这两种情况下,就可以大致的画上一个坐标系,在坐标系上会有两个维度,比如先简单描述一下,刚才上第一个在这个坐标系的 Y 轴上,讲究的是一个吞吐能力,X 轴讲了一个随机读写能力,比如这个叫做随机读写能力,当这边是高这边是低,在的 Y 轴这里,这个叫做数据的吞吐能力。在这两个维度情况下,发现传统的 HDFS,正好属于这两个维度的两个极端,以 HDFS 为例吞吐能力是相当的强,说过理论上分布式横向扩展,可以成百上千上万台,第一种方式HDFS 他的能力简单概括下叫做高吞吐或叫做吞吐能力极强,但是,随机读写能力差,适合批处理数据分析,就是面向过去分析数据越大,另外一个所知道的叫做面向列的数据库 HBase。正好跟是一个相反,比如说这里叫做 HBase,正好的强的弱弱的强叫做随机读写能力强,但是叫做吞吐量不如的 HDFS,适合的随机分析,这两个维度之间,能不能在企业当中就是只需要这一种,比如只进行的批处理,或者只进行这种实时的数据分析,适合随机分析处理。在企业当中,基本上是很难说,只要某一种的,更多的场景界限划分的没多强,只是什么需要两个都需要,都是有,既需要吞吐能力,也需要追求的随机读写能力,

image.png

如果要想满足这种需求的话,两者兼得就去搭建一个 HDFS 集群,在搭建一个 HBase 集群,考虑一下两个集群之间数据怎么同步就可以,比如如下图,

image.png

左边是的 HBase,右边是叫做 Impala,其实 Impala,最终的数据还是位于的 HR 当中,就发现这么一个组合工具,就可以满足刚才所提的两种需求,如果想进行数据的实时更新修改,分析,左边的 HBase 相关的接口来操作,使用的相关语法,可以支持快速随机分析访问数据的能力,另外一个想要想要的高吞吐量,这种面向分析的,面向过去的,面向批处理的,可以把数据放在I向上进入的引擎了,或者比较熟悉的数据仓库 hive,也可以满足这种连击分析数据能力,一个复合的组合结构即满足了随机读写,又满足了联机分析的能力,但是有两个集群以后意味着维护的成本很高,是不是得考虑这两个之间数据如何同步,当使用这种组合工具来实现业务需求的时候,就有以下这些缺点出现,第一个架构复杂,就是要维护多套系统,多少成本 HBase 要维护,HDFS 需要维护,而且保证每个集群不能出现单点故障,有带有冗余的,带有副本的是吧,产生高可用的能力,公司的这个硬件成本就要提高了,时效性比较低,因为要想满足于两个都可见的,可能需要做一个数据同步,比如每天或者每天每个小时,或者按照的时间周段周期进行数据的导出,把 Hbase 的数据,导出成一个普通的文本文件,或者是讲义上缩写的叫做 parquet 的文件格式,然后,再给定时以新加分区的方式,加入到 API 当中,然后映射成 Impala 的表来开展分析,这种导入导出没有问题,但是时效性不好保证,这个周期不可能太快,每分钟都进行,Hbase 是承受不了,一天一小时,所以说时效性不高,最大的问题大概是什么,后续难以更新,随着在不断的时候,两个阶段后面回复,试想极端场景,比如刚刚把昨天的 Hbase 当中的数据给导入过来了,但是在导入过来没有映射成功的一瞬间,突然 Hbase 的数据发生的数据修改,其他人也进行修改,但是他修改之后,意味着到下一个周期才能把倒过来。这时候就会产生两个之间数据不同步,可以发现,一旦涉及两个存储系统之后,,维护使用各种方面都带来了各种挑战,成本也好,维护也好,但是企业中又不得不进行这两种场景的需要,不可能舍弃一个,这时候就要去开发一款软件,去解决这种能力。因此发如下图所画的图层中一款新的软件应运而生 Apache Kudu

image.png


二.Kudu 是什么

Kudu 是为了解决需要一种软件,既支持随机读写,又支持批处理,OLAP,联机分析的一种存储引擎,相当于在的HLAS Hbase 当中做了一个折中,比如这个时候如果是架构师,来设计一款的 Kudu 存储软件,肯定不会放左下角,放在这里发现连 HL Hbase 都不如,当然最希望的,是位于这个方向,

image.png

就是说在中间这条线方向是最好的,这样左右两边都可以兼得,如果说能达到这个高度,会发现比 HDFS HBase 都要强,但当下来说,应该是处于这个环节当中,也就是如果在读随机读写能力的比较,可能会比的 HBase 稍微差一点。但是,会比 HDFS 强很多。另外一个,如果从数据的吞入量来看,要比 HBase 强一点,比 HDFS 差一点,所以是一个著名折中软件,所以 Apache Kudu 出来什么的,Kudu 是一个存储引擎,存储引擎就是存储数据的,既支持的随机读写的能力,又支持批处理连接分析的能力,所以是一个新的折中的软件。这个软件出现也可以看出,很多技术,很多软件的出现,都是由业务需求推动的。如果企业当中没有这两种需求的一个整合比如一辈子只需要做传统的,面向过去的批处理分析,可能就想不到 HBase 会怎么发展出来的,所以这从侧面上反应一句话,没有业务的一个需求,只去推动技术,这个技术就显得很尴尬,叫做技术上是空中楼阁。

 

三.    Kudu 的应用场景

以上是一个简单的背景,Apache Kudu 是一个大数据的存储引擎,存储数据,本身是来自于 Cloudera 这家商业公司,这家公司非常有名,知道商业版的哈多 CCDH 就是提供的,包括 Impala 等等很多软件都是,后来贡献给 Apache 软件基金会,成了 Apache 的顶级项目,所以现在叫做 Apache Kudu 这满足两个特点,既提供低延迟的随机读写,又提供了高效的数据吞吐分析能力,融合了 HDFS HBase 还配置两个功能,择其优点,参重置,是两个软件的一个折中体,而且的 Kudu,也支持的水平扩展,类似集群,并且结合其他软件,比如说比较熟悉的 ImpalaApache Spark 等等,可以进行非常方便的大数据查询分析,软件用的比较多,第一个场景公司既需要维护 HBase 集群,又需要维护和杜集区,而且是存储的手段,这时候觉得维护不好,考虑维护一个的 Kudu 继续。适用于些在企业当中既需要随机访问,随机读写的,又需要批处理,扫描数据分析的场景。第二个,就是公司不想进行太多的一个数据的迁移更新,移动,数据放在里的机会不动了,也不想导入导出反复导出或导入,去把数据做一个搬运,数据又需要进行数据的备份,查询等等,这些需求融合起来,Kudu是一个当下最好的选择。

总结:

1Kudu 是什么

1)是一个大数据存储引擎 用于大数据的存储,结合其他软件开展数据分析。

2)汲取了 hdfs 中高吞吐数据的能力和 hbase 中高随机读写数据能力

3)既满足有传统 OLAP 分析 又满足于随机读写访问数据

4kudu 来自于 cloudera 后来贡献给了 apache

这里 Kudu 是一个消息,叫做大数据的存储引擎。存储引擎就是用来存储,用于大数据的存储分析,这是第一个叫做存储引擎,另外一个是存储引擎特点汲取的什么 HDFS HBase 中高吞吐数据的的能力和的HBase中高随机读写数据的能力,是兼容的两个之间的优点,是一种折合体,这叫做既满足于传统的 OLAP 分析,然后,又满足与随机读写返回数据,这是 Kudu 的一个简单的概述,这么几款软件,另外一个一点叫做 kudu 的来源本身来自于的一家商业公司叫做 cloudera,后来贡献给 apache 变成了 apache kudu,讲存储引擎,准确来说的存储能力,要想进行更高大上的数据分析,可以结合其他软件软件开展数据分析,会更加的专业一点,只是一个存储引擎,尽量开展数据的分析,以上是 Apache Kudu 软件的一个简单的介绍。

相关实践学习
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
2月前
|
前端开发
背景
背景
16 4
|
前端开发
前端知识案例学习8-设置渐变背景
前端知识案例学习8-设置渐变背景
54 0
前端知识案例学习8-设置渐变背景
一、RapidIO背景介绍(2)
一、RapidIO背景介绍(2)
121 0
一、RapidIO背景介绍(2)
|
消息中间件 缓存 算法
一、RapidIO背景介绍(1)
一、RapidIO背景介绍(1)
318 0
一、RapidIO背景介绍(1)
|
存储 消息中间件 安全
一、RapidIO背景介绍(3)
一、RapidIO背景介绍(3)
245 0
一、RapidIO背景介绍(3)
|
人工智能 达摩院 物联网
|
数据采集 监控 大数据
项目背景介绍|学习笔记
快速学习项目背景介绍
144 0
|
开发者 微服务
项目背景介绍 | 学习笔记
快速学习 项目背景介绍
89 0
|
大数据 流计算 开发者
环境篇之项目背景介绍|学习笔记
快速学习环境篇之项目背景介绍
102 0
环境篇之项目背景介绍|学习笔记
|
编解码 前端开发 开发者
图像的背景 | 学习笔记
快速学习图像的背景
71 0
图像的背景 | 学习笔记