CN111339030B - 一种基于fpga的云文件系统及其数据处理方法 - Google Patents
一种基于fpga的云文件系统及其数据处理方法 Download PDFInfo
- Publication number
- CN111339030B CN111339030B CN202010110100.5A CN202010110100A CN111339030B CN 111339030 B CN111339030 B CN 111339030B CN 202010110100 A CN202010110100 A CN 202010110100A CN 111339030 B CN111339030 B CN 111339030B
- Authority
- CN
- China
- Prior art keywords
- layer
- fpga
- file system
- data
- communication module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title abstract description 7
- 238000004891 communication Methods 0.000 claims abstract description 29
- 238000004364 calculation method Methods 0.000 claims abstract description 9
- 230000005540 biological transmission Effects 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 10
- 238000013500 data storage Methods 0.000 claims description 9
- 238000005538 encapsulation Methods 0.000 claims description 3
- 230000001133 acceleration Effects 0.000 claims description 2
- 230000000694 effects Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种基于FPGA的云文件系统及其数据处理方法,所述文件系统包括依次连接的VFS层、块设备层、设备驱动层和介质层,所述VFS层内包括MAC通信模块,所述MAC通信模块连接FPGA,MAC通信模块通过访问FPGA云上的存储与计算资源,进行数据传输。在文件系统的VFS层,通过MAC模块与FPGA的通信,利用MAC模块高带宽、低延时的特性,通过FPGA上的存储与计算资源,分担CPI对数据的搬移操作,满足海量数据的移动需求。
Description
技术领域
本发明涉及文件系统技术领域,尤其是一种基于FPGA的云文件系统及其数据处理方法。
背景技术
计算机操作系统将I/O设备抽象为“文件”,文件系统则向用户提供了底层数据访问机制。它将设备中的空间划分为特定大小的块,一般为512字节,数据被存储在这些块中,大小被修正为占用整数个块,文件系统软件负责将这些存储块组织为文件和目录,并记录数据块的分配与使用状态。
存储设备在指定文件系统之后才能被计算机读写,常用的文件系统可根据存储介质类型划分为磁盘文件系统、闪存文件系统、数据库文件系统以及网络文件系统。文件系统在应对当前大数据、分布式存储对高带宽、低延时需求时存在体系结构上的弱势。
发明内容
本发明提供了一种基于FPGA的云文件系统及其数据处理方法,用于解决现有体系架构不能满足高带宽、低延时需求的问题。
为实现上述目的,本发明采用下述技术方案:
本发明第一方面提供了一种基于FPGA的云文件系统,所述文件系统包括依次连接的VFS层、块设备层、设备驱动层和介质层,所述VFS层内包括MAC通信模块,所述MAC通信模块连接FPGA,MAC通信模块通过访问FPGA云上的存储与计算资源,进行数据传输。
进一步的,所述FPGA使用逻辑资源构建控制器,所述控制器连接主机CPU,对主机数据进行搬移操作。
进一步的,所述控制器为PR控制器。
进一步的,所述FPGA通过所述控制器与MAC通信模块进行协作,通过构建目录表进行网络资源的检索。
进一步的,所述VFS层通过POSIX接口连接应用程序,所述POSIX接口将应用程序不同类型的文件系统转化为统一的操作系统接口规范。
进一步的,所述VFS层直接连接介质层,操作介质接口。
本发明第二方面提供了一种云文件系统的数据处理方法,基于所述的云文件系统,所述方法包括以下步骤:
文件系统的VFS层接收上层数据处理请求,通过MAC通信模块与FPGA的通信,利用FPGA上的存储与计算资源,对所述上层数据处理请求做出响应,进入云文件系统;
VFS层操作块设备,通过介质层定义数据存储格式。
进一步的,所述VFS层操作块设备,通过介质层定义数据存储格式的具体过程为:
经块设备层缓存数据;
经设备驱动层控制介质层的数据操作,定义数据的存储格式。
进一步的,所述VFS层操作块设备,通过介质层定义数据存储格式的具体过程为:
经VFS层进行数据封装后,直接操作介质层接口,进行数据存储格式的定义。
发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
1、在文件系统的VFS层,通过MAC模块与FPGA的通信,利用MAC模块高带宽、低延时的特性,通过FPGA上的存储与计算资源,分担CPI对数据的搬移操作,满足海量数据的移动需求。
2、通过POSIX接口连接应用程序,POSIX接口将应用程序不同类型的文件系统转化为统一的操作系统接口规范,保证了上层应用的可移植性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明所述系统的结构示意图;
图2是本发明所述POSIX接口示意图;
图3是本发明所述方法的流程示意图。
具体实施方式
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
为满足海量数据在分布式平台的高速、实时流通需求,传统的基于软件协议、升级网络硬件通信速率的方式已将传统经典分布式架构的性能发挥到极致,其性能在应对数据高峰时,显得捉襟见肘。本发明基于FPGA的硬件加速架构已然成为新一代高性能分布式计算、存储平台的主要方案,也是传统平台升级的不二选择。
如图1所示,本发明一种基于FPGA的云文件系统,包括依次连接的VFS层、块设备层、设备驱动层和介质层,VFS层内包括MAC通信模块,MAC通信模块连接FPGA,MAC通信模块通过访问FPGA云上的存储与计算资源,进行数据传输。
VFS层内包括文件pagecache,用于向上连接POSIX接口,居中连接VFS的mount/inode/dentv等,向下连接块设备或接口介质。
块设备层内包含若干IO块以及对块IO的调度策略。
MAC模块包括若干个MAC,每个MAC均包含Nio接口,用于实现与FPGA的通信。MAC作为云文件系统的通信端口,支持40-100Gbps光纤通信模块,可有效满足海量数据移动的高带宽需求。
在FPGA上使用逻辑资源构建PR控制器,PR控制器连接主机CPU,对主机数据进行搬移操作。
FPGA通过PR控制器与MAC通信模块中的Nio接口连接,与MAC模块进行协作,通过构建目录表进行网络资源的检索,这样CPU端就可以获得本地FPGA与远端网络资源信息。
如图2所示,VFS层通过POSIX接口连接应用程序,POSIX接口将应用程序不同类型的文件系统转化为统一的操作系统接口规范,保证了上层应用的可移植性。其中POSIX接口可转化的文件系统包括open、read、write、ioctl和close等
如图3所示,本发明一种云文件系统的数据处理方法,基于上述云文件系统,方法包括以下步骤:
S1,文件系统的VFS层接收上层数据处理请求,通过MAC通信模块与FPGA的通信,利用FPGA上的存储与计算资源,对所述上层数据处理请求做出响应,进入云文件系统;
S2,VFS层操作块设备,通过介质层定义数据存储格式。
其中上述步骤S2的实现方式包括两种,
其一:
经块设备层缓存数据;
经设备驱动层控制介质层的数据操作,定义数据的存储格式。
其二:
经VFS层进行数据封装后,直接操作介质层接口,进行数据存储格式的定义。
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (3)
1.一种基于FPGA的云文件系统,其特征是,所述云文件系统为采用基于FPGA的硬件加速架构的分布式云文件系统,包括依次连接的VFS层、块设备层、设备驱动层和介质层,所述VFS层内包括MAC通信模块,所述MAC通信模块连接FPGA,MAC通信模块通过FPGA访问云上的存储与计算资源,进行数据传输;
所述FPGA使用逻辑资源构建控制器,所述控制器为PR控制器,所述控制器连接主机CPU,对主机数据进行搬移操作;
MAC通信模块包括若干个MAC,每个MAC均包含Nio接口,FPGA通过PR控制器与MAC通信模块中的Nio接口连接,所述FPGA通过所述控制器与MAC通信模块进行协作,通过构建目录表进行网络资源的检索;
所述云文件系统的VFS层接收上层数据处理请求,通过MAC通信模块与FPGA的通信,利用FPGA上的存储与计算资源,对所述上层数据处理请求做出响应,进入云文件系统;所述VFS层连接介质层,直接操作介质接口;所述VFS层操作块设备,通过介质层定义数据存储格式,具体过程为:
经VFS层进行数据封装后,直接操作介质层接口,进行数据存储格式的定义。
2.根据权利要求1所述基于FPGA的云文件系统,其特征是,所述VFS层通过POSIX接口连接应用程序,所述POSIX接口将应用程序不同类型的文件系统转化为统一的操作系统接口规范。
3.根据权利要求1或2所述基于FPGA的云文件系统,其特征是,所述VFS层操作块设备,通过介质层定义数据存储格式的具体过程还包括:经块设备层缓存数据;经设备驱动层控制介质层的数据操作,定义数据的存储格式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010110100.5A CN111339030B (zh) | 2020-02-23 | 2020-02-23 | 一种基于fpga的云文件系统及其数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010110100.5A CN111339030B (zh) | 2020-02-23 | 2020-02-23 | 一种基于fpga的云文件系统及其数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111339030A CN111339030A (zh) | 2020-06-26 |
CN111339030B true CN111339030B (zh) | 2023-06-06 |
Family
ID=71179633
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010110100.5A Active CN111339030B (zh) | 2020-02-23 | 2020-02-23 | 一种基于fpga的云文件系统及其数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111339030B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988685A (zh) * | 2021-03-31 | 2021-06-18 | 第四范式(北京)技术有限公司 | 数据压缩和解压缩方法及其装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108231086A (zh) * | 2017-12-24 | 2018-06-29 | 航天恒星科技有限公司 | 一种基于fpga的深度学习语音增强器及方法 |
US10516649B1 (en) * | 2018-06-27 | 2019-12-24 | Valtix, Inc. | High-performance computer security gateway for cloud computing platform |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365601A (zh) * | 2012-03-27 | 2013-10-23 | 山东超越数控电子有限公司 | 基于龙芯3a处理器的云存储系统 |
WO2015069275A1 (en) * | 2013-11-08 | 2015-05-14 | Empire Technology Development Llc | Control of router in cloud system |
CN104809124B (zh) * | 2014-01-24 | 2018-06-26 | 中国移动通信集团河北有限公司 | 云虚拟文件系统及其输入/输出请求处理方法 |
CN105446665A (zh) * | 2015-12-18 | 2016-03-30 | 长城信息产业股份有限公司 | 一种计算机存储加速系统及其优化方法 |
CN107194811A (zh) * | 2017-05-18 | 2017-09-22 | 安徽磐众信息科技有限公司 | 一种基于fpga的高频交易量化系统 |
CN109032982A (zh) * | 2018-08-02 | 2018-12-18 | 郑州云海信息技术有限公司 | 一种数据处理方法、装置、设备、系统、fpga板卡及其组合 |
-
2020
- 2020-02-23 CN CN202010110100.5A patent/CN111339030B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108231086A (zh) * | 2017-12-24 | 2018-06-29 | 航天恒星科技有限公司 | 一种基于fpga的深度学习语音增强器及方法 |
US10516649B1 (en) * | 2018-06-27 | 2019-12-24 | Valtix, Inc. | High-performance computer security gateway for cloud computing platform |
Also Published As
Publication number | Publication date |
---|---|
CN111339030A (zh) | 2020-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6796304B2 (ja) | 最終レベルキャッシュシステム及び対応する方法 | |
US11741053B2 (en) | Data management system, method, terminal and medium based on hybrid storage | |
CN109388590B (zh) | 提升多通道dma访问性能的动态缓存块管理方法和装置 | |
CN101840306B (zh) | VxWorks操作系统中实现驱动SATA设备的方法和系统 | |
CN102937964B (zh) | 基于分布式系统的智能数据服务方法 | |
CN101796514A (zh) | 对象存储系统的管理方法 | |
CN112632069A (zh) | 哈希表数据存储管理方法、装置、介质和电子设备 | |
EP4369171A1 (en) | Method and apparatus for processing access request, and storage device and storage medium | |
CN111625551A (zh) | 基于ElasticSearch存储的数据库监控数据高可用系统及其实现方法 | |
CN111339030B (zh) | 一种基于fpga的云文件系统及其数据处理方法 | |
CN115033188A (zh) | 一种基于zns固态硬盘的存储硬件加速模块系统 | |
US20240220334A1 (en) | Data processing method in distributed system, and related system | |
CN109508317B (zh) | 一种大容量数据和服务管理系统 | |
US8577890B2 (en) | Modifying data set name qualifiers | |
CN116074179B (zh) | 基于cpu-npu协同的高扩展节点系统及训练方法 | |
WO2024032526A1 (zh) | 一种数据检索处理方法和系统 | |
CN102708075A (zh) | 一种sd卡硬件控制装置及控制方法 | |
US8918621B1 (en) | Block address isolation for file systems | |
US9069821B2 (en) | Method of processing files in storage system and data server using the method | |
CN109960460B (zh) | 一种分布式存储系统 | |
CN117093158B (zh) | 分布式存储系统的存储节点、系统、数据处理方法及装置 | |
WO2023000784A1 (zh) | 数据访问方法以及相关设备 | |
KR102673715B1 (ko) | 호스트 커널에 부착되는 솔리드 스테이트 드라이브의 데이터 제어 시스템 및 방법 | |
CN117193674B (zh) | 一种提升物联网设备海量数据存取效能的方法及装置 | |
EP4213021A1 (en) | Electronic system, operating method thereof, and operating method of memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |