1.一种文件存储方法,其特征在于,所述方法包括:
获取第一文件;
根据预设存储空间中上一次存储的文件的结束地址,将所述第一文件写入所述预设存储空间;
基于所述预设存储空间对应的多个树结构,记录所述第一文件的文件标识,以及所述预设存储空间中所述第一文件的起始地址;
其中,任一树结构用于在上一次基于其他树结构记录文件的文件标识和起始地址,且所述预设存储空间中上一次存储的文件的结束地址与当前的待存储文件的大小的和值,大于所述预设存储空间当前的最大地址空间的情况下,记录当前的待存储文件的文件标识和起始地址;
所述多个树结构包括第一树结构和第二树结构,且所述第一树结构为记录上一次存储的文件的文件标识和起始地址的树结构;
所述基于所述预设存储空间对应的多个树结构,记录所述第一文件的文件标识,以及所述预设存储空间中所述第一文件的起始地址,包括:判断所述预设存储空间中上一次存储的文件的结束地址与所述第一文件的大小的和值,是否大于所述预设存储空间当前的最大地址空间;
若所述预设存储空间中上一次存储的文件的结束地址与所述第一文件的大小的和值,大于所述预设存储空间当前的最大地址空间,则基于所述第二树结构,记录所述第一文件的文件标识,以及所述预设存储空间中所述第一文件的起始地址;
若所述预设存储空间中上一次存储的文件的结束地址与所述第一文件的大小的和值,不大于所述预设存储空间当前的最大地址空间,则将所述第一文件的文件标识,以及所述预设存储空间中所述第一文件的起始地址,记录在所述第一树结构中。
2.根据权利要求1所述的方法,其特征在于,所述根据预设存储空间中上一次存储的文件的结束地址,将所述第一文件写入所述预设存储空间,包括:若预设存储空间中上一次存储的文件的结束地址与所述第一文件的大小的和值,不大于所述预设存储空间当前的最大地址空间,则将所述第一文件写入上一次存储的文件之后;
若预设存储空间中上一次存储的文件的结束地址与所述第一文件的大小的和值,大于所述预设存储空间当前的最大地址空间,则在所述预设存储空间的起始位置处写入所述第一文件。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第二树结构,记录所述第一文件的文件标识,以及所述预设存储空间中所述第一文件的起始地址,包括:若当前所述第二树结构中记录有文件的文件标识和起始地址,则删除所述第二树结构中记录的数据,并将所述第一文件的文件标识,以及所述预设存储空间中所述第一文件的起始地址,记录在删除数据后的第二树结构中。
4.根据权利要求1所述的方法,其特征在于,所述预设存储空间包含:多个对所述预设存储空间所属的存储介质进行划分得到的存储块;
在所述根据预设存储空间中上一次存储的文件的结束地址,将所述第一文件写入所述预设存储空间之前,所述方法还包括:若预设存储空间中上一次存储的文件的结束地址与所述第一文件的大小的和值,大于所述预设存储空间当前的最大地址空间,则基于上一次存储的文件的结束地址与所述第一文件的大小的和值,以及所述预设存储空间当前的最大地址空间,从除所述预设存储空间包含的存储块以外的其他存储块中确定第一存储块;
其中,上一次存储的文件的结束地址与所述第一文件的大小的和值,不大于所述预设存储空间当前的最大地址空间与所述第一存储块的大小的和值;
在所述预设存储空间中添加所述第一存储块。
5.根据权利要求4所述的方法,其特征在于,在所述从除所述预设存储空间包含的存储块以外的其他存储块中确定第一存储块之后,所述方法还包括:基于所述预设存储空间当前的最大地址空间,确定所述第一存储块的空间地址。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当需要缩减所述预设存储空间时,释放所述预设存储空间中的第二存储块。
7.根据权利要求1‑6任一项所述的方法,其特征在于,所述第一文件的文件标识为所述第一文件的文件名的哈希值。
8.一种文件读取方法,其特征在于,所述方法包括:
接收针对第二文件的文件读取请求;
基于预设存储空间对应的多个树结构和所述第二文件的文件标识,从所述预设存储空间中获取所述第二文件;
其中,在文件存储的过程中,任一树结构用于在上一次基于其他树结构记录文件的文件标识和起始地址,且所述预设存储空间中上一次存储的文件的结束地址与当前的待存储文件的大小的和值,大于所述预设存储空间当前的最大地址空间的情况下,记录当前的待存储文件的文件标识和起始地址;
当前的待存储文件为根据预设存储空间中上一次存储的文件的结束地址写入所述预设存储空间的;
所述预设存储空间对应的多个树结构用于记录当前的待存储文件的文件标识,以及所述预设存储空间中当前的待存储文件的起始地址;
所述多个树结构包括第一树结构和第二树结构,且所述第一树结构为记录上一次存储的文件的文件标识和起始地址的树结构;
所述第二树结构用于在所述预设存储空间中上一次存储的文件的结束地址与当前的待存储文件的大小的和值,大于所述预设存储空间当前的最大地址空间的情况下,记录当前的待存储文件的文件标识,以及所述预设存储空间中当前的待存储文件的起始地址;
所述第一树结构用于在所述预设存储空间中上一次存储的文件的结束地址与当前的待存储文件的大小的和值,不大于所述预设存储空间当前的最大地址空间的情况下,记录当前的待存储文件的文件标识,以及所述预设存储空间中当前的待存储文件的起始地址。
9.根据权利要求8所述的方法,其特征在于,所述基于预设存储空间对应的多个树结构和所述第二文件的文件标识,从所述预设存储空间中获取所述第二文件,包括:在所述多个树结构中的第一树结构中,查询所述第二文件的文件标识对应的起始地址,作为第一起始地址;
若所述预设存储空间中所述第一起始地址处存在有效文件,且该有效文件的文件名与所述文件读取请求中携带的文件名一致,则确定该有效文件为第二文件。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
若所述预设存储空间中所述第一起始地址处不存在有效文件,或者,所述第一起始地址处的有效文件的文件名与所述文件读取请求中携带的文件名不一致,则在所述多个树结构中的第二树结构中,查询所述第二文件的文件标识对应的起始地址,作为第二起始地址;
若所述预设存储空间中所述第二起始地址处的有效文件的文件名,与所述文件读取请求中携带的文件名一致,则确定该有效文件为第二文件。
11.根据权利要求9所述的方法,其特征在于,所述第一树结构为记录上一次存储的文件的文件标识和起始地址的树结构。
12.根据权利要求9所述的方法,其特征在于,所述预设存储空间包含:多个对所述预设存储空间所属的存储介质进行划分得到的存储块;
在若所述预设存储空间中所述第一起始地址处存在有效文件,且该有效文件的文件名与所述文件读取请求中携带的文件名一致,则确定该有效文件为第二文件之前,所述方法还包括:判断所述预设存储空间中是否存在所述第一起始地址对应的目标存储块;
若存在,则基于所述目标存储块中存储的数据,判断所述预设存储空间中所述第一起始地址处是否存在有效文件。
13.根据权利要求8所述的方法,其特征在于,在所述基于预设存储空间对应的多个树结构和所述第二文件的文件标识,从所述预设存储空间中获取所述第二文件之前,所述方法还包括:计算所述文件读取请求中携带的文件名的哈希值,得到所述第二文件的文件标识。
14.一种存储设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1‑7,或8‑13任一所述的方法步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1‑7,或8‑13任一所述的方法步骤。