CN111274210B - 元数据处理方法、装置及电子设备 - Google Patents
元数据处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111274210B CN111274210B CN202010085229.5A CN202010085229A CN111274210B CN 111274210 B CN111274210 B CN 111274210B CN 202010085229 A CN202010085229 A CN 202010085229A CN 111274210 B CN111274210 B CN 111274210B
- Authority
- CN
- China
- Prior art keywords
- editing
- metadata
- log
- log entry
- edit
- 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
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/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
-
- 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/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/162—Delete operations
-
- 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/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- 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/18—File system types
- G06F16/182—Distributed file systems
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)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开是关于一种元数据处理方法、装置、电子设备和计算机可读存储介质。其中元数据处理方法应用于元数据服务器,元数据服务器包括非易失性内存,该方法包括:响应于接收到元数据编辑请求,在编辑日志中生成与元数据编辑请求指示的编辑操作信息相关的编辑日志条目;基于编辑日志条目,根据编辑日志条目相关的编辑操作信息来编辑非易失性内存中存储的原始元数据,以获得更新后的元数据;在对原始元数据编辑成功之后,从编辑日志中删除编辑日志条目。通过使用非易失性内存来存储元数据,提高了分布式文件系统的性能。
Description
技术领域
本公开涉及分布式文件系统领域,尤其涉及分布式文件系统的元数据处理方法、元数据处理装置及电子设备和计算机可读存储介质。
背景技术
在典型的分布式文件系统中,会有元数据服务器、数据服务器以及客户端。元数据服务器保存文件系统的“元”信息。这些信息大体可以分为三类,第一类是名字空间信息,所谓名字空间就是文件系统目录的树状结构,在实际实现中,根目录会有一个固定的位置,然后从根目录开始,每个目录保存一个指向它的所有子目录或文件的索引指针,通过这些索引指针就组织起了整个文件系统的名字空间,使得可以从根目录一层一层找到任意目录或文件;第二类是属性信息,即目录或文件的各种属性数据,比如创建时间、最后修改时间、访问控制权限、文件所有者等;第三类信息是文件数据的位置信息,每个文件的数据分割成一个个固定大小的“块”(文件最后一个块的大小可能小于或等于该固定大小),而每个块的副本可能分布在多个数据节点上,元数据服务器会记录各个副本所在的节点。
在通常的分布式文件系统的实现中,元数据信息都保存在内存(DRAM)中。包含元数据信息的内存在应用程序或服务器重启或关闭后内容会消失。
发明内容
为克服相关技术中存在的问题,本公开提供一种元数据处理方法、元数据处理装置及电子设备和计算机可读存储介质。
根据本公开实施例的第一方面,提供一种元数据处理方法,该方法应用于元数据服务器,元数据服务器包括非易失性内存,所述方法包括:响应于接收到元数据编辑请求,在编辑日志中生成与所述元数据编辑请求指示的编辑操作信息相关的编辑日志条目;基于所述编辑日志条目,根据所述编辑日志条目相关的所述编辑操作信息来编辑所述非易失性内存中存储的原始元数据,以获得更新后的元数据;在对所述原始元数据编辑成功之后,从所述编辑日志中删除所述编辑日志条目。
在一实施例中,所述方法还包括:在所述元数据服务器或与所述元数据编辑请求相关的应用程序重启时,判断所述编辑日志中是否存在保留的编辑日志条目;在存在保留的编辑日志条目的情况下,根据所述保留的编辑日志条目相关的编辑操作信息来编辑所述非易失性内存中存储的所述原始元数据,以获得更新后的元数据。
在一实施例中,判断所述编辑日志中是否存在保留的编辑日志条目包括:判断所述编辑日志中是否存在编辑日志条目;在不存在编辑日志条目的情况下,判断所述编辑日志中不存在保留的编辑日志条目;在存在编辑日志条目的情况下,判断存在的编辑日志条目是否完整;如果所述存在的编辑日志条目完整,则确定所述编辑日志中存在保留的编辑日志条目;如果所述存在的编辑日志条目不完整,则确定所述编辑日志中不存在保留的编辑日志条目,并且丢弃不完整的编辑日志条目。
在一实施例中,所述方法还包括:判断所述更新后的元数据与所述编辑操作信息的预期编辑结果是否一致;在判断所述更新后的元数据与所述编辑操作信息的预期编辑结果一致的情况下,确定对所述原始元数据编辑成功。
在一实施例中,所述编辑日志存储在非易失性内存和/或持久存储器上。
在一实施例中,所述方法应用于分布式文件系统。
根据本公开实施例的第二方面,提供一种元数据处理装置,该装置应用于元数据服务器,元数据服务器包括非易失性内存,该装置包括:编辑日志条目生成单元,用于响应于接收到元数据编辑请求,在编辑日志中生成与所述元数据编辑请求指示的编辑操作信息相关的编辑日志条目;第一编辑操作执行单元,用于基于所述编辑日志条目,根据所述编辑日志条目相关的所述编辑操作信息来编辑所述非易失性内存中存储的原始元数据,以获得更新后的元数据;编辑日志条目删除单元,用于在对所述原始元数据编辑成功之后,从所述编辑日志中删除所述编辑日志条目。
在一实施例中,所述装置还包括:保留编辑日志条目判断单元,用于在所述元数据服务器或与所述元数据编辑请求相关的应用程序重启时,判断所述编辑日志中是否存在保留的编辑日志条目;第二编辑操作执行单元,用于在所述保留编辑日志条目判断单元判断存在保留的编辑日志条目的情况下,根据所述保留的编辑日志条目相关的编辑操作信息来编辑所述非易失性内存中存储的所述原始元数据,以获得更新后的元数据。
在一实施例中,所述保留编辑日志条目判断单元还用于:判断所述编辑日志中是否存在编辑日志条目;在不存在编辑日志条目的情况下,判断所述编辑日志中不存在保留的编辑日志条目;在存在编辑日志条目的情况下,判断存在的编辑日志条目是否完整;如果所述存在的编辑日志条目完整,则确定所述编辑日志中存在保留的编辑日志条目;如果所述存在的编辑日志条目不完整,则确定所述编辑日志中不存在保留的编辑日志条目,并且丢弃不完整的编辑日志条目。
在一实施例中,所述装置还包括编辑结果判断单元,用于判断所述更新后的元数据与所述编辑操作信息的预期编辑结果是否一致;在判断所述更新后的元数据与所述编辑操作信息的预期编辑结果一致的情况下,确定对所述原始元数据编辑成功。
在一实施例中,所述编辑日志存储在非易失性内存和/或持久存储器上。
在一实施例中,所述装置应用于分布式文件系统。
根据本公开实施例的第三方面,提供一种电子设备,包括:存储器,用于存储指令;以及处理器,用于调用存储器存储的指令执行第一方面的元数据处理方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,存储有指令,指令被处理器执行时,执行第一方面的元数据处理方法。
本公开的实施例提供的技术方案可以包括以下有益效果:通过使用非易失性内存来存储元数据,内存中存储的元数据在应用或机器关闭后不会丢失。元数据服务器重新启动的时候可以从非易失性内存直接恢复关机时刻的内容,提高了分布式文件系统的性能。另外,通过编辑日志的方式对非易失性内存中的元数据进行编辑,能够保证文件系统各种元数据之间的一致性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是根据一示例性实施例示出的一种元数据处理方法的流程示意图;
图2是根据一示例性实施例示出的一种元数据处理装置的示意框图;
图3是根据一示例性实施例示出的一种装置的示意框图;
图4是根据一示例性实施例示出的一种电子设备的示意框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
通常,元数据服务器可以定期将内存的内容做快照(checkpoint),并将快照内容写到持久磁盘上。当元数据服务器宕机后重新启动的时候,它会从持久磁盘找到最近一次快照,读入到内存,这样之后元数据服务器内存中的内容就和元数据服务器宕机之前内存中的内容一致了。然而,生成快照,以及启动时读入并解析快照,这些操作会降低元数据服务器的性能。
图1是根据一示例性实施例示出的一种元数据处理方法10的流程示意图。元数据处理方法10可以应用于元数据服务器,元数据服务器包括非易失性内存。
作为本公开的一个实施方式,元数据处理方法10可以应用于分布式文件系统。
如图1所示,元数据处理方法10可以包括步骤S11-S13。
在步骤S11中,响应于接收到元数据编辑请求,在编辑日志中生成与元数据编辑请求指示的编辑操作信息相关的编辑日志条目。
在一些实施方式中,元数据服务器接收到的元数据编辑请求可以来自于分布式文件系统中的其他设备,例如数据服务器、客户端或者另一元数据服务器,也可以来自于用户通过元数据服务器输入的请求。作为示例,元数据服务器以及与其相关联的其他设备可以在某一应用程序的场景下进行连接和通信。
在一些实施方式中,在编辑日志中生成编辑日志条目可以包括在已有的编辑日志中新建编辑日志条目,也可以包括创建编辑日志,然后在新创建的编辑日志中建立编辑日志条目。本公开在此方面不做限制。
在一些实施方式中,元数据编辑请求所涉及的对文件系统的修改,可能会涉及多个元数据的修改。作为示例,元数据编辑请求涉及在某个目录下创建一个文件,那么元数据编辑请求所指示的编辑操作信息可能包括:创建新的文件、修改目录包含指向新文件的索引指针、修改目录的最后修改时间等。作为另一示例,元数据编辑请求涉及删除某个目录下的一个文件,那么元数据编辑请求所指示的编辑操作信息可能包括:删除文件、修改目录中指向该文件的索引指针、修改目录的最后修改时间等。作为又一示例,元数据编辑请求涉及修改某个目录下的一个文件,那么元数据编辑请求所指示的编辑操作信息可能包括:修改文件、修改文件的最后修改时间等。
在步骤S12中,基于编辑日志条目,根据编辑日志条目相关的编辑操作信息来编辑非易失性内存中存储的原始元数据,以获得更新后的元数据。
在步骤S13中,在对原始元数据编辑成功之后,从编辑日志中删除编辑日志条目。
通过在编辑操作全部完成之后,删除(或称回收)该编辑日志条目,释放该编辑日志条目的存储资源,可以避免编辑日志无限制的增大,可以节省存储资源。缩小了编辑日志的容量,还有利于对编辑日志的快速读取,提高运行效率。另外,如果发生了机器或应用程序的关闭和重启,则重启之后,只需针对保留的条目进行处理即可,减少了操作复杂度。
通过元数据处理方法10,使用非易失性内存来存储元数据,内存中存储的元数据在应用或机器关闭后不会丢失。元数据服务器可以直接读取非易失性内存中存储的元数据,并且根据元数据编辑请求来对非易失性内存中存储的元数据进行编辑,节省了数据处理的资源和时间,提高了分布式文件系统的性能。
另外,在上文所述的在某个目录下创建一个文件的示例的情况下,如果不采用编辑日志,而是根据元数据编辑请求直接对非易失性内存中存储的元数据进行修改,那么有可能出现如这样的情况,例如,刚创建了新文件,尚未修改父目录包含指向新文件的索引指针,元数据服务器发生了关闭和重启,这时候文件系统会有新文件,但是从根目录无法一层一层找到这个文件。这样就造成了由于关机和重启而导致的不一致。利用元数据处理方法10,通过先记录编辑日志,再对非易失性内存中的元数据进行真实编辑,能够保证文件系统各种元数据之间的一致性。
作为本公开的一个实施方式,方法10还可以包括:在元数据服务器或与元数据编辑请求相关的应用程序重启时,判断编辑日志中是否存在保留的编辑日志条目;在存在保留的编辑日志条目的情况下,根据保留的编辑日志条目相关的编辑操作信息来编辑非易失性内存中存储的原始元数据,以获得更新后的元数据。
可以理解的是,在执行完上述两个步骤之后,方法10随后可以执行上述步骤S13,即,在对元数据执行编辑之后,如果编辑成功则删除该编辑日志条目。
在一些实施方式中,在编辑日志中生成与元数据编辑请求指示的编辑操作信息相关的编辑日志条目之后并且在根据编辑日志条目相关的编辑操作信息来编辑非易失性内存中存储的原始元数据全部完成之前,元数据服务器关机或者与元数据编辑请求相关的应用程序关闭时,由于针对当前元数据编辑请求的编辑操作没有全部完成,所以编辑日志条目没有被删除,将会仍然保留在编辑日志中。在服务器或应用程序重启时,如果判断编辑日志中存在保留的编辑日志条目,则可以确定在服务器关机或应用程序关闭之前,该保留的编辑日志条目相关的编辑操作没有完成,那么根据该保留的编辑日志条目相关的编辑操作信息,对非易失性内存中存储的原始元数据重新进行编辑。
简言之,如果编辑日志条目已经写完,但所涉及的元数据编辑操作没有做完,则重启之后根据编辑日志条目重新编辑一次元数据。
在一些实施方式中,在编辑日志中生成与元数据编辑请求指示的编辑操作信息相关的编辑日志条目之后并且在根据编辑日志条目相关的编辑操作信息来编辑非易失性内存中存储的原始元数据全部完成之前可以包括以下两个时期:在生成编辑日志条目之后并且尚未开始执行编辑操作之前;以及在执行编辑操作的过程期间。
在一些实施方式中,元数据服务器关机可以包括正常关机和非正常关机。非正常关机例如硬件故障或软件故障导致的掉电、死机(或称宕机)等。类似地,应用程序关闭也可以包括正常关闭或非正常关闭。
元数据服务器重新启动的时候可以从非易失性内存直接恢复关机或程序关闭时刻的内容,不需要通过快照来恢复,从而不需要定期生成快照并写入持久磁盘以及重启时从持久磁盘加载快照并解析,进一步节省了数据处理的资源和时间,进一步提高了分布式文件系统的性能。
作为本公开的一个实施方式,判断编辑日志中是否存在保留的编辑日志条目包括:判断编辑日志中是否存在编辑日志条目;在不存在编辑日志条目的情况下,判断编辑日志中不存在保留的编辑日志条目;在存在编辑日志条目的情况下,判断存在的编辑日志条目是否完整;如果存在的编辑日志条目完整,则确定编辑日志中存在保留的编辑日志条目;如果存在的编辑日志条目不完整,则确定编辑日志中不存在保留的编辑日志条目,并且丢弃不完整的编辑日志条目。
换言之,如果编辑日志条目写完之前发生元数据服务器关机或者应用程序关闭,则可能生成不完整的编辑日志条目。丢弃未记录完的不完整条目,可以保证文件系统的元数据之间的一致性。
在一些实施方式中,验证编辑日志条目的完整性可以通过多种机制实现。例如,可以在编辑日志条目的开始和结束位置分别设置开始符和结束符,如果一条日志的开始符和结束符中的任一个缺失,就可以判断该日志不完整。又例如,可以添加一个指示条目长度的字段,如果条目的实际长度小于该指示长度,那么可以判断该条目不完整。条目的长度可以是条目所占的字符数等。
作为本公开的一个实施方式,元数据处理方法10还可以包括:判断更新后的元数据与编辑操作信息的预期编辑结果是否一致;在判断更新后的元数据与编辑操作信息的预期编辑结果一致的情况下,确定对原始元数据编辑成功。也即,判断针对当前元数据编辑请求所指示的编辑操作信息的操作是否已全部正确完成,如果已全部正确完成,则确定编辑成功。
通过上述根据编辑操作信息的预期编辑结果来判断针对原始元数据的编辑是否成功的步骤,可以防止在对原始元数据编辑有误的情况下误删了编辑日志条目造成损失,提高了文件系统中数据的一致性。
在一些实施方式中,可以在与元数据编辑请求指示的编辑操作信息相关的编辑日志条目完整生成之后,再开始对非易失性内存中存储的元数据执行编辑操作。通过进一步约束记录编辑日志和开始执行编辑操作的时间,在将编辑操作信息都记录完毕之后再开始对元数据执行相应操作,可以进一步保证文件系统各种元数据之间的一致性。
作为本公开的一个实施方式,编辑日志存储在非易失性内存和/或持久存储器上。例如,持久存储器可以包括持久磁盘等等。持久存储器可以在元数据服务器内部,也可以与元数据服务器可通信地连接。编辑日志存储在持久存储器上,不会因元数据服务器的关机重启而消失,有利于元数据服务器在任何情况下读取编辑日志。
图2是根据一示例性实施例示出的一种元数据处理装置100的示意框图。装置100应用于元数据服务器,元数据服务器包括非易失性内存。
如图2所示,装置100可以包括编辑日志条目生成单元110、第一编辑操作执行单元120和编辑日志条目删除单元130。
编辑日志条目生成单元110可以用于响应于接收到元数据编辑请求,在编辑日志中生成与元数据编辑请求指示的编辑操作信息相关的编辑日志条目。
第一编辑操作执行单元120可以用于基于编辑日志条目,根据编辑日志条目相关的编辑操作信息来编辑非易失性内存中存储的原始元数据,以获得更新后的元数据。
编辑日志条目删除单元130可以用于在对原始元数据编辑成功之后,从编辑日志中删除编辑日志条目。
作为本公开的一个实施方式,装置100还可以包括:保留编辑日志条目判断单元,用于在元数据服务器或与元数据编辑请求相关的应用程序重启时,判断编辑日志中是否存在保留的编辑日志条目;第二编辑操作执行单元,用于在保留编辑日志条目判断单元判断存在保留的编辑日志条目的情况下,根据保留的编辑日志条目相关的编辑操作信息来编辑非易失性内存中存储的原始元数据,以获得更新后的元数据。
作为本公开的一个实施方式,保留编辑日志条目判断单元还用于:判断编辑日志中是否存在编辑日志条目;在不存在编辑日志条目的情况下,判断编辑日志中不存在保留的编辑日志条目;在存在编辑日志条目的情况下,判断存在的编辑日志条目是否完整;如果存在的编辑日志条目完整,则确定编辑日志中存在保留的编辑日志条目;如果存在的编辑日志条目不完整,则确定编辑日志中不存在保留的编辑日志条目,并且丢弃不完整的编辑日志条目。
作为本公开的一个实施方式,装置100还可以包括编辑结果判断单元,其可以用于判断更新后的元数据与编辑操作信息的预期编辑结果是否一致;在判断更新后的元数据与编辑操作信息的预期编辑结果一致的情况下,确定对原始元数据编辑成功。
作为本公开的一个实施方式,编辑日志可以存储在非易失性内存和/或持久存储器上。
作为本公开的一个实施方式,装置100可以应用于分布式文件系统。
装置100中的各个单元所执行的操作与上述元数据处理方法10中的各个步骤相对应,因此装置100的进一步细节及其有益效果请参见上文对元数据处理方法10的描述,在此不再赘述。
图3是根据一示例性实施例示出的前述任一实施例装置的示意框图。例如,装置300可以是服务器,移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图3,装置300可以包括以下一个或多个组件:处理组件302,存储器304,电力组件306,多媒体组件308,音频组件310,输入/输出(I/O)的接口312,传感器组件314,以及通信组件316。
处理组件302通常控制装置300的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件302可以包括一个或多个处理器320来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件302可以包括一个或多个模块,便于处理组件302和其他组件之间的交互。例如,处理组件302可以包括多媒体模块,以方便多媒体组件308和处理组件302之间的交互。
存储器304被配置为存储各种类型的数据以支持在装置300的操作。这些数据的示例包括用于在装置300上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器304可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电力组件306为装置300的各种组件提供电力。电力组件306可以包括电源管理系统,一个或多个电源,及其他与为装置300生成、管理和分配电力相关联的组件。
多媒体组件308包括在所述装置300和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件308包括一个前置摄像头和/或后置摄像头。当设备300处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件310被配置为输出和/或输入音频信号。例如,音频组件310包括一个麦克风(MIC),当装置300处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器304或经由通信组件316发送。在一些实施例中,音频组件310还包括一个扬声器,用于输出音频信号。
I/O接口312为处理组件302和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件314包括一个或多个传感器,用于为装置300提供各个方面的状态评估。例如,传感器组件314可以检测到装置300的打开/关闭状态,组件的相对定位,例如所述组件为装置300的显示器和小键盘,传感器组件314还可以检测装置300或装置300一个组件的位置改变,用户与装置300接触的存在或不存在,装置300方位或加速/减速和装置300的温度变化。传感器组件314可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件314还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件314还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件316被配置为便于装置300和其他设备之间有线或无线方式的通信。装置300可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件316经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件316还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置300可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器304,上述指令可由装置300的处理器320执行以完成上述方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图4是根据一示例性实施例示出的一种电子设备400的框图。例如,装置400可以被提供为一服务器。参照图4,装置400包括处理组件422,其进一步包括一个或多个处理器,以及由存储器432所代表的存储器资源,用于存储可由处理组件422的执行的指令,例如应用程序。存储器432中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件422被配置为执行指令,以执行上述方法。
装置400还可以包括一个电源组件426被配置为执行装置300的电源管理,一个有线或无线网络接口450被配置为将装置400连接到网络,和一个输入输出(I/O)接口458。装置400可以操作基于存储在存储器432的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
Claims (14)
1.一种元数据处理方法,其特征在于,所述方法应用于元数据服务器,所述元数据服务器包括非易失性内存,所述方法包括:
响应于接收到元数据编辑请求,在编辑日志中生成与所述元数据编辑请求指示的编辑操作信息相关的编辑日志条目;
基于所述编辑日志条目,根据所述编辑日志条目相关的所述编辑操作信息来编辑所述非易失性内存中存储的原始元数据,以获得更新后的元数据;
在对所述原始元数据编辑成功之后,从所述编辑日志中删除所述编辑日志条目。
2.根据权利要求1所述的元数据处理方法,其特征在于,所述方法还包括:
在所述元数据服务器或与所述元数据编辑请求相关的应用程序重启时,判断所述编辑日志中是否存在保留的编辑日志条目;
在存在保留的编辑日志条目的情况下,根据所述保留的编辑日志条目相关的编辑操作信息来编辑所述非易失性内存中存储的所述原始元数据,以获得更新后的元数据。
3.根据权利要求2所述的元数据处理方法,其特征在于,判断所述编辑日志中是否存在保留的编辑日志条目包括:
判断所述编辑日志中是否存在编辑日志条目;
在不存在编辑日志条目的情况下,判断所述编辑日志中不存在保留的编辑日志条目;
在存在编辑日志条目的情况下,判断存在的编辑日志条目是否完整;
如果所述存在的编辑日志条目完整,则确定所述编辑日志中存在保留的编辑日志条目;
如果所述存在的编辑日志条目不完整,则确定所述编辑日志中不存在保留的编辑日志条目,并且丢弃不完整的编辑日志条目。
4.根据权利要求1所述的元数据处理方法,其特征在于,所述方法还包括:
判断所述更新后的元数据与所述编辑操作信息的预期编辑结果是否一致;
在判断所述更新后的元数据与所述编辑操作信息的预期编辑结果一致的情况下,确定对所述原始元数据编辑成功。
5.根据权利要求1所述的元数据处理方法,其特征在于,所述编辑日志存储在非易失性内存和/或持久存储器上。
6.根据权利要求1所述的元数据处理方法,其特征在于,所述方法应用于分布式文件系统。
7.一种元数据处理装置,其特征在于,所述装置应用于元数据服务器,所述元数据服务器包括非易失性内存,所述装置包括:
编辑日志条目生成单元,用于响应于接收到元数据编辑请求,在编辑日志中生成与所述元数据编辑请求指示的编辑操作信息相关的编辑日志条目;
第一编辑操作执行单元,用于基于所述编辑日志条目,根据所述编辑日志条目相关的所述编辑操作信息来编辑所述非易失性内存中存储的原始元数据,以获得更新后的元数据;
编辑日志条目删除单元,用于在对所述原始元数据编辑成功之后,从所述编辑日志中删除所述编辑日志条目。
8.根据权利要求7所述的元数据处理装置,其特征在于,所述装置还包括:
保留编辑日志条目判断单元,用于在所述元数据服务器或与所述元数据编辑请求相关的应用程序重启时,判断所述编辑日志中是否存在保留的编辑日志条目;
第二编辑操作执行单元,用于在所述保留编辑日志条目判断单元判断存在保留的编辑日志条目的情况下,根据所述保留的编辑日志条目相关的编辑操作信息来编辑所述非易失性内存中存储的所述原始元数据,以获得更新后的元数据。
9.根据权利要求8所述的元数据处理装置,其特征在于,所述保留编辑日志条目判断单元还用于:
判断所述编辑日志中是否存在编辑日志条目;
在不存在编辑日志条目的情况下,判断所述编辑日志中不存在保留的编辑日志条目;
在存在编辑日志条目的情况下,判断存在的编辑日志条目是否完整;
如果所述存在的编辑日志条目完整,则确定所述编辑日志中存在保留的编辑日志条目;
如果所述存在的编辑日志条目不完整,则确定所述编辑日志中不存在保留的编辑日志条目,并且丢弃不完整的编辑日志条目。
10.根据权利要求7所述的元数据处理装置,其特征在于,所述装置还包括编辑结果判断单元,用于:
判断所述更新后的元数据与所述编辑操作信息的预期编辑结果是否一致;
在判断所述更新后的元数据与所述编辑操作信息的预期编辑结果一致的情况下,确定对所述原始元数据编辑成功。
11.根据权利要求7所述的元数据处理装置,其特征在于,所述编辑日志存储在非易失性内存和/或持久存储器上。
12.根据权利要求7所述的元数据处理装置,其特征在于,所述装置应用于分布式文件系统。
13.一种电子设备,其特征在于,包括:
存储器,用于存储指令;以及
处理器,用于调用所述存储器存储的指令执行如权利要求1至6中任一项所述的元数据处理方法。
14.一种计算机可读存储介质,其特征在于,存储有指令,所述指令被处理器执行时,执行如权利要求1至6中任一项所述的元数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010085229.5A CN111274210B (zh) | 2020-02-10 | 2020-02-10 | 元数据处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010085229.5A CN111274210B (zh) | 2020-02-10 | 2020-02-10 | 元数据处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111274210A CN111274210A (zh) | 2020-06-12 |
CN111274210B true CN111274210B (zh) | 2023-05-30 |
Family
ID=71003743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010085229.5A Active CN111274210B (zh) | 2020-02-10 | 2020-02-10 | 元数据处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111274210B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9020987B1 (en) * | 2011-06-29 | 2015-04-28 | Emc Corporation | Managing updating of metadata of file systems |
CN104978336A (zh) * | 2014-04-08 | 2015-10-14 | 云南电力试验研究院(集团)有限公司电力研究院 | 基于Hadoop分布式计算平台的非结构化数据存储系统 |
CN109582658A (zh) * | 2018-12-03 | 2019-04-05 | 郑州云海信息技术有限公司 | 一种分布式文件系统实现数据一致性的方法及装置 |
-
2020
- 2020-02-10 CN CN202010085229.5A patent/CN111274210B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9020987B1 (en) * | 2011-06-29 | 2015-04-28 | Emc Corporation | Managing updating of metadata of file systems |
CN104978336A (zh) * | 2014-04-08 | 2015-10-14 | 云南电力试验研究院(集团)有限公司电力研究院 | 基于Hadoop分布式计算平台的非结构化数据存储系统 |
CN109582658A (zh) * | 2018-12-03 | 2019-04-05 | 郑州云海信息技术有限公司 | 一种分布式文件系统实现数据一致性的方法及装置 |
Non-Patent Citations (1)
Title |
---|
战科宇 ; 李小勇 ; 刘海涛 ; .分布式文件系统元数据服务器高可用性设计.小型微型计算机系统.2013,(04),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN111274210A (zh) | 2020-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020192311A1 (zh) | 主从服务器切换方法、装置、电子设备及存储介质 | |
CN109976668A (zh) | 数据删除方法、数据删除装置和计算机可读存储介质 | |
CN114791961A (zh) | 媒体数据处理方法、装置及终端设备 | |
CN111274205B (zh) | 数据块访问方法及装置、存储介质 | |
CN116048644A (zh) | 一种系统迁移方法、装置和可读存储介质 | |
CN115982024A (zh) | 测试脚本生成方法、设备、存储介质及程序产品 | |
US9894510B1 (en) | Event-based data backup and recovery for mobile devices | |
CN113076288A (zh) | 文件处理方法、装置、电子设备及存储介质 | |
CN110798521B (zh) | 分享文件的方法、装置、电子设备及存储介质 | |
CN111274210B (zh) | 元数据处理方法、装置及电子设备 | |
CN112632184A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN108958824A (zh) | 应用程序的启动方法、装置、电子设备及存储介质 | |
CN111290882B (zh) | 数据文件备份方法、数据文件备份装置及电子设备 | |
CN115357277A (zh) | 热更新方法、装置、电子设备、存储介质及程序产品 | |
CN114003558A (zh) | 数据归档方法、装置、设备及存储介质 | |
CN116489247A (zh) | 运行时可编程的任意网络协议报文编辑装置及方法 | |
CN118120212A (zh) | 一种文件去重方法、装置和设备 | |
CN116774927B (zh) | 光盘数据的管理方法、装置、电子设备及可读存储介质 | |
CN113378022A (zh) | 一种站内搜索平台、搜索方法和相关装置 | |
CN112416697B (zh) | 一种信息处理、装置、终端及存储介质 | |
CN116361071B (zh) | 备份文件生成方法、装置、设备及存储介质 | |
CN116778975B (zh) | 光盘追加刻录的方法、装置、电子设备及可读存储介质 | |
CN110795444B (zh) | Dom数据更新方法、页面更新方法及装置 | |
CN114077573A (zh) | 进程优化方法的步骤及装置、电子设备、存储介质 | |
CN118822436A (zh) | 字段级灵活审批的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100085 unit C, building C, lin66, Zhufang Road, Qinghe, Haidian District, Beijing Applicant after: Beijing Xiaomi pinecone Electronic Co.,Ltd. Address before: 100085 unit C, building C, lin66, Zhufang Road, Qinghe, Haidian District, Beijing Applicant before: BEIJING PINECONE ELECTRONICS Co.,Ltd. |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |