数据管理和数据分析的聚合的制作方法

文档序号:11276433阅读:202来源:国知局
数据管理和数据分析的聚合的制造方法与工艺

本公开内容的各种实施方式涉及数据处理领域,并且更具体地,涉及数据管理和数据分析在存储级别上的聚合。



背景技术:

企业、个人、组织或者政府部门会生成各种形式的内容、诸如电子文档、数字图像、视频和音频等。因此,可以采用数据管理系统来提供正式化的内容管理和组织,使得多个用户能够访问、搜索和编辑这些内容。一些这样的数据管理系统可以被称为企业内容管理(enterprisecontentmanagement,ecm)平台,其跨整个平台提供对内容的整体管理。数据管理系统通常将内容存储至与它相关联的存储系统。

此外,数据分析系统作为一种数据挖掘工具,被应用于执行数据挖掘、处理、统计和分析任务,以便从大量数据中获得期望的信息。数据管理系统所管理的各种各样的内容通常可以作为数据分析系统的挖掘对象。



技术实现要素:

本公开内容的多种实施方式提供了一种用于数据管理系统和数据分析系统在存储级别上的聚合的方案。

根据本公开内容的第一方面,提供了一种由计算机实现的方法。该方法包括由数据管理系统获得处于第一格式的第一文件。该方法还包括响应于确定第一格式不同于预定的第二格式,将第一文件转换为处于第二格式的第二文件。数据分析系统支持第二格式。该方法进一步包括将第一文件和第二文件存储至数据存储系统。该数据 存储系统可由数据管理系统和数据分析系统访问。

根据本公开内容的第二方面,提供了一种由计算机实现的设备。该设备包括至少一个处理单元;以及至少一个存储器。至少一个存储器耦合至至少一个处理单元并且在其上存储指令,指令在由至少一个处理单元执行时执行包括以下各项的动作:获得处于第一格式的第一文件以及响应于确定第一格式不同于预定的第二格式,将第一文件转换为处于第二格式的第二文件。数据分析系统支持第二格式。这些动作还包括将第一文件和第二文件存储至数据存储系统。该数据存储系统可由设备和数据分析系统访问。

根据本公开内容的第三方面,提供了一种用于数据分析和管理的系统。该系统包括数据管理系统,该数据管理系统包括根据以上第二方面所描述的设备。该系统还包括数据存储系统以及数据分析系统,被配置为从数据存储系统获得第二文件并且针对第二文件执行预定义的分析任务。

根据本公开内容的第四方面,提供了一种计算机可读存储介质。该计算机可读存储介质具有存储在其上的计算机可读程序指令。这些计算机可读程序指令用于执行根据以上第一方面所描述的方法的步骤。

提供发明内容部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开内容的关键特征或主要特征,也无意限制本公开内容的范围。

附图说明

通过结合附图对本公开示例性实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施例中,相同的参考标号通常代表相同部件。

图1示出了根据本公开内容的实施例的用于聚合数据管理系统和数据分析系统的架构的框图;

图2示出了根据本公开内容的实施例的文件添加过程的流程图;

图3示出了根据本公开内容的实施例的文件删除过程的流程图;

图4示出了根据本公开内容的实施例的索引文件与要被合并的文件之间的对应关系的示意图;以及

图5示出了可以用来实施本公开内容的实施例的示例设备的示意性框图。

具体实施例

下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。

在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。

如本文中所使用的,术语“数据管理系统”指的是提供内容管理和组织、以使得一个或多个用户能够访问、搜索和编辑这些内容的系统或平台,例如ecm平台。如本文中所使用的,术语“数据分析系统”指的是执行数据处理、统计和分析之类的数据挖掘任务、以便从大量数据中获得期望的信息的系统或平台,例如spark、hadoop等数据分析平台。

在常规的使用中,当期望使用数据分析系统来对数据管理系统所管理的内容执行数据挖掘时,数据分析系统需要被分配有另外的存储系统以便导入数据管理系统所存储的内容。这是一个耗费时间和资源的过程,尤其是当需要导入的内容的量非常大时。

此外,数据分析系统通常仅能够分析机器直接可读取内容的文本文件,诸如处于txt格式或者log格式的文件。然而,数据管理系统会将用户输入的内容按照其原始格式进行存储。因此,如果从数据管理系统导入的内容不是可读文本格式,数据分析系统还需要对导入的文件执行文本内容提取的处理。在一些情况下,具有全文搜索功能的数据管理系统可能会从所管理的文件中提取出文本内容,以供数据搜索的目的。然而,由数据管理系统提取的文本内容不会被导入至数据分析系统中。因此,数据分析系统和数据管理系统可能会重复地执行文本内容提取,这也是一个浪费时间和资源的过程。

为了解决上述问题以及其他潜在问题中的一个或者多个,根据本公开内容的示例实施例,提出了一种数据管理系统与数据分析系统在存储级别上的聚合的方案。数据管理系统将需要管理的内容直接存储至接收到的数据存储至数据分析系统也可访问的数据存储系统中。

图1图示了根据本公开内容的实施例的用于聚合数据管理系统和数据分析系统的架构100的框图。在架构100中包括数据管理系统110、数据分析系统1122和数据分析系统2124、以及数据存储系统130。

数据管理系统110被配置为从用户接收文件,并且将接收到的文件存储至数据存储系统130中。具体地,在接收到新的文件时,数据管理系统110可以将文件以其原始格式存储至数据存储系统130中。数据管理系统110还将文件转换为数据分析系统、例如数据分析系统1122和数据分析系统2124所支持的可读文本格式。数据管理系统110然后将转换后的文件也存储至存储系统130中。也就是说,对于一个新的文件,数据管理系统110可能会将两个或者更多个文件存储至数据存储系统130中,其中一个文件为原始格式的文件,其他文件为转换后的由数据分析系统122和124可支持的格式的文件。

在本公开内容的实施例中,数据管理系统110以及数据分析系 统122和124访问均可访问数据存储系统130。在一些实施例中,数据存储系统130可以是任何形式的数据存储设备、文件系统等等。举例而言,数据存储系统130可以是分布式文件系统,例如hadoop分布式文件系统(hadoopdistributedfilesystem,hdfs)。

数据分析系统122和124可访问数据存储系统130,并且从中获得所支持格式的文件。基于获得的文件,数据分析系统122和124可以执行预定义的分析任务。对于数据分析系统所执行的分析任务,本公开内容的实施例对此不进行限定。任何用于执行数据挖掘的系统均可以作为数据分析系统被加入到架构100中。

由此可见,在架构100中,数据管理系统110和数据分析系统122、124实现了在存储级别上的聚合。通过这样的方式,数据分析系统122和124不必要如在未被聚合的情况中那样从数据管理系统的专用存储系统导入待分析的数据,并且再额外的分配存储空间用于存储这部分数据。这可以节省时间和处理资源的开销。此外,数据管理系统110的文本提取功能得以被利用。数据分析系统122或124可以从数据存储系统130获得直接可读的文件格式用于数据挖掘。这样避免了重复的文本内容提取处理。

在一些实施例中,数据分析系统122和/或124可以将执行分析任务之后的分析结果报告给数据管理系统110。数据管理系统110可以将分析结果作为接收到的文件存储至数据存储系统130中。

在一些实施例中,数据管理系统110可以包括接收单元111、文件存储单元112、文件转换单元113、安全策略单元114、版本化单元115以及文件合并单元116,这些单元用于执行相应的功能。数据管理系统110所包括的各个单元111-116的功能将在以下详细描述。

应当认识到的是,尽管图1示出了两个数据分析系统122和124可访问数据管理系统110向其存储数据的数据存储系统130,在其他实施例中,更少或者更多的数据分析系统122和124可访问数据存储系统130。还应当认识的是,多个数据管理系统可以向数据存储系统130存储文件。在一些其他实施例中,数据管理系统120可以利 用多个数据存储系统来存储文件。

在一些实施例中,数据分析系统122和124可以支持相同格式的文件。在这种情况下,数据管理系统110可以将接收到的文件转换成数据分析系统122和124支持的格式。在其他实施例中,如果数据分析系统122和124支持不同格式的文件,则数据管理系统110可以将接收到的文件转换成多个译本(rendition)存储至数据存储系统130,每个译本的格式分别由数据分析系统122或124所支持。

以下详细描述当数据管理系统110与数据分析系统122、124在存储级别上聚合时,数据管理系统110对于文件添加、文件删除、文件更新、文件版本化以及文件合并等过程的具体管理。

图2图示了根据本公开内容的实施例的文件添加过程200的流程图。过程200可以被实施在作为内容的获取方和管理方的数据管理系统110处。理解的是,过程200还可以包括附加的步骤和/或省略执行示出的步骤。本公开内容的范围在此方面不受限制。

在步骤210中,由数据管理系统、例如数据管理系统110中的接收单元111获得处于第一格式的第一文件。如本文中所使用的,“文件”指的是处于任何机器可读格式的数据/内容。数据管理系统的用户可以提供任何期望的数据或内容以由数据管理系统进行管理。在一些实施例中,第一文件可以是电子文档、数字图像、视频和音频等等。在一些实施例中,第一格式可以是任何机器可读格式,例如当前已有的或者未来将会开发的各种电子文档格式、数字图像格式、视频格式、音频格式等等。

接下来,在过程200的步骤220中,数据管理系统、例如数据管理系统110中的文件转换单元113确定第一格式是否不同于由数据分析系统所支持的第二格式。在一些实施例中,数据管理系统可以预先获知数据分析系统所支持的第二格式。在一些实施例中,第二格式可以是机器直接可读取内容的文本格式,诸如txt格式或者log格式。

如果在步骤220中确定当前获得的文件的格式不同于数据分析 系统所支持的格式,则数据管理系统、例如数据管理系统110中的文件转换单元113在步骤230中将第一文件转换为处于第二格式的第二文件。如先前提及的,数据管理系统110通常具有从各种格式的文件中提取文本内容的能力。

例如,如果第一文件是处于pdf格式或者excel格式之类的机器不可直接读取内容的电子文档,数据管理系统110可以从电子文档中提取文本内容,并且基于所提取的内容生成文本格式的第二文件。又例如,如果第一文件是图像,则数据管理系统110可以执行光学字符识别(opticalcharacterrecognition,ocr)处理,以识别图像中包括的图形、字符、表格之类的内容。在再一个示例中,如果第一文件是音频或视频文件,则数据管理系统110可以采用语音识别技术来获得音频或视频文件中包括的文本内容。

应当认识到的是,数据管理系统可以采用适当的技术来从接收到的第一文件中提取文本内容,以生成第二文件。本公开内容的范围在此方面不受限制。如本文中所使用的,第二文件可以称为第一文件的“译本”,其包括第一文件的部分或全部数据/内容、但是与第一文件处于不同的格式。

在一些实施例中,在将第一文件转换成第二文件之前,数据管理系统、例如数据管理系统110中的安全策略单元114可以基于预定义的安全策略,确定第一文件中包括的数据是否可由数据分析系统、例如数据分析系统122和/或124访问。

在一些实施例中,预定义的安全策略可以指示哪些类型或者内容的文件不可由数据分析系统用于分析。例如,对于一些机密或者高敏感度的文件,用户或者企业可能不期望这些文件被暴露给数据分析系统。因此,安全策略可以指示机密度或者敏感度高于预定阈值的文件不可由数据分析系统用于分析。在一些实施例,安全策略可以由用户定义并且被存储在数据管理系统110所包括的存储设备中。在一些实施例中,安全策略还可以被存储在数据存储系统130中并且由安全策略单元114可访问以供使用。在输入第一文件时, 用户可以指定或者数据存储系统130可以自动判断第一文件的机密度或者敏感度。

在一些实施例中,步骤220中的格式确定与数据安全策略的确定可以同时执行或者以任意顺序来执行。在一些实施例中,如果确定第一文件的数据可由数据分析系统访问,数据管理系统110的文件转换单元113可以继续执行步骤230,以将第一文件转换成第二文件。

接下来,在步骤240中,数据管理系统、例如数据管理系统110的文件存储单元112将第一文件和第二文件存储至数据存储系统、例如数据存储系统130。在一些实施例中,文件存储单元112可以确定第一文件和第二文件在数据存储系统130中的存储路径,并且依据相应的存储路径来存储这些文件。通过这种方式,当数据分析系统122或124希望分析第一文件的数据时,可以通过访问数据存储系统130来直接获得同样包括第一文件的数据的第二文件用于分析。

在一些实施例中,在将第一文件和第二文件存储至数据存储系统130之前,数据管理系统110还生成针对第一文件和第二文件的元数据。如本文中所使用的,术语“元数据”包括与文件相关联的各种信息。例如,元数据可以包括但不限于:文件的文件名,文件的作者,诸如公司名、地址之类的可配置项,文件的关键词,文件的主题,文件的版本标识,和/或文件的生命周期等等。元数据可以有助于辅助理解相应的文件。

在一些实施例中,数据管理系统110可以通过语义分析、主题提取等处理获取元数据中的一项或者多项,诸如作者、关键词、主题、可配置项等等。在一些实施例中,数据管理系统110还可以确定第一文件和/或第二文件在数据存储系统130中的生命周期。当超过该生命周期之后,可以从数据存储系统130中移除第一文件和/或第二文件。备选地,该生命周期的元数据可以不被放置于元数据中,而是由数据存储系统130或者数据管理系统110获知,以便在特定时间通知文件的移除。

在生成元数据之后,文件存储单元112可以将元数据与第一文件和第二文件相关联地存储至数据存储系统130。在一些实施例中,元数据与第一文件和第二文件单独地存储。在另外一些实施例中,元数据与第一文件和第二文件中的任一个文件结合成单个文件进行存储。备选地,元数据还可以分别被结合到第一文件和第二文件两者中。

在一些实施例中,如果在步骤220中确定第一格式与第二格式相同,则数据管理系统、例如数据管理系统110的文件存储单元112可以在步骤250中仅将第一文件存储至数据存储系统130中。备选地,数据管理系统110也可以将原始的第一文件以及作为第一文件的副本的第二文件存储至数据存储系统130中。如本文中所使用的,第一文件的“副本”指的是第二文件与第一文件处于相同的格式、并且包括第一文件的部分或全部内容。第一文件的副本可以被提供给数据分析系统用于执行分析任务。

在一些实施例中,如果安全策略单元114确定第一文件的数据不可由数据分析系统可访问,则文件存储单元112也可以仅将第一文件存储至数据存储系统130中。在另外一些实施例中,如果第一文件的格式也可以由数据分析系统可读取、并且出于安全的考虑而不期望数据分析系统获得第一文件,则可以为第一文件添加特定标签,以使得数据分析系统在获取分析数据时忽略该文件。例如,可以向与第一文件相关联的元数据中添加相应的标签。

应当理解的是,当多个数据分析系统(例如数据分析系统122和124)期望从数据存储系统130访问数据并且这些数据分析系统支持不同的第二格式时,在过程200的步骤220中,可以分别确定接收到的文件的第一格式与这些第二格式是否相同。如果一个或者多个第二格式与第一格式不相同,则数据管理系统110在步骤230中可以将第一文件转换成对应的第二文件,每个第二文件处于一种不同的第二格式。数据管理系统110可以将第一文件以及转换后的第二文件均存储至数据存储系统中,以供数据分析系统根据需要来访 问。此外,在存在多个第二格式的情况中,对于关于图2讨论的其他实施例,数据管理系统110可以针对每个第二格式均执行相应的操作。

接下来将参照图3描述根据本公开内容的实施例的文件删除过程300。过程300也可以被实施在数据管理系统110处。理解的是,过程300还可以包括附加的步骤和/或省略执行示出的步骤。本公开内容的范围在此方面不受限制。

在步骤310中,数据管理系统、例如数据管理系统110获取对第一文件的删除请求。如以上针对过程200所描述的,第一文件被存储在数据存储系统130中。在一些实施例中,数据管理系统110的用户可以主动发起对第一文件的删除请求,并且接收单元111可以接收到该删除请求。备选地或附加地,数据管理系统110可以判断第一文件的生命周期已经到期并且然后生成对第一文件的删除请求。

数据管理系统110可以生成一个删除列表,将需要删除的文件的标识符(例如文件名)包括在该列表中。在过程300的步骤320中,响应于步骤310的删除请求,数据管理系统110可以将第一文件包括到删除列表中。

由于数据管理系统与数据分析系统在存储级别的聚合,数据管理系统可能在存储第一文件时,还将第一文件的译本、例如处于不同格式的第二文件也存储到数据存储系统中。在这种情况下,还期望删除第二文件。因此,在步骤330中,数据管理系统、例如数据管理系统110确定是否存在第一文件的译本,即是否存储第二文件。

在一些实施例中,数据管理系统110可以依据第一文件的第一格式以及数据分析系统所支持的第二格式的不同来判断是否存在第二文件。例如,如果第一格式与第二格式不同,则可以确定在文件添加过程中,第一文件被转换成第二文件。备选地或附加地,数据管理系统110还可以通过安全策略单元114的安全策略来判断是否存在第二文件。如果安全策略指示第一文件的数据不可由数据分析 系统访问,则可能确定不存在第二文件。

如果在步骤330中确定存在第一文件的译本,则过程300行进至步骤340,其中将作为译本的第二文件包括到删除列表中。例如,可以将第二文件的标识符(例如文件名)包括在该列表中。然后,在步骤350中,将删除列表中指示的第一文件和第二文件从数据存储系统130中删除。如果在步骤330中确定不存在第一文件的译本,则可以在步骤350中将删除列表中指示的第一文件从数据存储系统130中删除。在文件删除过程中,数据管理系统110可以确定文件的存储路径,并且然后依据存储路径从数据存储系统中删除相应的文件。

可以认识到的是,如果存在第一文件的多个译本,例如存在多个第二格式的第二文件,则可以将这些文件均添加到删除列表中以便执行删除操作。在存在与第一文件和/或第二文件相关联的元数据的情况中,还可以将相应的元数据删除。在一些实施例中,在第一格式与第二格式相同时,数据管理系统110还可以确定是否存在第一文件的副本,并且将副本放入删除列表中以便删除。

还应当认识到,在文件删除的其他实施例中,数据管理系统110可以不生成删除列表。数据管理系统110可以在过程300的步骤330中直接将第一文件从数据存储系统130中删除,并且当确定存在第一文件的译本或者副本时,则可以在步骤340中直接从数据存储系统130删除作为译本或者副本。在这些实施例中,过程300的步骤350被省略。

以上参照图2描述了数据管理系统向数据存储系统添加文件的过程并且参照图3描述了数据管理系统从数据存储系统删除文件的过程。在一些实施例中,数据管理系统、例如数据管理系统110的用户可能期望更新之前输入到数据存储系统的文件、例如第一文件。在这种情况下,数据管理系统110可以将原先存储在数据存储系统中的第一文件删除并且将更新之后的第一文件添加到数据存储系统中。也就是说,对于文件的更新可以涉及两个过程,文件添加过程 和文件删除过程。

对于原始的第一文件的删除,可以参照以上关于图3所描述的过程300。具体地,当用户更新第一文件时,数据管理系统110可以生成针对第一文件的删除请求,从而触发过程300来删除第一文件以及可能的第二文件。进一步地,对于更新后的第一文件的添加,可以参照以上关于图2所描述的过程200。具体地,可以将更新后的第一文件作为接收到的新文件来添加到数据存储系统130中。数据管理系统110可以在第一格式(对第一文件的更新通常不会改变其文件格式)不同于第二格式时,将经更新后的第一文件转换为处于第二格式的第三文件,并且然后将经更新后的第一文件和转换后的第三文件存储至数据存储系统130中。可以认识到的是,如果第一格式与第二格式相同,数据管理系统110还可以仅将经更新后的第一文件或者将更新后的文件以及它的副本一起存储至数据存储系统130中。

应当理解的是,在文件更新的情况中,旧文件的删除过程和更新后的文件的添加过程的执行顺序没有限制。可以首先删除旧文件,然后再添加更新后的文件。备选地,可以首先添加更新后的文件,然后删除旧文件。在一些其他实施例中,还可以同时执行旧文件的删除和更新后的文件的添加。

在一些情况中,数据管理系统、例如数据管理系统110的用户可能会例如利用版本化单元115创建第一文件的新版本,例如第四文件。第四文件通常处于与第一文件相同的第一格式。本领域技术人员可以理解的是,文件的版本化不同于文件的更新。文件的版本化将会创建新的文件,而文件的更新涉及对原有文件的内容的更新而不会产生新的文件。

在文件版本化的情况下,数据管理系统110可以在获得第四文件之后,利用如以上参照图2所描述的文件添加过程,将第四文件添加到数据存储系统130中。具体地,如果第一格式不同于数据分析系统所支持的第二格式,则可以将第四文件转换成处于第二格式 的第五文件。然后,将第四文件和第五文件存储至数据存储系统130。如果第一格式与第二格式相同,则可以仅存储第四文件、或者存储第四文件以及第四文件的副本。

在一些实施例中,在可以创建文件的不同版本的情况中,第一文件相关联的元数据可以包括文件的版本标识。在创建了第一文件的新版本之后,可以更新第一文件相关联的元数据中的版本标识。该版本标识可以指示第一文件的版本编号。在一些实施例中,与第一文件相关联的元数据也可以与第四文件相关联,并且该元数据还可以将第四文件标识为多个版本中的最新版本。备选地,还可以为第四文件生成新的元数据。

通常数据存储系统、例如分布式文件系统通常更利于存储大尺寸的文件。在一些情况下,数据管理系统所管理的文件的大小可能较小。因此,可以在存储过程中采用文件合并技术,将多个文件合并成一个文件来存储到数据存储系统中。具体地,数据管理系统、例如数据管理系统110的文件合并单元116对于要存储到数据存储130中的文件,包括用户期望存储的文件以及该文件的译本或副本,均可以执行文件合并过程。每次合并的文件的数目不受限制。

在一些实施例中,数据管理系统110可以首先将需要存储的文件均存储至数据存储系统130中。在一段时间之后(例如基于所设置的执行频率),由文件合并单元116指导对于所存储的文件的合并。在另外一些实施例中,数据管理系统110也可以将文件合并之后再存储至数据存储系统130中。

在一些实施例中,可以基于预定义的规则来合并文件。预定义的规则可以包括但不限于:要合并的文件的选择、文件合并过程的执行频率、文件合并过程的执行时间以及合并后的文件的格式、存储位置和大小等等。在一个实施例中,可以基于每个文件的最后修改时间、活跃度(例如被用户检索、编辑、查看的频率)和/或生命周期来选择要合并的文件。例如,可以将数据存储系统130中距最后一次修改时间较长、活跃度较低和/或剩余生命周期较短的多个文 件合并成一个文件,因为这些被用户重新使用的概率较低。备选地或附加地,可以由用户选择要合并的一个或多个文件。在一些实施例中,还可以设置文件合并过程的执行频率和/或执行时间。例如,可以设置在数据管理系统的空闲时段自动执行文件合并,和/或可以设置例如每周或者每月执行一次文件合并。在一些实施例中,如果合并后的文件包括数据分析系统要访问的文件,则合并后的文件可以被存储为可由数据分析系统和数据管理系统均可读取的格式,以便数据分析系统和数据管理系统可以从中读取中期望的文件。

在一些实施例中,为了能够从合并后的文件中确定出相应的文件,可以为每个要被合并的文件生成相关联的索引文件。该索引文件可以用于将要被合并的小文件映射到合并后的大文件中。在一些实施例中,索引文件可以包括合并后的文件的标识符、相关联的文件的标识符以及该文件在合并后的文件中的偏移。

图4示出了索引文件与要被合并的文件之间的对应关系。文件1至4412至418被合并成一个文件410。索引文件402用于指示合并后的文件的标识符(例如文件名)、文件412的标识符以及文件412在合并后的410中偏移(例如0)。可以类似地生成索引文件404-408,其中索引文件404与文件414相关联,索引文件406与文件416相关联,并且索引文件408与文件418相关联。这些索引文件能够用于从合并后的文件410中标识出对应的小文件。要理解的是,图4中示出的合并的文件数目是示例性的,并且比四个更多或者更少的文件可以被合并成一个文件。

在一些实施例中,被合并的文件的多个索引文件可以合并成一个文件。备选地或附加地,多个索引文件可以与合并后的文件相关联的存储、例如被合并至成一个文件。在其他实施例中,多个索引文件也可以单独地被存储。

在一些实施例中,对于合并后的文件,如果在文件删除过程、例如文件删除过程300中期望删除其中的一个或者多个文件,则在文件删除过程中可以将这些文件标识为无效。然后由文件合并单元 116将被标识为无效的文件从合并后的文件中移除,并且还可以删除相应的索引文件。在一些实施例中,可以将新的文件增添到合并后的文件中,使得合并后的文件满足所要求的大小。

图5示出了可以用来实施本公开内容的实施例的示例设备500的示意性框图。如图所示,设备500包括中央处理单元(cpu)501,其可以根据存储在只读存储器(rom)502中的计算机程序指令或者从存储单元508加载到随机访问存储器(ram)503中的计算机程序指令,来执行各种适当的动作和处理。在ram503中,还可存储设备500操作所需的各种程序和数据。cpu501、rom502以及ram503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。

设备500中的多个部件连接至i/o接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

上文所描述的各个过程和处理,例如过程200和/或300,可由处理单元501执行。例如,在一些实施例中,过程200和/或300可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序被加载到ram503并由cpu501执行时,可以执行上文描述的过程200和/或300的一个或多个步骤。

本公开内容可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开内容的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限 于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本公开内容操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接 到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开内容的各个方面。

这里参照根据本公开内容实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开内容的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本公开内容的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多 个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

以上已经描述了本公开内容的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1