kudu 介绍
kudu的好处:
快速的olap
列式存储,Hadoop parquet 的一种替代方案
对数据的顺序处理和随机处理都很高效
* High availability. Tablet Servers and Masters use the Raft Consensus Algorithm, which ensures that as long as more than half the total number of replicas is available, the tablet is available for reads and writes. For instance, if 2 out of 3 replicas or 3 out of 5 replicas are available, the tablet is available.
* Reads can be serviced by read-only follower tablets, even in the event of a leader tablet failure.
kudu使用的场景:
Reporting applications where newly-arrived data needs to be immediately available for end users 刚到的数据需要需要马上呈现给用户
Time-series applications that must simultaneously support:
queries across large amounts of historic data 历史数据的快速查询
granular queries about an individual entity that must return very quickly 快速返回单个实体粒度查询
Applications that use predictive models to make real-time decisions with periodic refreshes of the predictive model based on all historic data使用预测模型进行实时决策的应用程序,基于所有历史数据定期刷新预测
kudu-impala 有哪些特性:
CREATE/ALTER/DROP TABLE
-
Impala supports creating, altering, and dropping tables using Kudu as the persistence layer. The tables follow the same internal / external approach as other tables in Impala, allowing for flexible data ingestion and querying.
INSERT
-
Data can be inserted into Kudu tables in Impala using the same syntax as any other Impala table like those using HDFS or HBase for persistence.
UPDATE
/DELETE
-
Impala supports the
UPDATE
andDELETE
SQL commands to modify existing data in a Kudu table row-by-row or as a batch. The syntax of the SQL commands is chosen to be as compatible as possible with existing standards. In addition to simpleDELETE
orUPDATE
commands, you can specify complex joins with aFROM
clause in a subquery.
- Flexible Partitioning 采用hash 或 range 的分区
-
Similar to partitioning of tables in Hive, Kudu allows you to dynamically pre-split tables by hash or range into a predefined number of tablets, in order to distribute writes and queries evenly across your cluster. You can partition by any number of primary key columns, by any number of hashes, and an optional list of split rows. See Schema Design.
- Parallel Scan 并发对多个tablet 进行扫描
-
To achieve the highest possible performance on modern hardware, the Kudu client used by Impala parallelizes scans across multiple tablets.
- High-efficiency queries
-
Where possible, Impala pushes down predicate evaluation to Kudu, so that predicates are evaluated as close as possible to the data. Query performance is comparable to Parquet in many workloads.
概念和术语:
- 列式数据存储
- 读取效率快,只读一列或部分列
- 数据压缩:一列的数据类型统一,便于亚索
- Tablet:类似其他数据库的分区,一个给定的tablet 会被备份在多台tablet server中,有一个备份会被选为leader tablet,
- tablet server:一个tablet server 可以服务多个tablet,一个tablet 也可以被多个server服务,服务于一个tablet的多个server 只有一个时leader,其他为foller,leader 负责读和写,foller 只负责读
- master:master 服务器跟踪所有tablet,tablet server ,目录表以及与群集相关的其他元数据。master 只有一个,master disappears 之后 再选举一个
- catlog table:存储了两类信息,1)table 的shcemas ,location,states 。2)现存talbets 的列表,每个tablet 被哪几个server 服务,tablet 的状态,开始key,结束key
查看kudu ui:
access the Master or Tablet Server web UI by opening http://<_host_name_>:8051/
for masters or http://<_host_name_>:8050/
for tablet servers.
impala shell 连接 kudu:
Start Impala Shell using the impala-shell
command. By default, impala-shell
attempts to connect to the Impala daemon on localhost
on port 21000. To connect to a different host,, use the -i <host:port>
option. To automatically connect to a specific Impala database, use the -d <database>
option. For instance, if all your Kudu tables are in Impala in the database impala_kudu
, use -d impala_kudu
to use this database.
sadfasdf
sadfasdf
sadfasdf
sadfasdf
kudu 介绍的更多相关文章
- kudu介绍及安装配置
kudu介绍及安装配置 介绍 Kudu 是一个针对 Apache Hadoop 平台而开发的列式存储管理器.Kudu 共享 Hadoop 生态系统应用的常见技术特性: 它在 commodity har ...
- hadoop生态圈列式存储系统--kudu介绍及安装配置
介绍 Kudu 是一个针对 Apache Hadoop 平台而开发的列式存储管理器.Kudu 共享 Hadoop 生态系统应用的常见技术特性: 它在 commodity hardware(商品硬件)上 ...
- Kudu+Impala介绍
Kudu+Impala介绍 概述 Kudu和Impala均是Cloudera贡献给Apache基金会的顶级项目.Kudu作为底层存储,在支持高并发低延迟kv查询的同时,还保持良好的Scan性能,该特性 ...
- kudu基础入门
1.kudu介绍 1.1 背景介绍 在KUDU之前,大数据主要以两种方式存储: (1)静态数据: 以 HDFS 引擎作为存储引擎,适用于高吞吐量的离线大数据分析场景.这类存储的局限性是数据无法进行随机 ...
- Update(Stage5):Kudu入门_项目介绍_ CDH搭建
Kudu 导读 什么是 Kudu 操作 Kudu 如何设计 Kudu 的表 Table of Contents 1. 什么是 Kudu 1.1. Kudu 的应用场景 1.2. Kudu 和其它存储工 ...
- hadoop生态圈列式存储系统--kudu
介绍 Kudu 是一个针对 Apache Hadoop 平台而开发的列式存储管理器.Kudu 共享 Hadoop 生态系统应用的常见技术特性: 它在 commodity hardware(商品硬件)上 ...
- Kudu vs HBase
本文由 网易云发布. 背景 Cloudera在2016年发布了新型的分布式存储系统--kudu,kudu目前也是apache下面的开源项目.Hadoop生态圈中的技术繁多,HDFS作为底层数据存储的 ...
- Kettle系列:使用Kudu API插入数据到Kudu中
本文详细介绍了在Kettle中使用 Kudu API将数据写入Kudu中, 从本文可以学习到:1. 如何编写一个简单的 Kettle 的 Used defined Java class.2. 如何读取 ...
- Kudu系列: Kudu主键选择策略
每个Kudu 表必须设置Pimary Key(unique), 另外Kudu表不能设置secondary index, 经过实际性能测试, 本文给出了选择Kudu主键的几个策略, 测试结果纠正了我之前 ...
随机推荐
- SQL Date 时间类型处理
SQL 日期(Dates) 2019-10-17 22:17:26 当我们处理日期时,最难的任务恐怕是确保插入的日期的格式,与数据库中日期列的格式相匹配. 保存的如果是日期部分,查询不会有太大问题 ...
- Centos7 日志查看工具
1 概述 日志管理工具journalctl是centos7上专有的日志管理工具,该工具是从message这个文件里读取信息.Systemd统一管理所有Unit的启动日志.带来的好处就是,可以 ...
- Redis之缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级
目录 Redis之缓存雪崩.缓存穿透.缓存预热.缓存更新.缓存降级 1.缓存雪崩 2.缓存穿透 3.缓存预热 4.缓存更新 5.缓存降级 Redis之缓存雪崩.缓存穿透.缓存预热.缓存更新.缓存降级 ...
- 如何构思你的iOS App应用
转自:http://mobile.51cto.com/hot-311134.htm 在twitter上,听到不少人问,我也有App 在App Store上面卖,为什么我的App卖得这么少啊?于是我就上 ...
- Vue递归组件实现层层嵌套显示数据
问题来自朋友...记录一下 需求是表格头部后端返回的数据中是不确定的 n维数据,表头存在于 listVo 字段中,如何实现层层显示呢? 温馨提示,以下内容为5张大图,请打开 WIFI 享用... 以下 ...
- Kaldi语音识别快速入门
一.简介 Kaldi是使用C++编写的语音识别工具包,Apache License v2.0许可.主要供语音识别研究人员使用.Kaldi的目标和范围与HTK类似.目标是拥有易于修改和扩展的现代而灵活的 ...
- jquery实现一些小动画一
jquery实现小动画 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- 团队第五次作业:alpha2成绩汇总
一.作业题目 团队第五次作业:alpha2发布 二.作业评分标准 博客评分规则(总分100)博客要求 给出开头和团队成员列表(10') 给出发布地址以及安装手册(20') 给出测试报告(40') 给出 ...
- linux增加swap空间的方法小结
起因及背景 近期编译AOSP(android 10.0)是总是遇到内存溢出,查了半天,无果.猜测增加下swap空间大小是否能解决,随即尝试下,果然是如此. 当然,还有其他作法,比如直接增加主机的内存( ...
- scikit-leanr 库中的 make_blobs() 函数
sklearn.datasets.make_blobs() 是用于创建多类单标签数据集的函数,它为每个类分配一个或多个正态分布的点集. sklearn.datasets.make_blobs( n_s ...