支持在分布式存储系统中高速处理海量数据的基础技术

本技术介绍参考了以下链接
English

2019年07月11日

支持在分布式存储系统中高速处理海量数据的基础技术
提高系统整体性能,扩大分布式存储系统的使用用途

株式会社富士通研究所 (注1) (以下简称:富士通研究所),开发了一种可在分布式存储系统中同时实现大容量存储和高速数据处理的技术,以提高不断增加的海量数据的处理速度。

开发背景

近年来,人们通过利用各个场景中生成的大量数据,开展了众多业务革新和创新性活动。为了更加高效地利用海量数据(不仅包括传统的客户数据和POS数据等基于数据库管理的结构化数据,还包括视频、日志数据等呈爆发性增长的非结构化数据),需要AI、机器学习等技术来提高分析效率。传统技术中,数据分析是在处理服务器中进行的,但如果可以在存储数据的存储系统中对数据进行分析,将有望实现数据处理的高速化。

课题

通常进行数据处理时,需要将存储系统中的数据读取到处理服务器。随着存储系统和处理服务器之间流动数据量的不断增加,读取数据需要消耗更多时间,这将成为有效利用大量数据的瓶颈。另一方面,在不移动存储系统中数据的情况下,虽可进行高速处理,但在对分布于存储系统中的非结构化数据进行分析时,还需兼顾原有的存储功能和处理功能。

开发的技术

为了高速处理不断增长的海量数据, 富士通研究所开发了一种可在分布式存储系统中对数据进行快速处理的技术“Dataffinic computing”。它通过网络连接多个服务器,分散并存储数据,且不会降低系统的原始存储功能。 

开发的技术具有以下特征:

figure1

图1. 基于“Dataffinic Computing”技术的数据处理示意图


1. 可对每个分布式数据进行处理的内容感知数据配置 

为了提高访问性能,分布式存储系统通常不在同一位置保存大量数据,而是将数据分割为系统易于管理的大小进行存储。但是,对于非结构化数据,如视频及日志数据等,当文件被系统地分割为指定大小的片段并分别存储时,系统无法对单个数据片段进行处理。因此,需要再次对分布式数据进行收集与处理,从而给系统带来巨大负载。此次,富士通研究所通过利用数据相关性的自然断点,对非结构化数据进行分割并存储,实现了对单个数据片段的处理。另外,富士通研究所还将处理所需的信息(标题信息等)作为附加信息分配给每个数据片段。这意味着存储在分布式存储设备中的数据片段可进行单独处理,并且在保持访问性能可扩展性的同时提高了系统的整体性能。

figure1

图2. 非结构化数据的存储/处理示意图


2. 兼顾存储功能和数据处理功能的自适应资源控制 

除了普通的数据读写外,为了对数据进行安全维护与管理,存储节点还面临各种系统负载。例如:发生故障时的自动修复处理、增加存储容量后的数据重新分配处理、以及作为预防性维护的磁盘检查处理等。此次开发的技术,可对存储系统内的系统负载建模,预测近期需要的资源。在此基础上,可对数据使用资源和数据分配进行控制,以避免降低系统存储功能的性能。由此,既实现了原始存储功能的稳定运行,也使高速数据处理成为可能。

figure1

图3. 所需资源的预测与数据处理的资源控制示意图


效果

富士通研究所在开源分布式存储软件“Ceph (注2) ”中安装了本技术并对效果进行了验证。用1 Gbps网络将5台存储节点和5台处理服务器相连接,测量了从50GB视频数据中提取人、车等物体时的数据处理性能。利用传统方法完成该处理需要500秒,而通过使用本次开发的技术,50秒便可完成处理,速度是传统方法的10倍。 

该技术可对不断增加的数据进行可扩展的数据处理,高效处理呈爆发性增长的数据量。

今后

富士通研究所将继续推进本技术的商业应用验证,并计划于2019年度内在富士通株式会社实现其产品化。

注释

 注1 株式会社富士通研究所:
社长 古田 英范
总公司所在地 日本神奈川县川崎市
 注2 Ceph:
Ceph社区管理的开源分布式存储软件,2004年以前开始在美国加利福尼亚大学研发。