
# 大数据场景下使用OBS实现存算分离方案概述
#### 应用场景
随着大数据技术的飞速发展，对数据价值的认识逐渐加深，大数据已经融入到了各行各业。根据相关调查报告数据显示，超过39.6%的企业正在应用大数据并从中获益；超过89.6%的企业已经成立或计划成立相关的大数据分析部门；超过六成的企业在扩大大数据的投入力度。对各行业来讲，大数据的使用能力成为未来取得竞争优势的关键能力之一。
在大数据场景下，数据已成为新资产，智能已成为新生产力。企业迫切需要完成数字化转型，提高生产力，使数据资产发挥最大价值。而传统企业在业务未上云之前，业务部署和数据存储往往都在本地IDC机房的多个集群，且一台服务器同时提供计算和存储能力，这种方式导致的如[表1]所示的几个关键问题，已成为企业数字化转型的阻碍。
 表1传统企业在大数据场景面临的关键问题 
| 序号 | 关键问题             | 详细描述                                                                                                                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| 1  | 多集群数据共享难         | 企业数据往往分别存储在IDC多个集群，存在如下问题： - 无全局视图，数据只能在集群内部使用。  - 拷贝是跨集群数据共享的唯一途径，数据拷贝耗时长。  - 公共数据集多份存储，数据冗余。   |
| 2  | 计算存储资源绑定，导致资源浪费  | 计算和存储资源无法均衡，当计算和存储需求不一致时，只能等比扩容，势必造成一种资源的浪费。                                                                                                                                                                                                                                                                                                          |
| 3  | 数据三副本存储，利用率低，成本高 | Hadoop分布式文件系统（HDFS）使用三副本保存数据，磁盘空间利用率仅33%，单盘利用率低于70%。                                                                                                                                                                                                                                                                                                  |
   
#### 方案架构
针对传统企业在大数据场景面临的问题，华为云提供了基于对象存储服务OBS作为统一数据湖存储的大数据存算分离方案。
图1基于OBS的华为云大数据存算分离方案   
![](https://support.huaweicloud.com/bestpractice-obs/zh-cn_image_0000001173860370.png "点击放大")
华为云大数据存算分离方案基于对象存储服务OBS的大容量高带宽能力，以及多协议共享访问技术（HDFS/POSIX/OBS API），实现Hadoop生态多计算引擎（Hive、Spark等）兼容对接。
#### 方案优势
相比传统企业在本地IDC机房部署大数据业务，华为云数据存算分离方案的主要优势如[表2]。
 表2华为云大数据存算分离相比传统大数据方案的优势 
| 序号 | 主要优势              | 详细描述                                                                                                                                                                                                                                                                             |
|:---|:---|:---|
| 1  | 融合高效，协同分析         | - 通过统一的权限控制，实现多集群间的数据共享。  - 数据"0"拷贝。  - 大数据和AI一体化，减少作业耗时。   |
| 2  | 存算分离，资源利用率高       | 计算存储解耦，支持独立扩容或缩容，计算资源可弹性伸缩，资源利用率提升。                                                                                                                                                                                                                                              |
| 3  | 数据EC冗余存储，利用率高，成本低 | 对象存储服务OBS支持利用率最高的分布式数据容错技术Erasure code，磁盘利用率大幅提升，数据存储空间需求远低于三副本。                                                                                                                                                                                                                 |
   
此外，对象存储服务OBS提供了[OBSFileSystem插件（OBSA-HDFS）](https://github.com/huaweicloud/obsa-hdfs/tree/master/release)，可与上层大数据平台无缝对接，实现业务零改造。
OBSFileSystem的主要作用：提供HDFS文件系统的相关接口实现，让大数据计算引擎（Hive、Spark等）可以将OBS作为HDFS协议的底层存储。
图2存算分离方案中的OBSFileSystem   
![](https://support.huaweicloud.com/bestpractice-obs/zh-cn_image_0000001219060175.png "点击放大")
![](https://support.huaweicloud.com/bestpractice-obs/public_sys-resources/note_3.0-zh-cn.png)
OBS服务支持对象存储桶（对象语义）和并行文件系统（POSIX文件语义），在大数据场景下建议选择并行文件系统。并行文件系统支持POSIX文件语义，通过OBSFileSystem封装，相较对象语义增加Rename、Append、hflush/hsync接口，实现完善的HDFS语义，为大数据计算提供了更好的性能。
**基于上述优势，华为云存算分离大数据方案相比传统大数据方案，在同样的业务规模下所使用的计算资源、存储资源以及服务器数量都会有明显下降，同时资源利用率也能得到显著提升，可帮助企业降低业务综合成本。**
#### 文档使用范围
本最佳实践主要提供华为云大数据存算分离方案中不同大数据平台和大数据组件与对象存储服务OBS的对接指导，以及HDFS数据迁移至对象存储服务OBS的方案。
