云计算平台中数据存储与文件管理的研究
2021-09-22赵俊泽
赵俊泽
(福建师范大学 光电与信息工程学院通信工程(中英合作) 福建省福州市 350000)
在信息技术不断发展的过程中,互联网内部数据和服务种类也在不断增加,爆炸式增长的网络通讯量提高了互联网系统的负担。主要问题就是互联网内部资源使用率比较低,部分应用要求大量计算与存储资源,其他的系统资源都是空闲的[1]。对于此问题,要求对资源和计算能力的虚拟化问题进行解决,从而解决海量数据的管理和存储问题,通过分布式共享机制进一步提高服务质量。云南计算从提出到现在备受业界的重视,使IT行业的发展也有所改变。云计算属于全新计算方式,基于网络基础架构的虚拟化提高了数据存储和处理的能力,使基于PC的信息处理模式得到改变。本文设计云计算平台数据存储与文件管理的方案,从而快速访问爆炸式增长数据。
1 云计算平台数据存储的方式
1.1 数据模型
通过结构化和非结构化的数据构成云计算平台数据,利用分布式数据库对数据进行管理。针对数据集,要求分布式数据库创建长期存储报个。用户在表格中存储数据,每行都设置数列与主键。因为存在不同稀疏程度,所以每张表格内部数据排序可以利用不同列实现。Label数值能够将所有行改变,通过表面结构进行改变。
分布式数据中的每个关系库都存在一个目录,在此目录中存储表数据文件,文件操作为数据库内部封闭操作,也就是使每行作为原子元素,全部元素加锁。在对关系表更新之后标记更新时间。数据更新之后版本也会更新,原本的版本存在数据内部,通过时间对数值进行设置。图1为MapReduee实现机制,每行主键词为反向URL,将网页内容存储到基本阵列族中,通过锚点列族存储网页链接文本。对于每个锚链只有一个版本,对时间戳标记。但是对于内容表项能够实现多项化的版本。
1.2 分布式数据库体系结构
将主从服务器结构作为基础实现服务器体系结构的设计,利用Masster对分布式数据库进行管理。节点服务器能够注册内部slave服务器节点,如果主服务器存在故障,就会导致系统瘫痪,能够通过双备份冗余机制使此问题得到解决。利用从Master切换到主Master服务器中,得出服务器列表。将节点和主服务器保存在节点内部,在其他电脑中分配不同的服务器。之后,根据数据列表的特征函数,主服务器对感知节点位置进行尤为重视,通过客户端使用户得到节点位置和元数据等信息。云计算表格数据库和传统数据库不同,云计算具备较大的映射和排序量,属于稀疏分布类型。基于此模式的映射数据库为键-数据的映射模式,能够简化数据库结构。
2 平台的总体设计
2.1 平台总体框架
和海量数据的分布性、异构性与多样性结合,充分考虑系统的编程,通过MVC三层架构进行设计,具有清晰的结构,系统的扩展更加方便。显示层提供给用户良好、易用、方便的界面,利用页面对海量数据进行浏览,高级用户实现公共API接口的设置,实现系统的扩展;业务处理层能够处理海量海洋数据,并且配置海量数据和平台系统;数据资源库为平台设计过程中的重点,能够存储海量科学数据[2]。
图1:为MapReduee实现机制
图2:平台的整体框架
图3:管理节点函数调用结构
2.2 平台功能设计
对平台功能进行分析,划分系统的结构为:
数据访问层:存储海量的数据,在存取数据时并不是局限于某个数据操作,此层能够为不同元数据提供数据库,并且访问数据库,使系统满足海量数据处理需求,具备完备性与可扩展性。
数据处理层:为系统核心层,也是设计系统的重点。利用分布式数据库技术实现加载存储的功能,对海量数据进行存储,使处理之后数据在系统分布式数据库中存储,保证系统运行正常,图2为平台的整体框架。
3 云计算平台数据存储与文件管理的方式
3.1 分布式数据库体系结构
服务器体系结构能够使主从服务器架构需求得到满足,利用Master管理主服务器和节点服务器。通过表格的方式使客户端对数据进行读取,用户表都是通过主键区分数据集合。在物理结构存储过程中拆分多块表,每块都是一个节点,划分每个表作为多个节点。通过主键和表名区分节点,将数据节点保存在表中,在多节点中保存所有主键。通过节点服务器对节点进行管理,在客户端对数据访问时还要对节点服务器进行访问。将数据库数据在分布式文件系统中保存,利用节点服务器使用户得到数据,通过机器运行节点服务器,并且维护每个区段的节点。在对数据进行跟新的时候,要修改分配节点服务器,此修改写入到内存缓存日志和服务器中,并且保存更新数据,磁盘记录文件作为日志,对更新操作进行记录,在操作写入到日志后,要执行commit()才能够在客户端返回。
在对数据库读取时具有flushcache()和compact()两个函数,前者能够创建全新存储文件,使缓存需要更新数据在文件中写入;后者将全部文件合成一个大文件。另外的节点服务器对内存缓存进行访问,假如没有对数据缓存,就要存储到磁盘中。每个列族会存储大量的具体文件,利用B树结构对数据快速读取。
3.2 管理节点
云计算平台中,管理节点能够和客户端通信,对系统节点信息的存储进行管理,注册用户信息。利用云计算系统,用户能够将数据文件信息在子节点汇总存储,在对文件数据访问过程中,利用客户端程序得到子节点的IP,从而得到子节点文件。以下数据结构定义:
云计算平台子节点对用户文件信息和数据进行存储,用户名指的是各用户存储信息的文件名,在全部节点中实现子节点程序的运同步运行。通过客户端和子节点连接实现文件存储和访问,管理节点和子节点没有任何数据通信工作[3]。
管理节点能够对全局元数据进行维护,对文件完整性进行检查,备份文件块,在此过程中的信息包括括文件块、基本信息和节点目录等。通过硬盘、节点id与内存创建数据节点信息,其中文件块为块文件与用户文件在数据节点存储的名称。在对文件完整性进行检查的过程中,还要对系统启动过程检查。假如数据节点存在故障,就要维护系统。在备份文件块时,如果文件不满足备份需求,要求通过数据节点信息备份文件块。在日志功能中为了方便维护,系统要记录分块分析和文件目录信息。在进行初始化的时候对信息重新读取,在内存中创建分块表、目录表,图3为管理节点函数调用结构。
3.3 子节点
子节点要将文件块请求发送到客户端中,根据客户端id得到文件路径,对文件块进行发送和读取。处理客户端写文件块的情况,以文件块id读写数据位置,并且在文件块表中实现文件路径的读取,子节点能够执行客户端的命令,以下为结构体:
3.4 客户端
客户端能够服务客户,将终端提供给用户。利用系统定义结构使客户端创建文件和目录,对文件进行删除、重命名和移动等操作,还能够开展移动、重命名、删除等操作,还能够实现文件流式读写。将命令输入后,客户端在管理节点中实现用户请求的发送,利用管理节点得出文件块目录和信息,连接数据和信息节点。通过Linux环境运行子节点和主节点,利用所有子节点服务器实现子节点的运行,利用Windows环境窗口和用户机器实现测试。
3.5 数据隔离
对数据隔离技术重视,通过目录映射单向指针对用户进行隔离。通过单向指针树状结构构成此目录映射方式,系统访问权与目录层具有密切关系,无法和数据进行交叉计算。目录上层节点与下层节点相关,无法对上层节点访问。另外,最高访问权限为文件系统根目录,具备根目录无法分配任何应用。所有中心节点都是文件夹,对下级目录进行存储,无法对文件位置和文件进行存储。只有叶子结点数据结构才会对某文件具体存储位置与方式进行存储,此时每个应用在访问文件的时候都要通过权限目录层顺着单向指针到叶子节点,以此得到文件存储的信息。
此文件目录组织模式能够对用户数据进行隔离,利用目录映射单向性实现,无法隔离数据物理位置,不同的应用数据存储到物理中。此模式能够创建方便的文件隔离方式,在目录层分配之后,下级目录还要对不同应用进行分配。目录指针具备单向性的特点,所以下级目录无法逾越。实现永久自我分层,并且隔离企业用户,尤其是类似SaaS应用。
4 结束语
实现云计算数据存储和文件管理平台的设计,在普通计算机中创建,实现信息数据的高效存储和管理。目前,此云计算存储平台正在开发,系统具备良好易维护性、扩展性,系统使用的设计方法、技术路线是有效、可行的。