druid.io 海量实时OLAP数据仓库 (翻译+总结) (1)——分析框架如hive或者redshift(MPPDB)、ES等
介绍
我是NDPmedia公司的大数据OLAP的资深高级工程师, 专注于OLAP领域, 现将一个成熟的可靠的高性能的海量实时OLAP数据仓库介绍给大家: druid.io
NDPmedia在2014年3月就开始使用, 见链接: http://blog.csdn.net/chenyi8888/article/details/37594771
druid是个很新的平台, 2013年底才开源出来, 虽然出现的比较晚, 但druid发展很快, 中国有几个公司开始使用, 2015年druid将会是爆发的一年
最近druid 的华人作者Fangjin从Metamarkets离职, 专门从事druid研发和推广.
以下翻译自http://druid.io/docs/0.7.1.1/, 并添加了自己的注解
什么是Druid
Druid 是一个开源的,能在海量时序数据上 (万亿级别数据量, 1000 TB级别数据)上面提供实时分析查询的OLAP数据仓库,Druid提供了廉价的实时数据插入和任意数据探索的能力。
Druid的主要功能
为分析而生 - Druid是为了解决在OLAP工作流中进行探索分析而生的. 它提供了大量的filters, aggregators和
query 类型,并且提供了一个用户添加新功能的框架. 用户可以利用Druid的集群实现例如topN和直方图等功能。
(注: 传统数据库, 查询几千万的数据, 就会出问题, 查不出来)
(注: druid就是一个能力超强的数据库, 执行例如SQL: select aColumn, bColumn sum(cColumn)
from tableName where aColumn like 'xxx' and bColumn = 5 group by
aColumn, bColumn having sum(cColumn) > 5 order by aColumn.)
(注: druid对SQL支持有限,现在是实验版本。YeahMobi 重新开发适配了SQL, 屏蔽了下层平台, SQL 语句可以路由到这三个平台 druid, impala, hive)
高交互式 - Druid的低延时数据插入允许数据在生成之后的毫秒范围之内就可以被用户查询到。Druid通过读取和扫描需要的数据来优化查询的延时。
高可用性 - Druid可以被用来实现需要持续提供服务的SaaS应用。即使是在系统升级的过程中,你的数据仍然可以被查询。而且Druid 集群的扩容或者缩减不会带来数据的丢失。
(注: 已经在生产环境之中验证: 添加字段, 集群扩容, 集群缩减)
可扩展性 - 现有的Druid系统可以很轻松的处理每天数十亿条记录和TB级别的数据。Druid本身是被设计来解决PB级别数据的。
为什么要用Druid?
Druid的初衷是为了解决在使用Hadoop进行查询时所遇见的高延时问题来提高交互性查询。尤其是当你对数据进行汇总之后并在你汇总之后的数据
上面进行查询时效果更好。将你汇总之后的数据插入Druid,随着你的数据量在不断增长,你仍然可以对Druid的查询能力非常有信心。当前的Druid
安装实例已经可以很好的处理以每小时数TB实时递增的数据量。
(注: 在我们的实践中 druid 查询统计100亿数据, 在5秒内响应。 查询1个月的数据, 基本可以在毫秒内完成。 比hadoop的常用的T+1 Map Reduce 高效多了.
你可以在拥有Hadoop的同时创建一个Druid系统。Druid提供了以一种互动式切片、切块方式来访问数据的能力,它在查询的灵活性和存储格式直接寻找平衡从而来提供更好的查询速度。
如果想了解更多细节,请参考 White Paper 和Design 文档.
什么情况下需要Druid?
当你需要在大数据集上面进行快速的,交互式的查询时
当你需要进行特殊的数据分析,而不只是简单的键值对存储时
当你拥有大量的数据时 (每天新增数百亿的记录、每天新增数十TB的数据)
当你想要分析实时产生的数据时
当你需要一个24x7x365无时无刻不可用的数据存储时
架构概述
druid在一定程度上是受搜索框架的启发, 通过建立不变数据视图和使用便于filter和aggregation的高度优化的格式来提高性能. Druid 集群有一系列不同类型的节点组成, 每种节点将一小部分事情做到极致。
Druid vs…
Druid-vs-Impala-or-Shark
Druid-vs-Redshift
Druid-vs-Vertica
Druid-vs-Cassandra
Druid-vs-Hadoop
Druid-vs-Spark
Druid-vs-Elasticsearch
数据框架世界一直在巨大的混乱的变化之中, 这个网页希望帮助潜在的用户评估和确定druid适合用户解决遇到的问题。 如果有错误请通过邮件列表或者其他渠道反馈.
转自:http://www.cnblogs.com/lpthread/p/4519687.html
druid.io 海量实时OLAP数据仓库 (翻译+总结) (1)——分析框架如hive或者redshift(MPPDB)、ES等的更多相关文章
- druid.io 海量实时OLAP数据仓库 (翻译+总结) (1)
介绍 我是NDPmedia公司的大数据OLAP的资深高级工程师, 专注于OLAP领域, 现将一个成熟的可靠的高性能的海量实时OLAP数据仓库介绍给大家: druid.io NDPmedia在2014年 ...
- 唯品会海量实时OLAP分析技术升级之路
本文转载自公众号 DBAplus社群 , 作者:谢麟炯 谢麟炯,唯品会大数据平台高级技术架构经理,主要负责大数据自助多维分析平台,离线数据开发平台及分析引擎团队的开发和管理工作,加入唯品会以来还曾负责 ...
- 实时OLAP分析利器Druid介绍
文章目录 前言 Druid介绍 主要特性 基础概念 数据格式 数据摄入 数据存储 数据查询 查询类型 架构 运维 OLAP方案对比 使用场景 使用建议 参考 近期主题 前言 项目早期.数据(报表分析) ...
- Druid.io系列(一):简介
原文链接: https://blog.csdn.net/njpjsoftdev/article/details/52955676 Druid.io(以下简称Druid)是面向海量数据的.用于实时查询与 ...
- 腾讯云EMR大数据实时OLAP分析案例解析
OLAP(On-Line Analytical Processing),是数据仓库系统的主要应用形式,帮助分析人员多角度分析数据,挖掘数据价值.本文基于QQ音乐海量大数据实时分析场景,通过QQ音乐与腾 ...
- ElasticSearch做实时OLAP框架~实时搜索、统计和OLAP需求,甚至可以作为NOSQL来使用(转)
使用ElasticSearch作为大数据平台的实时OLAP框架 – lxw的大数据田地 http://lxw1234.com/archives/2015/12/588.htm 一直想找一个用于大数据平 ...
- Druid.io系列(九):数据摄入
1. 概述 Druid的数据摄入主要包括两大类: 1. 实时输入摄入:包括Pull,Push两种 - Pull:需要启动一个RealtimeNode节点,通过不同的Firehose摄取不同种类的数据源 ...
- Node+Express+MongoDB + Socket.io搭建实时聊天应用
Node+Express+MongoDB + Socket.io搭建实时聊天应用 前言 本来开始写博客的时候只是想写一下关于MongoDB的使用总结的,后来觉得还不如干脆写一个node项目实战教程实战 ...
- 基于socket.io的实时在线选座系统
基于socket.io的实时在线选座系统(demo) 前言 前段时间公司做一个关于剧院的项目,遇到了这样一种情况. 在高并发多用户同时选座的情况下,假设A用户进入选座页面,正在选择座位,此时还没有提交 ...
随机推荐
- python--文件处理1
1. 读取文件 方法: all_the_text = open('thefile.txt').read() 但是为了安全起见还是给打开的文件对象指定一个名字,这样在完成之后可以迅速关掉,防止无 ...
- js和jquery 实现网站来消息网站标题闪动提示
js版 <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"&g ...
- openfire Android学习(六)----总结
Xmpp的一些方法整理到一个工具类中了 XmppConnection.java [java] view plaincopy [java] view plaincopy import java.io.B ...
- mysql 安装配置及经常使用操作
作为关系型数据库的一种,mysql因其占用内存小和开源等特性而兴起.以下简介下关于mysql配置和简单的操作. mysql配置 1.安装文件的下载 免安装版下载地址 :http://dev.mysql ...
- python 依照list中的dic的某key排序
面试题之中的一个. s=[ {"name":"Axx","score":"90"}, {"name" ...
- PS 如何使用钢笔工具
1.钢笔工具属于矢量绘图工具,其优点是可以勾画平滑的曲线,在缩放或者变形之后仍能保持平滑效果. 2.钢笔工具画出来的矢量图形称为路径,路径是矢量的路径允许是不封闭的开放状,如果把起点与终点重合绘制就可 ...
- 千呼万唤始出来:ArchLinux for Espressobin
前言 原创文章,转载引用务必注明链接,水平有限,如有疏漏,欢迎指正. 本文使用Markdown写成,为获得更好的阅读体验和正常的链接.图片显示,请访问我的博客原文: http://www.cnblog ...
- react 自定义 百度地图(BMap)组件
1.html 页面引入 相关js public/index.html <!DOCTYPE html> <html lang="en"> <head&g ...
- NoSQL数据库-MongoDB和Redis
http://blog.csdn.net/tea_wu/article/details/19050277 http://www.uml.org.cn/sjjm/201212205.asp
- 如何获得(读取)web.xml配置文件的參数
參考代码例如以下: com.atguigu.struts2.app.converters.DateConverter.java public DateFormat getDateFormat(){ i ...