360公司Druid实践与优化探索
需积分: 34 58 浏览量
更新于2024-09-09
收藏 777KB PDF 举报
"本文主要介绍了360公司内部对Druid数据存储和查询引擎的实践与优化过程,包括Druid在360的应用情况、功能优化的实现以及未来的规划。"
在360公司,Druid被广泛应用于大数据处理,其实践主要体现在以下几个方面:
1. **Druid的实践**:
- 使用的Druid版本基于0.10.0进行了bug修复和功能增强。
- 集群规模:360设有两个Druid集群,分别由20台和10台服务器组成,每台服务器配置有256GB内存、24核CPU和1.2TB的Flask卡存储,网络环境为千兆普通网络。
- 业务量:管理着60个不同的数据源,每天平均导入10亿条原始数据。查询性能表现出色,95%的查询在3秒内完成,平均查询时间仅为1.4秒。
2. **功能优化**:
- **Virtualdatasource**:这是为了满足多维度查询需求而引入的概念,它允许组合不同的数据维度,如time, item, location, supplier等,创建出41个维度的查询组合。衍生树(derivetree)被用来组织这些虚拟数据源,提供统一的查询接口。最初的设计,即NaïveVirtualdatasource,将衍生树作为一个整体对外提供服务,其schema与基础数据源保持一致,用户对这个逻辑上的数据源是透明的。
- **ImprovedVirtualdatasource**:针对NaïveVirtualdatasource存在的问题,如构建衍生数据源时的效率低下和资源消耗过大,进行了改进。这可能涉及到更高效的维度组合策略、查询优化和内存管理等方面,以提高查询性能和降低资源消耗。
3. **未来计划**:
- 360计划将Druid与Flink集成,实现Druid实时处理能力的提升,即Druidrealtimeonflink项目,这将使得Druid能够更好地支持实时数据分析和流处理场景,进一步提升系统的响应速度和灵活性。
总结来说,360在Druid的实践中不断进行优化,以满足大规模数据处理和复杂查询需求,同时关注系统性能和资源利用率。通过虚拟数据源的功能,提高了多维度查询的便捷性和效率,并且对未来的技术方向有明确的规划,如实时处理能力的增强。这些实践经验对于其他大型企业处理海量数据和提供高效查询服务具有重要的参考价值。
2020-09-10 上传
点击了解资源详情
2018-04-12 上传
2019-06-25 上传
2021-10-25 上传
Richard112579
- 粉丝: 0
- 资源: 1
最新资源
- Fisher Iris Setosa数据的主成分分析及可视化- Matlab实现
- 深入理解JavaScript类与面向对象编程
- Argspect-0.0.1版本Python包发布与使用说明
- OpenNetAdmin v09.07.15 PHP项目源码下载
- 掌握Node.js: 构建高性能Web服务器与应用程序
- Matlab矢量绘图工具:polarG函数使用详解
- 实现Vue.js中PDF文件的签名显示功能
- 开源项目PSPSolver:资源约束调度问题求解器库
- 探索vwru系统:大众的虚拟现实招聘平台
- 深入理解cJSON:案例与源文件解析
- 多边形扩展算法在MATLAB中的应用与实现
- 用React类组件创建迷你待办事项列表指南
- Python库setuptools-58.5.3助力高效开发
- fmfiles工具:在MATLAB中查找丢失文件并列出错误
- 老枪二级域名系统PHP源码简易版发布
- 探索DOSGUI开源库:C/C++图形界面开发新篇章