Druid是一个分布式的支持实时分析的数据存储系统。通俗一点:高性能实时分析 数据库 。它由美国广告技术公司MetaMarkets于2011年创建,并且于2012年 开源 。MetaMarkets是一家专门为在线媒体公司提供数据服务的公司,主营是DSP广告运营推送平台,由于对实时性要求非常高,公司不得不放弃原始的 大数据 方案,Druid也就应运而生。
Druid的官方网站地址是:http://druid.io/
目前Druid已基于Apache License 2.0协议开源,正在由Apache孵化,代码托管于Github。
最新官网地址为:
https://druid.apache.org/
Druid主要解决的问题就是传统数据库无法解决的大数据量查询性能的问题。
所以她的本质就是一个分布式支持实时数据分析的数据存储系统。
能够快速的实现查询与数据分析,高可用,高扩展能力。
特性
1.快速查询:druid提供了快速的聚合能力以及快速OLAP查询能力,多租户的设计,是面向用户分析应用的理想方式。druid的数据聚合粒度可以是1分钟,5分钟,1小时或者1天等。数据的内存化提高了druid的查询速度。
OLAP:与之相对的是OLTP,这里通过一个在线商城举例,比如在一个在线商城中两者都是做什么呢?
OLTP就是商品浏览,交易,用户数据。必须支持事务,频繁查询修改。OLTP(联机事务处理),传统数据库的主要应用,面向最基本的CRUD操作,特点是实时性高,数据量小,可以修改删除数据,要求有严格的事务。
OLAP就是对商城数据进行分析,数据量大。OLAP(联机分析处理),支持复杂的分析操作,对决策的支持,特点是数据量大,吞吐量大,只支持查询。
2.实时数据注入:druid支持流数据的注入,并提供了数据的事件驱动,保证在实时和离线环境下事件的实效性和统一性。历史数据不改变,实时数据实时接入。
3.可扩展的PB级存储:druid集群可以很方便的扩容到PB的数据量,每秒百万级别的数据注入。即便在加大数据规模的情况下,也能保证时其效性。druid可以按照时间范围把聚合数据进行分区处理。
4.多环境部署:druid既可以运行在商业的硬件上,也可以运行在云上。它可以从多种数据系统中注入数据,包括hadoop,spark,kafka,storm和samza等。
5.丰富的社区:druid拥有丰富的社区,供大家学习。
Metamarkets之前几个druid开发者成立了一家叫做imply.io的新公司:https://imply.io/