小米集团SQL on Hadoop实践与优化:从架构到解决方案
版权申诉
182 浏览量
更新于2024-07-05
收藏 2.84MB PDF 举报
本文档深入探讨了在小米集团内部对SQL on Hadoop技术的应用与优化实践,作者是周康,他分享了该团队作为元数据服务和Ad-hoc查询服务提供商的角色,服务范围涵盖了Hive、Kylin、Druid、Doris和MiQuery等工具。主要讨论内容分为两个部分:概述和小米的实践与优化。
在概述部分,作者首先介绍了小米的集群架构,包括7个海外集群,其中包含大量数据,如11个表、450万+分区和超过20万的SparkSQL查询。有效查询数分别达到了10万次(HiveSQL)和25万次(SparkSQL)。这展示了大数据处理在小米的广泛应用和高并发需求。
SQL on Hadoop路由方案是核心部分,面临的主要挑战是如何提供统一的访问接口、灵活的智能引擎以及适应不同的场景需求。为此,团队采用了SQLProxy方案,它作为一个统一接入点,根据场景不同划分为HiveSQL和SparkSQL服务。SQLProxy通过改造SparkThriftServer,实现了去中心化、无Hadoop依赖,并支持按Session和队列限制并发连接,同时还提供了HTTP模式下的自定义鉴权功能。
针对PowerBI的需求,SQLProxy进行了个性化改造,允许其与PowerBI无缝集成,支持SparkSQL,但PowerBI原生不支持Kylin、Druid和Doris。通过PowerBIonSQLProxy,用户可以使用HTTP模式接入,享受对多种OLAP引擎的支持,且能自定义认证逻辑和业务数据权限。
Hiveserver2的部署架构也得到了关注,包括LVS的权重调整、元数据服务的动态扩展以及服务的Online和StandBy模式,以确保高可用性和资源管理的灵活性。SparkSQLOLAP方案则提出了SparkSQL服务化的解决方案,强调了Session级别的隔离、资源管理和基于Metastore的元数据管理。
整体而言,本文详细描述了小米在利用SQL on Hadoop技术应对海量数据处理中的实践策略和优化过程,对于其他企业寻求同类问题的解决方案具有很高的参考价值。
2018-10-26 上传
2018-07-09 上传
2014-11-18 上传
2019-04-05 上传
2019-05-17 上传
2014-04-16 上传
2023-03-21 上传
813 浏览量
普通网友
- 粉丝: 13w+
- 资源: 9195
最新资源
- 稳定瓶:使瓶子或容器可以单手打开
- 重现经典的ibatis示例项目jpetstore,采用最新的springMVC+mybatis+mysql.zip
- coreos_on_ec2:一组 bash 脚本,用于在 EC2 上轻松启动 CoreOS 集群
- UseGDI绘图 vc++
- computer-database:我在Excilys实习期间进行的培训项目
- 73958319:关于我
- generic-serial-orchestrator
- 这是mysql的学习笔记.zip
- HPC-project:openMP,MPI和CUDA中生命游戏的并行化
- RealReactors:我的世界关于React堆的mod
- PetFlow
- even-odd-game
- jquery.fcs:使用 ENTER 键移动焦点、向前、向后和分组任何元素的 jQuery 插件
- Unal-Class-Chalenge
- 重新学习MySQL,不浮躁.zip
- winshop:一个受Microsoft Windows 10启发的小型轻量级Web桌面应用程序