Apache Druid(一)简介
翻译自 Apache Druid
Apache Druid(正在孵化)是一个开源的分布式数据存储。德鲁伊的核心设计结合了OLAP /分析数据库,时间序列数据库和搜索系统的思想,为广泛的用例创建了一个统一的系统。Druid将这三个系统中的每个系统的关键特征合并到其接收层,存储格式,查询层和核心体系结构中。
德鲁伊的主要功能包括:
列式存储
Druid分别存储和压缩每一列,并且只需要读取特定查询所需的内容即可,这支持快速扫描,排名和groupBys。
本机搜索索引
Druid为字符串值创建倒排索引,以便快速搜索和过滤。
流式处理和批量摄取
适用于Apache Kafka,HDFS,AWS S3,流处理器等的现成连接器。
灵活的架构
德鲁伊优雅地处理不断发展的模式和嵌套数据。
时间优化的分区
Druid基于时间对数据进行智能分区,并且基于时间的查询比传统数据库要快得多。
SQL支持
除了基于本机JSON的本地语言外,Druid还通过HTTP或JDBC 讲SQL。
横向可扩展性
Druid已用于生产中,每秒接收数百万个事件,保留多年的数据并提供亚秒级的查询。
操作简便
只需添加或删除服务器即可扩大或缩小规模,而Druid会自动重新平衡。容错架构围绕服务器故障进行路由。
积分
Druid是Apache软件基金会中许多开源数据技术的补充,包括Apache Kafka,Apache Hadoop,Apache Flink等。
德鲁伊通常位于存储或处理层与最终用户之间,并充当查询层以服务于分析工作负载。
摄取
德鲁伊支持流式传输和批量摄取。Druid连接到原始数据源,通常是消息总线,例如Apache Kafka(用于流数据加载),或分布式文件系统,例如HDFS(用于批处理数据加载)。
在调用“索引”的过程中,Druid将存储在源中的原始数据转换为更具读取优化的格式(称为Druid“段”)。
有关更多信息,请访问我们的文档页面。
存储
像许多分析数据存储一样,Druid将数据存储在列中。根据列的类型(字符串,数字等),将应用不同的压缩和编码方法。Druid还根据列类型构建不同类型的索引。
与搜索系统类似,Druid为字符串列构建反向索引,以进行快速搜索和过滤。与时间序列数据库类似,Druid可按时间对数据进行智能分区,以实现快速的面向时间的查询。
与许多传统系统不同,Druid可以选择在提取数据时对其进行预聚合。此预聚合步骤称为汇总,可以节省大量存储空间。
有关更多信息,请访问我们的文档页面。
查询方式
Druid支持通过JSON-over-HTTP和SQL查询数据。除标准SQL运算符外,Druid还支持独特的运算符,这些运算符利用其近似算法套件来提供快速计数,排名和分位数。
有关更多信息,请访问我们的文档页面。
架构
德鲁伊具有基于微服务的架构,可以认为是一个反汇编的数据库。Druid中的每个核心服务(摄取,查询和协调)都可以单独或联合部署在商用硬件上。
Druid明确命名了每个主要服务,以使操作员可以根据用例和工作量对每个服务进行微调。例如,如果工作负载需要,操作员可以将更多资源分配给Druid的提取服务,而将更少的资源分配给Druid的查询服务。
德鲁伊服务可以独立发生故障,而不会影响其他服务的运行。
有关更多信息,请访问我们的文档页面。
运作方式
德鲁伊旨在为需要每周7天,每天24小时不间断运行的应用程序供电。因此,德鲁伊具有多种功能来确保正常运行时间且不会丢失数据。
资料复制
Druid中的所有数据都被复制了可配置的次数,因此单个服务器故障对查询没有影响。
独立服务
Druid明确命名了其所有主要服务,并且每个服务都可以根据用例进行微调。服务可以独立发生故障,而不会影响其他服务。例如,如果提取服务失败,则系统中不会加载任何新数据,但是现有数据仍可查询。
自动数据备份
Druid自动将所有索引数据备份到文件系统(例如HDFS)。您可能会丢失整个Druid群集,并从此备份数据中快速还原它。
滚动更新
您可以通过滚动更新来更新Druid群集,而不会造成停机时间,也不会影响最终用户。所有Druid版本都向后兼容先前的版本。
Apache Druid(一)简介相关推荐
- centos7 搭建apache druid
Apache Druid简介 Apache Druid是一个实时分析型数据库,旨在对大型数据集进行快速的查询分析("OLAP"查询).Druid最常被当做数据库来用以支持实时摄取. ...
- Apache Druid远程代码执行漏洞(CVE-2021-25646)
Apache Druid远程代码执行漏洞(CVE-2021-25646) 0x01 漏洞简介 Apache Druid 是用 Java 编写的面向列的开源分布式数据存储, 通常用于商业智能/ OLAP ...
- BigData之Storm:Apache Storm的简介、深入理解、下载、案例应用之详细攻略
BigData之Storm:Apache Storm的简介.深入理解.下载.案例应用之详细攻略 目录 Apache Storm的简介 Apache Storm的深入理解 1.Storm与hadoop ...
- Apache Druid Console 远程命令执行漏洞
一.漏洞概述 Apache Druid 是用Java编写的面向列的开源分布式数据存储,旨在快速获取大量事件数据,并在数据之上提供低延迟查询. Apache Druid 默认情况下缺乏授权认证,攻击者可 ...
- apache druid 与kafka整合使用
前言 在上一篇,我们了解了apache druid的搭建,以及如何快速导入外部数据源到apache druid中进行数据分析和使用 本篇,我们结合一个实际的简单的应用场景,来说说apache drui ...
- Apache—DBUtils框架简介
Apache-DBUtils框架简介.DbUtils类.QueryRunner类 .ResultSetHandler接口 commons-dbutils 是 Apache 组织提供的一个开源 JDBC ...
- Apache Druid安装部署手册
一 Apache Druid架构 1. Coordinator 监控Historical处理,负责分配segments到指定的服务,确保存在HIstorical中是自平衡的 2. Overlord 监 ...
- 【Druid】(四)Apache Druid 部署和配置(单机版 / Docker 容器版 / Kubernetes 集群版)
文章目录 一.Apache Druid 部署 1.1 单机版 1.1.1 Jar 包下载 1.1.2 Druid 的安装部署 1.2 Docker 容器版 1.2.1 下载 1.2.2 配置 Dock ...
- 【Druid】(八)Apache Druid 核心插件 Kafka Indexing Service SLS Indexing Service
文章目录 一.前言 二.与 Kafka 集群交互 三.使用 Apache Druid Kafka Indexing Service 实时消费 Kafka 数据 四.关于 SLS Indexing Se ...
最新文章
- 简单的短信验证功能的实现
- mac 安装swoole
- java 控制台刷屏 dll_控制台被警告刷屏 · Issue #IXD8V · 卓源软件/JeeSite 4.2 - Gitee.com...
- 剑指offer55 字符流中第一个不重复的字符(最典型错误)
- 程序员必知的8大排序(三)-------冒泡排序,快速排序(java实现) .
- 如何使用ABAP把数字转换成单词
- 骗人的数学题,那消失的1块钱到底被谁拿走了
- JavaSE基础——Java多线程(2)
- Android端直播系统开发入门
- 努力无用论?我不信。。。
- 用WORD批量制作工作证件
- 【论文学习】基于区块链的档案数据保护和共享方法
- 【树莓派】基于树莓派,实现无线路由功能
- 头插法和尾插法总结(动图版)
- 基于公开网站挖掘敏感信息的研究与分析- Fofa 搜索
- CMOS图像传感器——Remosaic技术
- Best Free Web Applications
- soul网关mysql8_深度解析 Soul 网关——数据同步
- 盛志凡:TVOS技术解读
- 【C++11新特性】 nullptr关键字
热门文章
- golang 切片 接口_Golang语言常用关键字之 make 和 new
- acwing2041. 干草堆(差分数组)
- acwing2058. 笨拙的手指(进制转换)
- 机器学习之超参数调优——超参数调优的方法
- leetcode700. 二叉搜索树中的搜索
- [RabbitMQ]整合SpringBoot
- C++string容器-子串获取
- safari浏览器的使用tips
- php 如何生成二级目录json,使用PHP根据已解码的JSON创建文件夹/文件结构
- python import 问题