基于 Kubernetes 的通用云原生大数据架构

摘要

随着数据量的不断膨胀,传统的数据处理技术,性能上逐渐不能满足需求。为了解决数据增长带来的挑战,逐渐发展出各种各样的数据处理技术,一定程度上提高了数据处理能力,却带来技术孤岛、数据分散、架构复杂、维护困难的问题,导致数据成本越来越高昂。由于云计算技术的蓬勃发展,“万物上云”成为时代常态,不仅普通系统可以借助云的优势,提高整体能力,数据处理技术更能依托云,提高性能降低成本。虽然一些新型数据处理技术,以云原生为基石,结合多种技术手段,融合事务处理和分析计算,提供统一的访问接口,但是由于其还处于发展初期,受限于基础设施、技术发展等多方面因素,短期还不能完全替换传统数据处理技术。

通过把传统数据处理技术与云进行结合,提高性能降低成本,是减少数据膨胀挑战、降低系统复杂性、节约数据成本的主要方法之一,但是对于该研究的相关工作并不多。数据处理技术与云融合,通常需要特殊改造,不能泛化,云存储性能不高,传统存储不灵活,整体复杂度较高,导致不能很好利用云的优势。本文为了解决这些问题,提出了一种基于 Kubernetes 的通用云原生大数据架构:

1. 基于成熟的云容器编排技术,设计了模块化低耦合的云原生运行环境,提高了数据处理技术上云的效率。

2. 基于云存储、数据加速中间件、容器存储接口等技术,设计了云存储加速策略,实现了存算分离结构,使云上数据系统具有较强的扩展性、灵活性,提高了数据存储规模,降低了数据成本。

3. 通过引入新的并行计算策略,规避了传统大规模并行计算的缺陷,提高了整体查询性能,使 TPS 响应更加稳定 。

4. 通过引入成熟的日志、监控、追踪等技术,设计了大规模云上资源的标准可观测性策略,提高了系统稳健性,降低了维护复杂性。

最后在分析型数据处理技术 ClickHouse 上,验证了本文提出的架构,通过大量的实验从查询性能、TPS 响应等方面与原架构进行对比,结果证明在查询性能上有 18%~60% 的提升,在数据成本上有 50%~90% 的下降,在数据规模、一致性、可靠性、系统扩展性上优于原架构,在运维复杂度上易于原架构。

关键词:大数据;云计算;大数据与云融合;存储计算分离;大规模并行计算;可观测性


目录

第一章 绪论
  1.1 研究背景与意义
  1.2 国内外发展现状
  1.2.1 数据处理技术的发展
  1.2.2 云计算技术的发展
  1.2.3 数据处理技术与云计算技术的结合
  1.3 本文的主要内容
  1.4 本文的组织结构
第二章 相关技术
  2.1 Kubernetes
  2.2 Rancher
  2.3 JuiceFS
  2.4 Redis
  2.5 OSS
  2.6 Prometheus、AlertManager、Grafana
  2.7 Fluentd、ElasticSearch、Kibana
  2.8 本章小结
第三章 基于容器编排技术的通用数据处理技术上云策略
  3.1 数据处理技术上云的困难
  3.2 数据处理技术上云的策略
  3.3 通用的云原生大数据架构
  3.3.1 模块一:客户端
  3.3.2 模块二:负载均衡
  3.3.3 模块三:用户鉴权
  3.3.4 模块四:数据处理技术
  3.3.5 模块五:运行环境
  3.3.6 模块六:数据加速
  3.3.7 模块七:数据存储
  3.3.8 模块八:元数据管理
  3.3.9 模块九:日志、监控、通知
  3.3.10 各模块之间的交互关系
  3.4 本章小结
第四章 基于云原生混合技术的存储加速以及存算分离方法
  4.1 海量数据存储计算的困难
  4.2 云存储的优势与劣势
  4.3 存储优化问题分析
  4.4 云存储优化加速策略
  4.5 存储计算分离策略
  4.6 本章小结
第五章 基于容器化节点的大规模云上并行计算策略
  5.1 传统大规模并行计算的问题
  5.2 基于云的大规模并行计算策略
  5.3 两种大规模并行计算策略的分析对比
  5.4 本章小结
第六章 融合日志、度量、追踪技术的标准化可观测性设计
  6.1 可观测性的定义
  6.2 可观测性的重要性
  6.3 可观测性的困难
  6.4 可观测性的实现策略
  6.5 本章小结
第七章 实验案例:ClickHouse 在不同架构下的性能表现
  7.1 实验简介
  7.2 实验准备
  7.3 实验方法
  7.4 实验结果
  7.5 实验结果分析
  7.5.1 查询性能
  7.5.2 数据成本
  7.5.3 数据规模
  7.5.4 数据一致性
  7.5.5 数据可靠性
  7.5.6 系统扩展性
  7.5.7 运维复杂性
  7.5.8 总结
  7.6 本章小结
第八章 总结与展望
  8.1 本文总结
  8.2 未来展望
参考文献

正文

Show Comments