当前位置:天才代写 > tutorial > 数据库教程 > Druid入门须知

Druid入门须知

2018-05-18 08:00 星期五 所属: 数据库教程 浏览:689

  随着互联网快速发展,数据量增长快,达到TB、PB,以交通车流量为例,如湖南省每月的车辆流量至少达到4亿,这个数据量远不止如此。数据量如此大,如何满足后期分析,传统面向OLTP型数据库(Oracle、MySQL等)无法要求,渐渐开始转向OLAP,如GreenPlum等,虽然很多OLAP数据库吸收分布式计算思想,数据达到20亿以上后,进行Count、聚合等操作性能仍然达不到客户实时分析要求。

  虽然相关大数据框架及组件已经很流行:Hadoop(离线分析)、Spark、storm、Hive、Impala、Hbase等,Hadoop生态系统大庞大,Spark一站式安装部署,但是满足实时分析还需借助其它组件、开发要求很高。

  Druid是一个用于大数据实时查询和分析的高容错、高性能开源分布式系统,旨在快速处理大规模的数据,并能够实现快速查询和分析。尤其是当发生代码部署、机器故障以及其他产品系统遇到宕机等情况时,Druid仍能够保持100%正常运行。创建Druid的最初意图主要是为了解决查询延迟问题,当时试图使用Hadoop来实现交互式查询分析,但是很难满足实时分析的需要。而Druid提供了以交互方式访问数据的能力,并权衡了查询的灵活性和性能而采取了特殊的存储格式。

  一、特征:

  1.为分析而设计——Druid是为OLAP工作流的探索性分析而构建,它支持各种过滤、聚合和查询等类;

  2.快速的交互式查询——Druid的低延迟数据摄取架构允许事件在它们创建后毫秒内可被查询到;

  3.高可用性——Druid的数据在系统更新时依然可用,规模的扩大和缩小都不会造成数据丢失;

  4.可扩展——Druid已实现每天能够处理数十亿事件和TB级数据。

  二、业务场景:

  1.需要交互式聚合和快速探究大量数据时;

  2.需要实时查询分析时;

  3.具有大量数据时,如每天数亿事件的新增、每天数10T数据的增加;

  4.对数据尤其是大数据进行实时分析时;

  5.需要一个高可用、高容错、高性能数据库时。

  Druid被设计成增强的分析应用,重点关注注入数据和查询数据的延时问题

  三、Druid目的:

  之所以需要Druid,是因为现实情况是现有的开源关系型数据库(RDBMS)和NoSQLkey/value数据库没办法为一些交互式应用提供低延迟的数据导入和查询,除了查询响应时间的要求外,该系统还必须是多租户和高可用的。

  秒级的数据导入和查询的要求

  四、Druid节点:

  外部依赖:MySQL、DeepStorage、Zookeeper

  1.realtime数据消费者,定期生成不可变数据

  2.historical加载和处理由实时节点创建的不可变数据

  3.coordinator

  4.broker

  5.overload

Druid入门须知_数据库_Druid_数据库连接池_课课家教育

  同时它还有以下模块:

  1.DruidDriver代理Driver,能够提供基于Filter-Chain模式的插件体系。

  2.SQLParser

  所以Druid可以:

  1、充当数据库连接池

  2、可以监控数据库访问性能

  3、获得SQL执行日志

      简单配置如下:

所以Druid可以:    1、充当数据库连接池。    2、可以监控数据库访问性能    3、获得SQL执行日志        简单配置如下:

  Druid是目前比较流行的高性能的,分布式列存储的OLAP框架(具体来说是MOLAP)。它有如下几个特点:

  1.亚秒级查询

  druid提供了快速的聚合能力以及亚秒级的OLAP查询能力,多租户的设计,是面向用户分析应用的理想方式。

  2.实时数据注入

  druid支持流数据的注入,并提供了数据的事件驱动,保证在实时和离线环境下事件的实效性和统一性

  3.可扩展的PB级存储

  druid集群可以很方便的扩容到PB的数据量,每秒百万级别的数据注入。即便在加大数据规模的情况下,也能保证时其效性

  4.多环境部署

  druid既可以运行在商业的硬件上,也可以运行在云上。它可以从多种数据系统中注入数据,包括hadoop,spark,kafka,storm和samza等

  5.丰富的社区

  druid拥有丰富的社区,供大家学习。

  小编结语:

  更多内容尽在课课家教育~~

 

    关键字:

天才代写-代写联系方式