sqlserver 5分钟内_5分钟内的Apache Kudu

db2e4f768d5681ea763da5e3cc9a1ae0.png

Apache Kudu是一种数据存储技术,可以对快速数据进行快速分析。 Cloudera启动了该项目,但它是完全开源的。 Kudu提供快速插入和更新功能以及快速搜索功能,以加快分析速度。 它位于带有Parquet的HBase和Impala之间,试图消除快速扫描和快速随机访问之间的折衷。

b52c13b265705df094d0ef30ebeb5fda.png

图片来自Cloudera

有趣的是,使Kudu脱颖而出的是它的熟悉程度。

像传统的关系数据库模型一样,Kudu需要在表上使用主键。 表具有列和原始数据类型,并支持更新。 如果要将关系数据库迁移到Hadoop集群,维护更新/删除可能是一个挑战。 这是由于"数据库"工具直接位于HDFS之上。 由于HDFS是一次写入的架构,因此更新行可能会很困难,因为您必须通过重写基础数据来复制此功能。

那么它是怎样工作的?

它不使用HDFS。 但是,它可以与HDFS在同一群集上共存。 您可以在Kudu常见问题解答页面上找到做出此设计决定的多种原因。

每个表必须具有一个唯一的主键。 这充当索引,以允许快速访问更新和删除。 表由平板电脑组成,就像分区一样。 平板电脑可跨多个节点复制,以实现弹性。 数据以列形式存储。 这意味着由于每个列中的所有数据都按顺序存储,因此列式聚合更快。 这也意味着可以更轻松地对数据进行矢量化和压缩,因为每列的所有数据都是同一类型。

6c2738de182d597f0236724e173c05eb.png

图片来自kudu.apache.org

尽管Kudu位于HDFS之外,但它仍然是Hadoop集群上的"好公民"。 它可以与HDFS节点共享数据磁盘,并且占用的内存很少。 它还允许您透明地将Kudu表与Hadoop中其他位置(包括HBase表)存储的数据连接在一起。

如何使用?

表是自我描述的,这意味着像Impala这样的SQL引擎可以很容易地与Kudu表一起使用。 Spark还可以用于分析数据,并且还有Java和C ++ API。 尝试Kudu的最简单方法是使用Quickstart VM。 这显示了如何使用Impala创建Kudu表以及如何将现有Impala表中的数据移植到Kudu表中。 使用Impala_Kudu应用程序(可以与默认的Impala安装一起安装),您可以执行标准的Impala查询,还可以发出更新命令。

如果您正在考虑将数据仓库迁移到Hadoop中,而又不想重新设计架构以适应NoSQL运动的麻烦,那么Kudu可能是适合您的工具。 不过,不要太草率,因为它仍处于测试阶段,但对未来来说前景广阔。

摘要

Kudu专为在批量访问和随机访问读/写方案中提高速度而设计。 它与标准SQL引擎兼容,因此易于采用,并且与Hadoop生态系统的其余部分兼容。

请记住,Kudu不应取代HDFS或HBase,它们都有各自独特的用例。 与往常一样,为正确的工作选择正确的工具很重要。 我希望这5分钟的概述能激发您的兴趣,至少像我一样尝试Kudu。

(本文翻译自Lewis Gavin的文章《Apache Kudu in 5 Minutes》,参考:https://medium.com/@lewisdgavin/apache-kudu-in-5-minutes-91e9371a4f8f)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值