Druid实时大数据分析原理与实践
2020-04-21 09:59:00 0 举报
AI智能生成
Druid实时大数据分析原理与实践
作者其他创作
大纲/内容
8 核心源代码探析
8.1 如何编译Druid代码
8.2 Druid项目介绍
8.3 索引结构模块和层次关系
8.4 Column结构
8.5 Segment
8.6 Query模块
8.6.1 基础组件
8.6.2 内存池管理
8.6.3 查询流程概览
8.6.4 查询引擎
8.7 Coordinator模块
8.8 小结
9 监控和安全
9.1 Druid监控
9.1.1 Druid监控指标
9.1.2 常用的监控方法
9.2 Druid告警
9.2.1 Druid告警信息
9.2.2 Druid与告警系统的集成
9.3 Druid安全
9.3.1 Druid与利用Kerberos加强安全认证的系统集成
9.3.2 集成外部权限模块完成用户授权
9.4 小结
10 实践和应用
10.1 小米
10.1.1 场景一:小米统计服务
10.1.2 场景二:广告平台实时数据分析
10.2 优酷土豆
10.2.1 需求分析
10.2.2 技术选型及工程实践
10.2.3 优化策略
10.3 腾讯
10.3.1 工程实践
10.3.2 业务实践
10.4 蓝海讯通
10.5 小结
11 Druid生态与展望
11.1 Druid生态系统
11.2 Druid生态系统资源
11.2.1 IAP
11.2.2 Plywood
11.2.3 PlyQL
11.2.4 Pivot
11.2.5 Druid-Metrics-Kafk
11.2.6 Caravel(Airbnb)
11.3 Druid的社区讨论组
11.4 Druid展望
参考资料
附录A 常见问题(FAQ)
A.1 写入
A.2 查询
A.3 管理
A.4 应用
附录B 常用参数表
B.1 扩展
B.2 Zookeeper
B.3 Metric
B.4 Coordinator Node(协调节点)
B.5 查询相关
B.6 Historical Node(历史节点)
B.7 Overlord配置
B.8 Middle Manager配置
B.9 Peon配置
1 初识Druid
1.1 Druid是什么
1.2 大数据分析和Druid
1.3 Druid的产生
1.3.1 MetaMarkets简介
1.3.2 失败总结
1.4 Druid的三个设计原则
1.4.1 快速查询(Fast Query)
1.4.2 水平扩展能力(Horizontal Scalability)
1.4.3 实时分析(Realtime Analytics)
1.5 Druid的技术特点
1.5.1 数据吞吐量大
1.5.2 支持流式数据摄入
1.5.3 查询灵活且快
1.5.4 社区支持力度大
1.6 Druid的HelloWorld
1.6.1 Druid的部署环境
1.6.2 Druid的基本概念
1.7 系统的扩展性
1.8 性能指标
1.9 Druid的应用场景
1.9.1 国内公司
1.9.2 国外公司
1.10 小结
参考资料
2 数据分析及相关软件
2.1 数据分析及相关概念
2.2 数据分析软件的发展
2.3 数据分析软件的分类
2.3.1 商业软件
2.3.2 时序数据库
2.3.3 开源分布式计算平台
2.3.4 开源分析数据库
2.3.5 SQL on Hadoop/Spark
2.3.6 数据分析云服务
2.4 小结
参考资料
3 架构详解
3.1 Druid架构概览
3.2 Druid架构设计思想
3.2.1 索引对树结构的选择
3.2.2 Druid总体架构
3.2.3 基于DataSource与Segment的数据结构
3.3 扩展系统
3.3.1 主要的扩展
3.3.2 下载与加载扩展
3.4 实时节点
3.4.1 Segment数据文件的制造与传播
3.4.2 高可用性与可扩展性
3.5 历史节点
3.5.1 内存为王的查询之道
3.5.2 层的分组功能
3.5.3 高可用性与可扩展性
3.6 查询节点
3.6.1 查询中枢点
3.6.2 缓存的使用
3.6.3 高可用性
3.7 协调节点
3.7.1 集群数据负载均衡的主宰
3.7.2 利用规则管理数据生命周期
3.7.3 副本实现Segment的高可用性
3.7.4 高可用性
3.8 索引服务
3.8.1 主从结构的架构
3.8.2 统治节点
3.8.3 中间管理者与苦工
3.8.4 任务
3.9 小结
4 安装与配置
4.1 安装准备
4.1.1 安装包简介
4.1.2 安装环境
4.1.3 Druid外部依赖
4.2 简单示例
4.2.1 服务运行
4.2.2 数据导入与查询
4.3 规划与部署
4.4 基本配置
4.4.1 基础依赖配置
4.4.2 数据节点配置调优
4.4.3 查询节点配置调优
4.5 集群节点配置示例
4.5.1 节点规划
4.5.2 Master机器配置
4.5.3 Data机器配置
4.6 小结
5 数据摄入
5.1 数据摄入的两种方式
5.1.1 流式数据源
5.1.2 静态数据源
5.2 流式数据摄取
5.2.1 以Pull方式摄取
5.2.2 用户行为数据摄取案例
5.2.3 以Push方式摄取
5.2.4 索引服务任务相关管理接口
5.3 静态数据批量摄取
5.3.1 以索引服务方式摄取
5.3.2 以Hadoop方式摄取
5.4 流式与批量数据摄取的结合
5.4.1 Lambda架构
5.4.2 解决时间窗口问题
5.5 数据摄取的其他重要知识
5.5.1 数据分片
5.5.2 数据复制
5.5.3 索引服务之Tranquility
5.5.4 高基数维度优化
5.6 小结
6 数据查询
6.1 查询过程
6.2 组件
6.2.1 Filter
6.2.2 Aggregator
6.2.3 Post-Aggregator
6.2.4 Search Query
6.2.5 Interval
6.2.6 Context
6.3 案例介绍
6.4 Timeseries
6.5 TopN
6.6 GroupBy
6.7 Select
6.8 Search
6.9 元数据查询
6.10 小结
7 高级功能和特性
7.1 近似直方图(Approximate Histogram)
7.1.1 分位数和直方图
7.1.2 实现原理
7.1.3 如何使用
7.1.4 近似直方图小结
7.2 数据Sketch
7.2.1 DataSketch Aggregator
7.2.2 DataSketchPost-Aggregator
7.3 地理查询(Geographic Query)
7.3.1 基本原理
7.3.2 空间索引(SpatialIndexing)
7.3.3 空间过滤(Spatial Filter)
7.3.4 边界条件(Boundary Condition)
7.3.5 地理查询小结
7.4 Router
7.4.1 Router概览
7.4.2 路由规则
7.4.3 配置
7.4.4 路由策略
7.5 Kafk索引服务
7.5.1 设计背景
7.5.2 实现
7.5.3 如何使用
7.6 Supervisor API
7.6.1 创建Supervisor
7.6.2 关闭Supervisor
7.6.3 获取当前执行的Supervisor
7.6.4 获取Supervisor规范
7.6.5 获取Supervisor的状态报告
7.6.6 获取所有Supervisor的历史
7.6.7 获取Supervisor的历史
7.7 最佳实践
7.7.1 容量规划
7.7.2 Supervisor的持久化
7.7.3 Schema的配置与变更
7.8 小结
0 条评论
下一页