2.4、大数据组件:Spark 平台
Apache Spark 是用于大规模数据处理的统一分析引擎,具有可伸缩性、基于内存计算等特点,已经成为轻量级大数据快速处理的统一平台,各种不同的应用,如实时信息流处理、机器学习、交互式查询等,都可以通过 Spark 建立在不同的存储和运行系统上。具体结构如下图所示:
- Apache Spark 核心:Spark Core 是 Spark 平台的基础通用执行引擎,其所有其他功能都是基于该平台执行的。它提供了内存计算和外部存储系统中的参考数据集。
- Spark SQL:Spark SQL 是 Spark Core 之上的一个组件,它引入了一种名为 SchemaRDD 的新数据抽象,他提供了对结构化和半结构化数据的支持。
- Spark Streaming:Spark Streaming 利用 Spark Core 的快速调度功能来执行流式分析。它采用小批量采集数据,并对这些小批量数据执行 RDD(弹性分布式数据集)转换。
- MLlib:MLlib 是 Spark 上面的分布式机器学习框架,因为它是基于分布式内存的 Spark 体系结构。
- Graphx:Graphx 是 Spark 顶部的分布式图形处理框架。它提供了一个用于表达图形计算的 API,可以使用 Pregel 抽象 API 对用户定义的图形进行建模。它还为此抽象提供了优化的运行时。
三、鲲鹏 BoostKit 使能套件介绍
3.1、鲲鹏 BoostKit 是什么?
BoostKit 是一个应用使能套件,并不只是由一个软件包构成,而是由很多软件包组成的。
BoostKit 是部署在鲲鹏整机(服务器)环境之上,往上搭建的一个全栈优化的使能套件。具体结构如下图所示:
鲲鹏应用使能套件 BoostKit,释放倍级性能优势,提供八大场景化应用使能套件:大数据、分布式存储、数据库、虚拟化、ARM 原生、Web/CDN、NFV 和 HPC。在接下来的过程中,我们将其分为三个部分依次介绍。
3.2、开源使能:开源软件可用、好用
- 华为:贡献开源、主导开源,使能主流开源软件支持鲲鹏高性能。
- 伙伴:从开源社区、鲲鹏社区获取高性能开源组件,直接编译/部署。
我们以 Hadoop 为例,首先需要让 Hadoop 运行在鲲鹏服务器上,然而这远远不够,还需要根据需求开发相关特性,以促使 Hadoop 在鲲鹏之上可以运行得更加完美、便捷,同时我们将研发的产品新特性合入、贡献到开源社区。
3.3、基础加速:超越业界水平的应用性能
这一块之所以被称为基础,是因为很多应用都会使用到该加速包,比如:NUMA 优化、KAE 加速库、IO 智能预取等。
- 华为:提供基础性能优化、基础加速库和加速算法等基础加速软件包和文档,并对如何使用作出指导。
- 伙伴:从鲲鹏社区获取基础加速软件包,在鲲鹏创新中心指导下进行编译、部署和性能优化。
我们以 KAE 加速库为例,在使用过程中所使用到的如压缩、加解密等相关功能,我们会加速这个功能,如果我们的上层应用有使用到压缩、加解密等相关功能就都会有大幅的性能提升。
3.4、应用加速:极致事务倍级应用性能
- 华为:提供应用创新加速组件、算法创新组件等应用