CN105373452B - 一种数据备份方法 - Google Patents
一种数据备份方法 Download PDFInfo
- Publication number
- CN105373452B CN105373452B CN201510918534.7A CN201510918534A CN105373452B CN 105373452 B CN105373452 B CN 105373452B CN 201510918534 A CN201510918534 A CN 201510918534A CN 105373452 B CN105373452 B CN 105373452B
- Authority
- CN
- China
- Prior art keywords
- file
- backup
- path
- file object
- archived
- 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.)
- Expired - Fee Related
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据备份方法,包括以下步骤:S1、发起完全备份请求;S2、遍历要完全备份的文件,保存将要完全备份的文件对象的路径,将文件对象的归档位设置为己归档状态,备份己遍历的文件对象的目录、文件信息和数据块,并保留己备份的完整文件对象;S3、发起增量备份请求;S4、遍历所有文件对象,并判断其归档位是否为己归档状态;若是,则忽略该文件对象及其下级文件对象;若否,则进入步骤S5;S5、保存将要增量备份的文件对象的路径保存在本地信息文件中,并将该文件对象的归档位设置为己归档状态,然后备份己遍历的文件对象的目录、文件信息和数据块到数据中心。简化了变更文件查找过程,提高了云存储文件对象增量备份的效率。
Description
技术领域
本发明涉及云存储领域,特别是涉及一种数据备份方法。
背景技术
随着云产业的迅猛发展,云存储产品已成为云服务中最基本的产品服务,而以企业网盘为例,已作为现在最热门的企业级云存储应用,也是各大IT巨头争相进入的产业。
通常我们说的“云存储”是指的“云对象存储”,用来存储非结构化数据,各大云计算厂商都实现了这一云计算基础设施。它将非结构化数据抽象成对象,即一个文件一个对象,基于HTTP协议提供增删改查接口(即API),以实现对非结构化数据的存储和操作。
现有的软硬件一体化产品,主要面向企业级用户,提供非结构化数据管理方案。它基于私有云存储,面向移动办公、桌面虚拟化、BYOD的客户提供私有文档云解决方案,打造组织的统一文档平台。
面对种类繁多的云存储产品和海量的存储数据,对于这些存储数据的备份保护已然成为一大难题,以往的数据增量备份通过与完全备份的文件属性信息或者块一致性来判断是否要进行增量备份,效率非常低,而且备份端还需要维护一份完全备份的文件属性信息副本用于做比较,一旦副本属性发生丢失,将导致云存储上的数据在备份时需要进行完全备份。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种数据备份方法,用于解决现有技术中漫长的文件对象属性比对的过程和额外的文件属性副本的占用空间、效率低的问题。
为实现上述目的及其他相关目的,本发明提供一种数据备份方法,包括以下步骤:S1、发起完全备份请求;S2、遍历要完全备份的文件,保存将要完全备份的文件对象的路径,并覆盖之前保存的文件对象的路径,将文件对象的归档位设置为已归档状态,备份已遍历的文件对象的目录、文件信息和数据块,并保留已备份的完整文件对象;S3、发起增量备份请求,并根据相应文件对象的路径从下往上依次将路径上的文件对象的归档位状态设置为未归档状态;S4、遍历所有文件对象,并判断其归档位是否为已归档状态;若是,则忽略该文件对象及其下级文件对象;若否,则进入步骤S5;S5、保存将要增量备份的文件对象的路径保存在本地信息文件中,并覆盖之前保存的文件对象的路径,并将该文件对象的归档位设置为已归档状态,然后备份已遍历的文件对象的目录、文件信息和数据块到数据中心。
于本发明的一实施例中,所述步骤S2还包括步骤:在完全备份过程中或完全备份结束后,若有文件对象发生变更,根据发生变更的文件对象的路径,从下往上依次将路径上的文件对象的归档位状态设置为未归档状态。
于本发明的一实施例中,所述步骤步骤S4还包括步骤:根据需要进行增量备份的文件对象的路径,从下往上依次将路径上的文件对象的归档位状态设置为未归档状态。
于本发明的一实施例中,所述数据备份方法还包括步骤:在完全备份或增量备份正常结束后,将本地信息文件中保存的文件对象的路径清除。
于本发明的一实施例中,所述数据备份方法还包括步骤:在完全备份或增量备份正常结束或异常中断后,保留已备份的完整的文件对象。
于本发明的一实施例中,所述步骤S1中还包括步骤:进行授权登录验证,验证通过后获取到用于验证操作请求的会话连接ID。
于本发明的一实施例中,所述步骤S3中还包括步骤:进行授权登录验证,验证通过后获取到用于验证操作请求的会话连接ID。
于本发明的一实施例中,所述步骤S2中还包括步骤:若完全备份过程中发生中断,则保存相应文件对象的路径。
于本发明的一实施例中,所述步骤S5中还包括步骤:若增量备份过程中发生中断,则保存相应文件对象的路径。
于本发明的一实施例中,所述遍历方式为深度优先的遍历方式。
如上所述,本发明的数据备份方法,具有以下有益效果:通过归档位标识来设置变更文件对象的方法,除去了漫长的文件对象属性比对的过程和额外的文件属性副本的占用空间,简化了变更文件查找过程,提高了云存储文件对象增量备份的效率。
附图说明
图1显示为本发明数据存储系统的一实施例中的流程方框示意图。
图2显示为本发明数据存储系统的一实施例中的云存储文件对象归档位状态变更演示示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
请参阅图1所示,图1显示为本发明数据存储系统的一实施例中的流程方框示意图。本发明提供了一种数据备份方法,包括以下步骤:
S1、发起完全备份请求;进一步地,发起完全备份请求后需要进行授权登录验证,验证通过后获取到用于验证操作请求的会话连接ID。在本发明的一实施例中,使用云存储公开接口的API来进行获取文件索引信息和对象数据块,然后进行完全备份实现对云存储文件对象的完全数据保护;在完全备份过程中,需要先进行授权登录云储存服务器,并在备份客户端Client中维持本次会话,直至本次备份正常结束或异常中断。备份客户端Client是用于发起与云储存进行信息交互和任务调度的程序,可以是运行在Windows或者Linux等操作系统下的一个进程或者线程。所述的授权登录验证成功后,返回备份客户端与云存储服务端的连接会话ID,该会话ID用于验证备份客户端和云存储服务端之间的操作请求。
S2、遍历要完全备份的文件,保存将要完全备份的文件对象的路径,并覆盖之前保存的文件对象的路径,将文件对象的归档位设置为已归档状态,备份已遍历的文件对象的目录、文件信息和数据块,并保留已备份的完整文件对象;进一步地,所述遍历方式为深度优先的遍历方式。在完全备份过程中或完全备份结束后,若有文件对象发生变更,根据发生变更的文件对象的路径,从下往上依次将路径上的文件对象的归档位状态设置为未归档状态。若完全备份过程中发生中断,则保存相应文件对象的路径。在本发明的一实施例中,为了能够正常索引到变更的文件对象,需要增加云存储文件对象归档位标识设置,需要云存储文件对象索引中对每个文件对象添加归档位属性,然后在完全备份中通过API设置当前备份的目录、文件对象的归档位为已归档状态。
S3、发起增量备份请求,并根据相应文件对象的路径从下往上依次将路径上的文件对象的归档位状态设置为未归档状态;进一步地,发起增量备份请求后需要进行授权登录验证,验证通过后获取到用于验证操作请求的会话连接ID。在本发明的一实施例中,使用云存储公开接口的API来进行获取文件索引信息和对象数据块,然后进行增量备份实现对云存储文件对象的完全数据保护;在增量备份过程中,需要先进行授权登录云储存服务器,并在备份客户端Client中维持本次会话,直至本次备份正常结束或异常中断。备份客户端Client是用于发起与云储存进行信息交互和任务调度的程序,可以是运行在Windows或者Linux等操作系统下的一个进程或者线程。所述的授权登录验证成功后,返回备份客户端与云存储服务端的连接会话ID,该会话ID用于验证备份客户端和云存储服务端之间的操作请求。
S4、遍历所有文件对象,并判断其归档位是否为已归档状态;若是,则忽略该文件对象及其下级文件对象;若否,则进入步骤S5;进一步地,所述遍历方式为深度优先的遍历方式。根据需要进行增量备份的文件对象的路径,从下往上依次将路径上的文件对象的归档位状态设置为未归档状态。
S5、保存将要增量备份的文件对象的路径保存在本地信息文件中,并覆盖之前保存的文件对象的路径,并将该文件对象的归档位设置为已归档状态,然后备份已遍历的文件对象的目录、文件信息和数据块到数据中心。进一步地,若增量备份过程中发生中断,则保存相应文件对象的路径。在本发明的一实施例中,在增量备份中对每个文件对象备份前先保留当前正在归档的路径到备份客户端的本地信息文件中,当下次增量备份发起时,先获取本地信息文件下保存的归档路径并调用API将该文件对象所在的路径,从下往上依次将归档位状态设置为未归档。为了满足当任务异常结束或停止的时候后续的增量备份能够继续备份上次未归档的文件对象,当增量备份发起时,先获取本地信息文件下保存的归档路径,并调用API将该文件对象所在的路径,从下往上依次将归档位状态设置为未归档;假设本地信息文件中保存的路径为A/B/C,则依次将C、B、A的归档位状态设置为未归档。
进一步地,所述数据备份方法还包括步骤:在完全备份或增量备份正常结束后,将本地信息文件中保存的文件对象的路径清除。需要在完全备份或增量备份中,将本地信息文件保存在备份客户端上,其作用为保存当前备份文件对象的路径,其保存的时机是在正在进行备份的当前云存储文件对象之前,当备份正常完成时,将清除该备份文件对象保存在本地信息文件中的路径。且在完全备份或增量备份正常结束或异常中断后,保留已备份的完整的文件对象。为了满足当任务异常结束或停止的时候已经备份的数据能够不丢失,数据中心需要保留已经备份的完整文件对象的数据。
以下以一种云存储产品为备份对象作为实施例进行说明。
此处云存储产品的文件对象包括目录和文件两种形式,并且以树状结构存储在服务端上;不妨假设服务端上存在的文件结构初始包括目录A、B、C、D以及文件E、F;如图2所示,图2显示为本发明数据存储系统的一实施例中的云存储文件对象归档位状态变更演示示意图。图2中0表示为未归档,1表示为已归档,箭头指向表示文件对象的归档状态变更过程。
因为增量备份基于完全备份,此处从完全备份过程开始进行描述:
步骤一、备份客户端发起完全备份请求;
步骤二、备份客户端通过服务端提供的API进行授权登录验证,验证通过后获取到会话连接ID用于其他操作请求;
步骤三、备份客户端通过服务端API,以深度优先的方式遍历服务端上文件对象;
步骤四、备份客户端将当前正要备份的这个文件对象的路径备份前先保存到客户端的本地信息文件中;
步骤五、备份客户端将当前遍历到的文件对象的归档位设置为已归档状态,然后备份该文件对象,完全备份文件对象的归档位状态变更过程及顺序如图2(当前的对象只有A、B、C、D、E、F)中的步骤1-1到步骤1-6所示;
步骤六、备份客户端将当前遍历到的文件对象的目录、文件信息以及该文件对象数据块存储到数据中心进行保护;
步骤七、重复步骤四、五、六直至本次备份正常结束或异常中断,备份正常结束将对本地信息文件中记录的文件对象路径进行清除,正常结束或者异常中断后,数据中心都将保留已备份的完整文件对象;
步骤八、备份过程中或者备份结束后,如果文件对象发生变更,需要将文件对象所在的路径,从下往上依次将归档位状态设置为未归档:如图2所示云存储完全备份结束后,在目录B下上传了新的文件G,G文件的归档位属性初始化为未归档状态,然后依次将目录B、A的归档位设置为未归档状态;文件对象发生变更后归档位状态变更过程及顺序如步骤2-1到2-2所示。
步骤九、完全备份过程结束后,后续的备份开始进行增量备份;
步骤十、备份客户端通过服务端API进行授权登录验证,验证通过后获取到会话连接ID用于其他操作请求;
步骤十一、备份客户端读取本地信息文件,如果该文件中存在文件对象路径,则调用API将该文件对象所在的路径,从下往上依次将归档位状态设置为未归档:如图2所示备份客户端本地信息文件中保存有文件F的路径,则说明上一次备份进行到文件F的时候异常中断,此时需要自下往上的将F、D、A的归档位设置为未归档状态,上一次备份异常中断后,归档位状态变更过程及顺序如步骤3-1到3-2所示;
步骤十二、备份客户端通过服务端API,以深度优先的方式遍历服务端上文件对象;
步骤十三、分析当前遍历到的文件对象的归档位状态是否为已归档,如果为已归档状态,则忽略该文件对象及其下级文件对象;如果为未归档状态,则按下述步骤操作:
1)备份客户端将当前正要备份的这个文件对象的路径备份前先保存到客户端的本地信息文件中;
2)备份客户端将当前遍历到的文件对象的归档位设置为已归档状态,然后备份该文件对象,图2增量备份过程中文件对象的归档位状态变更过程及顺序如步骤3-3到3-7所示;
3)将该文件对象的目录、文件信息以及文件对象数据块存储到数据中心进行保护;
步骤十四、重复步骤十三直至本次备份正常结束或异常中断,备份正常结束将对本地信息文件中记录的文件对象路径进行清除,正常结束或者异常中断后,数据中心都将保留已备份的完整文件对象。
综上所述,本发明的数据备份方法,通过归档位标识来设置变更文件对象的方法,除去了漫长的文件对象属性比对的过程和额外的文件属性副本的占用空间,简化了变更文件查找过程,提高了云存储文件对象增量备份的效率。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种数据备份方法,其特征在于,包括以下步骤:
S1、发起完全备份请求;
S2、遍历要完全备份的文件,保存将要完全备份的文件对象的路径,并覆盖之前保存的文件对象的路径,将文件对象的归档位设置为已归档状态,备份已遍历的文件对象的目录、文件信息和数据块,并保留已备份的完整文件对象;
S3、发起增量备份请求,并根据相应文件对象的路径从下往上依次将路径上的文件对象的归档位状态设置为未归档状态;
S4、遍历所有文件对象,并判断其归档位是否为已归档状态;若是,则忽略该文件对象及其下级文件对象;若否,则进入步骤S5;
S5、保存将要增量备份的文件对象的路径保存在本地信息文件中,并覆盖之前保存的文件对象的路径,并将该文件对象的归档位设置为已归档状态,然后备份已遍历的文件对象的目录、文件信息和数据块到数据中心;
其中,在增量备份中对每个文件对象备份前先保留当前正在归档的路径到备份客户端的本地信息文件中,当下次增量备份发起时,先获取本地信息文件下保存的归档路径并调用API将该文件对象所在的路径,从下往上依次将归档位状态设置为未归档;为了满足当任务异常结束或停止的时候后续的增量备份能够继续备份上次未归档的文件对象,当增量备份发起时,先获取本地信息文件下保存的归档路径,并调用API将该文件对象所在的路径,从下往上依次将归档位状态设置为未归档。
2.根据权利要求1所述的数据备份方法,其特征在于,所述步骤S2还包括步骤:在完全备份过程中或完全备份结束后,若有文件对象发生变更,根据发生变更的文件对象的路径,从下往上依次将路径上的文件对象的归档位状态设置为未归档状态。
3.根据权利要求1所述的数据备份方法,其特征在于,所述步骤S4还包括步骤:根据需要进行增量备份的文件对象的路径,从下往上依次将路径上的文件对象的归档位状态设置为未归档状态。
4.根据权利要求1所述的数据备份方法,其特征在于,所述数据备份方法还包括步骤:在完全备份或增量备份正常结束后,将本地信息文件中保存的文件对象的路径清除。
5.根据权利要求1所述的数据备份方法,其特征在于,所述数据备份方法还包括步骤:在完全备份或增量备份正常结束或异常中断后,保留已备份的完整的文件对象。
6.根据权利要求1所述的数据备份方法,其特征在于,所述步骤S1中还包括步骤:进行授权登录验证,验证通过后获取到用于验证操作请求的会话连接ID。
7.根据权利要求1所述的数据备份方法,其特征在于,所述步骤S3中还包括步骤:进行授权登录验证,验证通过后获取到用于验证操作请求的会话连接ID。
8.根据权利要求1所述的数据备份方法,其特征在于,所述步骤S2中还包括步骤:若完全备份过程中发生中断,则保存相应文件对象的路径。
9.根据权利要求1所述的数据备份方法,其特征在于,所述步骤S5中还包括步骤:若增量备份过程中发生中断,则保存相应文件对象的路径。
10.根据权利要求1至9任一项所述的数据备份方法,其特征在于,遍历方式为深度优先的遍历方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510918534.7A CN105373452B (zh) | 2015-12-11 | 2015-12-11 | 一种数据备份方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510918534.7A CN105373452B (zh) | 2015-12-11 | 2015-12-11 | 一种数据备份方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105373452A CN105373452A (zh) | 2016-03-02 |
CN105373452B true CN105373452B (zh) | 2019-02-01 |
Family
ID=55375673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510918534.7A Expired - Fee Related CN105373452B (zh) | 2015-12-11 | 2015-12-11 | 一种数据备份方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105373452B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106445529A (zh) * | 2016-09-27 | 2017-02-22 | 乐视控股(北京)有限公司 | 持续集成服务器的配置信息的备份方法及系统 |
CN110858123B (zh) * | 2018-08-23 | 2021-06-01 | 华为技术有限公司 | 一种计算备份文件大小的方法及装置 |
CN109597717B (zh) * | 2018-12-07 | 2020-12-25 | 北京金山云网络技术有限公司 | 一种数据备份、恢复方法、装置、电子设备及存储介质 |
CN111464502A (zh) * | 2020-03-10 | 2020-07-28 | 湖南文理学院 | 一种基于大数据平台的网络安全防护方法及系统 |
CN111831661A (zh) * | 2020-07-20 | 2020-10-27 | 江苏云柜网络技术有限公司 | 一种基于快递业务逻辑的数据库归档方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101158954A (zh) * | 2007-11-07 | 2008-04-09 | 上海爱数软件有限公司 | 一种在计算机存储中识别重复数据的方法 |
CN101453490A (zh) * | 2008-12-23 | 2009-06-10 | 上海爱数软件有限公司 | 一种合成备份方法和装置 |
CN101866305A (zh) * | 2010-05-21 | 2010-10-20 | 武汉大学 | 支持数据查询和快速恢复的连续数据保护方法及系统 |
CN103176867A (zh) * | 2013-04-02 | 2013-06-26 | 浪潮电子信息产业股份有限公司 | 一种快速文件差异备份方法 |
CN104714864A (zh) * | 2015-03-20 | 2015-06-17 | 成都云祺科技有限公司 | 一种计算机数据智能备份方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014040628A1 (en) * | 2012-09-13 | 2014-03-20 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for node realignment in a telecommunications network |
-
2015
- 2015-12-11 CN CN201510918534.7A patent/CN105373452B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101158954A (zh) * | 2007-11-07 | 2008-04-09 | 上海爱数软件有限公司 | 一种在计算机存储中识别重复数据的方法 |
CN101453490A (zh) * | 2008-12-23 | 2009-06-10 | 上海爱数软件有限公司 | 一种合成备份方法和装置 |
CN101866305A (zh) * | 2010-05-21 | 2010-10-20 | 武汉大学 | 支持数据查询和快速恢复的连续数据保护方法及系统 |
CN103176867A (zh) * | 2013-04-02 | 2013-06-26 | 浪潮电子信息产业股份有限公司 | 一种快速文件差异备份方法 |
CN104714864A (zh) * | 2015-03-20 | 2015-06-17 | 成都云祺科技有限公司 | 一种计算机数据智能备份方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105373452A (zh) | 2016-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105373452B (zh) | 一种数据备份方法 | |
CN110543464B (zh) | 一种应用于智慧园区的大数据平台及操作方法 | |
CN106506668B (zh) | 一种基于分布式存储实现对象存储的方法 | |
CN103136243B (zh) | 基于云存储的文件系统去重方法及装置 | |
EP2715971B1 (en) | Automating cloud service reconnections | |
US8805849B1 (en) | Enabling use of analytic functions for distributed storage system data | |
US10671284B2 (en) | Placement and movement of sub-units of a storage unit in a tiered storage environment | |
CN108132987A (zh) | 一种数据查询系统及方法 | |
CN105554133A (zh) | Http远程数据访问系统和方法 | |
CN106033393A (zh) | 一种应用程序测试方法及系统以及移动终端 | |
CN103414762B (zh) | 云备份方法和装置 | |
US9178860B2 (en) | Out-of-path, content-addressed writes with untrusted clients | |
US20150339350A1 (en) | Data-partitioned secondary index (dpsi) partition level join | |
CN108563697A (zh) | 一种数据处理方法、装置和存储介质 | |
US20130212122A1 (en) | System and Method for Controlling Access to a Database Object | |
CN111898007A (zh) | 一种变电站的三维场景模型构建系统及方法 | |
US20180129690A1 (en) | Schema-Free In-Graph Indexing | |
CN106909309B (zh) | 一种数据信息处理方法以及数据存储系统 | |
CN107483477B (zh) | 账户管理方法及账户管理系统 | |
CN105224541B (zh) | 数据的唯一性控制方法、信息存储方法及装置 | |
CN106250501A (zh) | 报表处理方法及报表系统 | |
CN108958659A (zh) | 一种分布式存储系统的小文件聚合方法、装置及介质 | |
EP3349416B1 (en) | Relationship chain processing method and system, and storage medium | |
CN111708601A (zh) | 一种面向云计算的智能存储网关、系统及其控制方法 | |
CN111552956A (zh) | 一种用于后台管理的角色权限控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190201 Termination date: 20191211 |
|
CF01 | Termination of patent right due to non-payment of annual fee |