美文网首页
Druid简介

Druid简介

作者: 似水之星 | 来源:发表于2020-03-02 02:01 被阅读0次

    Apache Druid是开源的分布式存储,核心设计吸取了数据仓库、时序数据、搜索系统思想,在实时分析体系里面创造了广泛的用户实例。Druid把3个系统的核心优势融入了数据抽取层,存储格式、查询层、核心架构。

    特征
    Druid的核心优势:
    • 列存储
      Druid每一列单独存储和压缩,因此当查询时只需要读取需要的列来支持快速扫描查询、排序、聚合。
    • 原生的搜索索引
      Druid通过为字符串值创建倒排索引来实现快速的搜索和过滤。
    • 流数据和批数摄取
      对kafka、HDFS、AWS S3,流处理器等连接器开箱即用。
    • 灵活的模式
      Druid优雅的处理演进的模式和嵌套结构的数据。
    • 基于时间优化的分区
      Druid基于时间对数据智能分区,因此基于时间的查询速度比传统的数据极大的提高。
    • 支持SQL
      在jdbc和http上支持原生的json语言和Druid SQL。
    • 横向扩展
      Druid在生产环境支持了每秒摄取100万信息,存储几年的数据,提供压秒级查询。
    • 维护简单
      增加和移除服务器来上线和下线服务,Druid会自动调整。容错的架构容许服务器宕机。

    用户实例

    • 实时分析和智能
    • 用户活动和行为
    • 网络流
    • 应用程序性能监控
    • IOT设备指标监控
    • OLAP和商业智能

    适合Druid做数据库适用场景:

    • 数据插入多,更新少。
    • 查询数据中大部分是聚合和报表查询,也有搜索和扫描数据。
    • 查询在100ms到几秒钟
    • 数据中有时间(Druid对时间进行了优化和特别的设计)。
    • 每次查询都是在一张大表中的选择部分字段。(不支持join)。
    • 有高基数列(e.g. URLs, user IDs),在此列可以快速的计数和排序。
    • 从Kafka、HDFS、文件系统、Amazon S3摄取数据。

    不适合Druid的场景

    • 低延迟更新主键记录。Druid支持流数据,但是不支持流数据更新。(流数据更新可以在后台批量更新)
    • 离线报表系统,你对数据延迟关注度不大。
    • 需要做大的join(实时表之间相互连接),查询需要很长时间完成。

    翻译:
    https://druid.apache.org/technology
    https://druid.apache.org/docs/latest/design/

    相关文章

      网友评论

          本文标题:Druid简介

          本文链接:https://www.haomeiwen.com/subject/cijhkhtx.html