掌握Sql-On-Hadoop的核心类别与性能比较
55 浏览量
更新于2024-08-29
收藏 335KB PDF 举报
本文将深入探讨SQL on Hadoop的核心技术,特别是针对AtScale在2016年发布的《Hadoop商务智能基准》(The Business Intelligence for Hadoop Benchmark)[15]中的性能评估。报告指出,SQL on Hadoop系统的性能受到多种因素的影响,包括查询的数据量、查询类型(如join表数量、表大小以及是否包含聚合操作)、并发用户量等。没有单一的系统能在所有场景中占据绝对优势,例如,Impala和Presto在高并发场景中表现出色,而SparkSQL在大表Join方面有较好表现。
SQL on Hadoop的分类主要依据查询的响应时间,将其分为三类:
1. **批处理SQL (BatchSQL)**:这类查询的响应时间通常在分钟或小时级别,主要用于复杂的数据提取、转换和加载(ETL)、数据挖掘和高级分析。由于批处理SQL的延迟较高,系统必须支持查询内容错,即当节点故障或任务失败时,应能重试失败的任务而非整个查询。Hive和早期版本的SparkSQL属于批处理SQL范畴。
2. **交互式SQL (InteractiveSQL)**:交互式查询对延迟有严格要求,通常在毫秒到秒级别,用户会频繁地在同一个表上执行不同查询。这类系统注重低延迟,不特别强调查询内的容错,允许重新提交查询以快速恢复。典型的交互式SQL系统有Presto、Impala、Drill和HAWQ。尽管SparkSQL的查询速度也非常高效,但同样适用于交互式查询。
3. **操作性SQL (OperationSQL)**:这类查询需要极快的响应时间,通常要求延迟在1秒以内,主要用于实时操作和监控。操作性SQL系统如HB等,它们对性能有着苛刻的要求,以确保快速的响应。
理解这些分类有助于选择最适合特定业务需求的SQL on Hadoop解决方案。在实际应用中,开发者和管理员需要根据查询的性质、数据规模和吞吐量要求来权衡性能和容错策略,以优化SQL on Hadoop的使用。同时,随着技术的发展,新的SQL on Hadoop工具不断涌现,性能和功能也在持续改进,持续关注市场动态和技术更新对于保持竞争力至关重要。
2021-08-09 上传
2018-10-11 上传
点击了解资源详情
点击了解资源详情
2019-03-19 上传
2022-10-30 上传
2024-07-11 上传
2013-04-14 上传
点击了解资源详情
weixin_38715879
- 粉丝: 4
- 资源: 922
最新资源
- IEEE 14总线系统Simulink模型开发指南与案例研究
- STLinkV2.J16.S4固件更新与应用指南
- Java并发处理的实用示例分析
- Linux下简化部署与日志查看的Shell脚本工具
- Maven增量编译技术详解及应用示例
- MyEclipse 2021.5.24a最新版本发布
- Indore探索前端代码库使用指南与开发环境搭建
- 电子技术基础数字部分PPT课件第六版康华光
- MySQL 8.0.25版本可视化安装包详细介绍
- 易语言实现主流搜索引擎快速集成
- 使用asyncio-sse包装器实现服务器事件推送简易指南
- Java高级开发工程师面试要点总结
- R语言项目ClearningData-Proj1的数据处理
- VFP成本费用计算系统源码及论文全面解析
- Qt5与C++打造书籍管理系统教程
- React 应用入门:开发、测试及生产部署教程