CN115237446A - 文件数据更新方法及其装置、设备、介质、产品 - Google Patents
文件数据更新方法及其装置、设备、介质、产品 Download PDFInfo
- Publication number
- CN115237446A CN115237446A CN202210918216.0A CN202210918216A CN115237446A CN 115237446 A CN115237446 A CN 115237446A CN 202210918216 A CN202210918216 A CN 202210918216A CN 115237446 A CN115237446 A CN 115237446A
- Authority
- CN
- China
- Prior art keywords
- file
- data
- text
- text data
- split
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Abstract
本申请公开一种文件数据更新方法及其装置、设备、介质、产品,所述方法包括:监听源文本文件所对应的多个拆分文件所存储的文本数据,响应作用于任一拆分文件的数据更新事件,将该拆分文件的文件序号及更新文本数据对应存储至更新队列中;获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据;合并所述拆分副本数据表中所有文本数据生成新的文本文件,并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象。本申请可将作用于类对象的大型文件拆分为多个子文件进行监听更新,保证文件的数据在更新中的数据一致性,且在更新后高效地为各类对象匹配对应的数据。
Description
技术领域
本申请涉及数据处理领域,尤其涉及一种文件数据更新方法,此外还涉及该方法相应的装置、设备、非易失性存储介质以及计算机程序产品。
背景技术
在现有的程序系统中需监听各程序项目所引用的文件数据,以在文件数据发生更新后,将更新后的数据导入至程序项目中用于当前正引用该些数据的类对象中,保证类对象所引用的数据的时效性,但现有的文件数据监听方式,通常为仅针对进行监听到更新的文件数据进行拆分处理后进行类对象导入,这需耗费大量的计算资源,且对于进行删除更新的文件数据来说,需逐条对比当前所删除的文件数据,直至确定出进行删除的数据后,再从引用删除数据的类对象中进行数据删除,在处理过程中所消耗的时间复杂度较高,且可能破坏类对象中的代码结构及执行逻辑,这将大大影响其所对应的程序的稳定性。
鉴于现有的程序系统中文件数据的更新所存在的问题,本申请人出于解决该问题的考虑做出相应的探索。
发明内容
本申请的目的在于满足用户需求而提供一种文件数据更新方法,此外还涉及该方法相应的装置、设备、非易失性存储介质以及计算机程序产品。
为实现本申请的目的,采用如下技术方案:
适应本申请的目的而提出的一种文件数据更新方法,包括如下步骤:
监听源文本文件所对应的多个拆分文件所存储的文本数据,响应作用于任一拆分文件的数据更新事件,将该拆分文件的文件序号及更新文本数据对应存储至更新队列中,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中;
获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据;
合并所述拆分副本数据表中所有文本数据生成新的文本文件,并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象。
进一步的实施例中,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中的步骤中,包括如下步骤:
响应作用于源文本文件的文件拆分指令,确定该指令所对应的目标拆分数量;
确定源文本文件中待拆分文本数据所处的存储位置序号,对该存储位置序号与目标拆分数量进行余数计算,将所述待拆分文本数据存储至文件序号为计算结果的余数的拆分文件中;
以此类推,将所述源文本文件中各文本数据存储至对应的拆分文本中。
进一步的实施例中,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据的步骤中,包括如下步骤:
确定当前源文本文件所对应的各拆分文件的文件序号,且获取该些拆分文件各自具有的文本数据;
将各所述文件序号作为键标识,且将该些文件序号所对应的文本数据作为值数据,生成多个由文件序号及其文本数据所组成的键值对数据;
将各所述键值对数据存储至所述拆分副本数据表中。
进一步的实施例中,所述获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据的步骤中,包括如下步骤:
获取所述更新队列当前输出的目标文件序号及更新文本数据;
查询出所述拆分副本数据表中具有目标文件序号的目标键值对数据;
将所述目标键值对数据的值数据所存储的文本数据替换为所述更新文本数据。
进一步的实施例中,所述合并所述拆分副本数据表中所有文本数据生成新的文本文件的步骤中,包括如下步骤:
获取所述拆分副本数据表中所有文本数据及其存储位置序号;
生成新的文本文件,并根据各所述文本数据的存储位置序号,顺序将该些文本数据存储至所述文本文件中。
进一步的实施例中,所述并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象的步骤中,包括如下步骤:
获取当前新生成的文本文件中当前待匹配的目标文本数据,确定该目标文本数据的数据组成格式,所述数据组成格式是指文本数据中各文本的数据类型及数据分隔符;
确定出所述类对象匹配规则与所述数据组成格式相匹配的目标类对象,将目标文本数据作为目标类对象的引用文本数据;
以此类推,匹配出所述文本文件中各文本数据所对应的类对象,将该些文本数据分配为各自对应的类对象的引用文本数据。
适应本申请的目的而提出的一种文件数据更新装置,其包括:
更新文本获取模块,用于监听源文本文件所对应的多个拆分文件所存储的文本数据,响应作用于任一拆分文件的数据更新事件,将该拆分文件的文件序号及更新文本数据对应存储至更新队列中,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中;
文本数据更新模块,用于获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据;
文本对象匹配模块,用于合并所述拆分副本数据表中所有文本数据生成新的文本文件,并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象。
进一步的实施例中,所述更新文本获取模块包括:
拆分指令响应子模块,用于响应作用于源文本文件的文件拆分指令,确定该指令所对应的目标拆分数量;
拆分文本确定子模块,用于确定源文本文件中待拆分文本数据所处的存储位置序号,对该存储位置序号与目标拆分数量进行余数计算,将所述待拆分文本数据存储至文件序号为计算结果的余数的拆分文件中;
数据拆分存储子模块,用于以此类推,将所述源文本文件中各文本数据存储至对应的拆分文本中。
进一步的实施例中,所述文本数据更新模块包括:
文本数据解析子模块,用于确定当前源文本文件所对应的各拆分文件的文件序号,且获取该些拆分文件各自具有的文本数据;
数据键值对生成子模块,用于将各所述文件序号作为键标识,且将该些文件序号所对应的文本数据作为值数据,生成多个由文件序号及其文本数据所组成的键值对数据;
键值对存储子模块,用于将各所述键值对数据存储至所述拆分副本数据表中。
较佳的实施例中,所述文本数据更新模块还包括:
更新文本获取子模块,用于获取所述更新队列当前输出的目标文件序号及更新文本数据;
目标键值对查询子模块,用于查询出所述拆分副本数据表中具有目标文件序号的目标键值对数据;
文本数据替换子模块,用于将所述目标键值对数据的值数据所存储的文本数据替换为所述更新文本数据。
进一步的实施例中,所述文本对象匹配模块包括:
拆分数据获取子模块,用于获取所述拆分副本数据表中所有文本数据及其存储位置序号;
文本文件生成子模块,用于生成新的文本文件,并根据各所述文本数据的存储位置序号,顺序将该些文本数据存储至所述文本文件中。
较佳的实施例中,所述文本对象匹配模块还包括:
组成格式确定子模块,用于获取当前新生成的文本文件中当前待匹配的目标文本数据,确定该目标文本数据的数据组成格式,所述数据组成格式是指文本数据中各文本的数据类型及数据分隔符;
目标类对象确定子模块,用于确定出所述类对象匹配规则与所述数据组成格式相匹配的目标类对象,将目标文本数据作为目标类对象的引用文本数据;
用于文本数据分配子模块,用于以此类推,匹配出所述文本文件中各文本数据所对应的类对象,将该些文本数据分配为各自对应的类对象的引用文本数据。
为解决上述技术问题本申请实施例还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述所述文件数据更新方法的步骤。
为解决上述技术问题本申请实施例还提供一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述所述文件数据更新方法的步骤。
为解决上述技术问题本申请实施例还提供一种计算机程序产品,包括计算机程序及计算机指令,该计算机程序及计算机指令被处理器执行时,使得所述处理器执行上述所述文件数据更新方法的步骤。
相对于现有技术,本申请的优势如下:
本申请通过对大型文本文件进行拆分处理,以将大型文本文件中存储的所有文本数据拆分存储至各小型的拆分文件中,便于开发人员可针对拆分文本进行文本数据更新,使文本数据更新时不会对大型文本文件进行破坏,且监听各拆分文本的数据更新事件,保证文本事件更新时更新线程的数据安全问题,且通过生成具有各拆分文件的所有文本数据的拆分副本数据表作为各拆分文本的副本,使的进行文本数据更新时可针对拆分文本进行数据更新,并通过合并拆分文本文件中的更新后的文本数据生成新的文本文件,以基于完成文本数据更新的新文本文件进行类对象匹配,以在面对进行数据删除更新时,无需逐条查询出具有已被删除的文本数据的类对象后从该类对象中删除该文本数据,通过完成更新的文本文件为各类对象重新分配新的文本数据进行引用即可,高效地更新各类对象所引用的文本数据,且保证各类对象所引用的文本数据为更新后的文本数据,即保证类对象所具有的文本数据与更新后的文本数据的一致性。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为实施本申请的技术方案相关的一种典型的网络部署架构示意图;
图2为本申请的文件数据更新方法的典型实施例的流程示意图;
图3为本申请中关于对源文本文件进行拆分处理的具体实施方式所形成的流程示意图;
图4为本申请中关于生成拆分副本数据表的具体实施方式所形成的流程示意图;
图5为本申请中关于更新拆分副本数据表中对应的文本数据的具体实施方式所形成的流程示意图;
图6为本申请中关于合并拆分副本数据表生成新的文本文件的具体实施方式所形成的流程示意图;
图7为本申请中关于匹配新生成的文本文件中各文本数据的类对象的具体实施方式所形成的流程示意图;
图8为本申请的文件数据更新装置的典型实施例的原理框图;
图9为本申请一个实施例的计算机设备的基本结构框图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“客户端”、“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他诸如个人计算机、平板电脑之类的通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(PersonalCommunications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(Global PositioningSystem,全球定位系统)接收器;传统膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的传统膝上型和/或掌上型计算机或其他设备。这里所使用的“客户端”、“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“客户端”、“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。
本申请所称的“服务器”、“客户端”、“工作节点”等名称所指向的硬件,本质上是具备个人计算机等效能力的电子设备,为具有中央处理器(包括运算器和控制器)、存储器、输入设备以及输出设备等冯诺依曼原理所揭示的必要构件的硬件装置,计算机程序存储于其存储器中,中央处理器将存储在外存中的程序调入内存中运行,执行程序中的指令,与输入输出设备交互,借此完成特定的功能。
需要指出的是,本申请所称的“服务器”这一概念,同理也可扩展到适用于服务器机群的情况。依据本领域技术人员所理解的网络部署原理,所述各服务器应是逻辑上的划分,在物理空间上,这些服务器既可以是互相独立但可通过接口调用的,也可以是集成到一台物理计算机或一套计算机机群的。本领域技术人员应当理解这一变通,而不应以此约束本申请的网络部署方式的实施方式。
请参阅图1,本申请相关技术方案实施时所需的硬件基础可按图中所示的架构进行部署。本申请所称服务器80部署在云端,作为一个在线服务器,其可以负责进一步连接起相关数据服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备例如图中所示的智能手机81和个人计算机82或者第三方服务器(未图示)提供服务。所述的智能手机和个人计算机均可通过公知的网络接入方式接入互联网,与云端的服务器80建立数据通信链路,以便运行所述服务器所提供的服务相关的终端应用程序。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
所述的应用程序,是指运行于服务器或终端设备上的应用程序,这一应用程序采用编程的方式实现了本申请的相关技术方案,其程序代码可被以计算机可执行指令的形式保存于计算机能识别的非易失性存储介质中,并被中央处理器调入内存中运行,通过该应用程序在计算机的运行而构造出本申请的相关装置。
对于服务器而言,所述的应用程序通常会被构建为服务进程,开放相应的程序接口,供各种终端设备上运行的应用程序进行远程调用,本申请中适于运行于服务器的相关技术方案,便可以此种方式实现于服务器中。
本领域技术人员对此应当知晓:本申请的各种方法,虽然基于相同的概念而进行描述而使其彼此间呈现共通性,但是,除非特别说明,否则这些方法都是可以独立执行的。同理,对于本申请所揭示的各个实施例而言,均基于同一发明构思而提出,因此,对于相同表述的概念,以及尽管概念表述不同但仅是为了方便而适当变换的概念,应被等同理解。
请参阅图2,本申请的一种文件数据更新方法,在其典型实施例中,其包括如下步骤:
步骤S11,监听源文本文件所对应的多个拆分文件所存储的文本数据,响应作用于任一拆分文件的数据更新事件,将该拆分文件的文件序号及更新文本数据对应存储至更新队列中,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中:
所述的文本文件是指存储着多个文本数据的文件,所述文本文件以分行及分列的存储结构存储其所具有的各文本数据,且所述文本文件中存储的文本数据将被其各类对象所引用,以便该些类对象引用其所对应的文本数据执行相应的代码逻辑实现相应的功能,例如,对于实现商品标题显示的类对象而言,其可通过引用文本文件中存储的商品标题文本数据,将该商品标题文本数据输出至图形用户界面中进行显示。
所述的源文本文件中存储的各文本数据将进行拆分,以将拆分的文本数据分别存储至对应各所述拆分文件,在对所述文本文件进行拆分处理时,通过以所述文本文件中各文本数据的存储位置进行拆分,即进行行拆分或列拆分,具体的,响应作用于源文本文件的文件拆分指令,确定该指令所对应的目标拆分数量,确定源文本文件中待拆分文本数据所处的存储位置序号,所述存储位置序号是指待拆分文本数据所处的行数或列数,以对该存储位置序号与目标拆分数量进行余数计算,将所述待拆分文本数据存储至文件序号为计算结果的余数的拆分文件中,以此类推,进而将所述源文本文件中各文本数据存储至对应的拆分文本中,其中,所述存储至所述拆分文件的文本数据,文本数据对应的存储位置序号也将进行对应存储。
所述的数据更新事件是指管理端或开发端对任一拆分文本中存储的文本数据进行更新后所拆分的事件,管理端或开发端修改任一拆分文本中存储的文本数据后,将触发作用于该拆分文本的所数据更新事件。
当响应作用于任一所述拆分文件的数据更新事件时,将确定该拆分文本的文件序号及发生更新的文本数据,并将该文件序号及文本数据作为映射关系数据存储至所述更新队列中,所述更新队列中遵循先入先出的规则将其存储的由文件序号及文本数据组成的映射关系数据进行输出以进行数据流输出。
步骤S12,获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据:
所述的拆分副本数据表为各所述拆分文件的副本,即所述拆分副本数据表中存储着所有拆分文件所具有的文本数据及其文件序号,且各所述文本数据与其对应的文件序号对应存储,具体的,所述拆分副本数据表以文件序号为键数据,文本数据为值数据,所述拆分副本数据表中存储着以文件序号为键数据及该文件序号所存储的文本数据为值数据的键值对数据。
获取由所述更新队列当前最新输出的文件序号及其对应的更新文本数据后,将查询出所述拆分副本数据表中以所述文件序号为键数据的键值对,以将该键值对的值数据所存储的原文本数据替换为所述更新文本数据。
一种实施例中,查询出所述拆分副本数据表中以所述更新队列输出的文件序号为键数据的键值对后,将基于该文件序号所对应的更新文本数据所包含的存储位置序号,在所述键值对数据中查询出具有该存储位置序号的原文本数据,以将该原文本数据替换为所述更新文本数据。
步骤S13,合并所述拆分副本数据表中所有文本数据生成新的文本文件,并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象:
将所述拆分副本数据表中的任一文件序号的原文本数据被替换为更新文本数据后,将合并该拆分副本数据表中的所有文本数据以输出新的文本文件,合并所述拆分副本数据表将基于各文本数据的存储位置序号排序各文本数据以输出新的文本文件,具体的,获取所述拆分副本数据表中所有文本数据,及确定该些文本数据各自所对应的存储位置序号,同时生成新的文本文件,并根据各所述文本数据的存储位置序号,顺序将该些文本数据存储至所述文本文件中。
所述的文本文件将被视为完成更新的源文本文件,即为将所述源文本文件与新生成的文本文件相比,新生成的文本文件中具有的所述数据更新事件所对应更新的文本数据。
一种实施例中,对所述拆分副本数据表进行合并处理为定时触发,响应作用于所述拆分副本数据表的定时合并指令后,将对该拆分副本数据表进行合并处理,以将该拆分副本数据表中存储的所有文本数据合并为新的文本文件。
合并生成新的所述文本文件后,将根据所述类对象匹配规则,匹配出该文本文件中各文本数据各自所对应的类对象,以将该些文本数据导入至对应的类对象进行数据引用,具体的,获取当前新生成的文本文件中当前待匹配的目标文本数据,确定该目标文本数据的数据组成格式,所述数据组成格式是指文本数据中各文本的数据类型及数据分隔符,进而确定出所述类对象匹配规则与所述数据组成格式相匹配的目标类对象,将目标文本数据作为目标类对象的引用文本数据,以此类推,匹配出所述文本文件中各文本数据所对应的类对象,将该些文本数据分配为各自对应的类对象的引用文本数据。
一种实施例中,除了通过所述数据组成格式为各文本数据匹配出对应的类对象外,也可通过文本数据所对应的数据属性为其匹配对应的类对象,所述数据属性是指文本数据在程序项目中由开发人员所自定义的属性,例如,当文本数据为商品标题数据时,可为该文本数据设置表征为商品标题数据的数据属性,以将该文本数据匹配为引用商品标题数据的类对象的引用文本数据。
通过本方法的典型实施例可知,本方法通过对大型文本文件进行拆分处理,以将大型文本文件中存储的所有文本数据拆分存储至各小型的拆分文件中,便于开发人员可针对拆分文本进行文本数据更新,使文本数据更新时不会对大型文本文件进行破坏,且监听各拆分文本的数据更新事件,保证文本事件更新时更新线程的数据安全问题,且通过生成具有各拆分文件的所有文本数据的拆分副本数据表作为各拆分文本的副本,使的进行文本数据更新时可针对拆分文本进行数据更新,并通过合并拆分文本文件中的更新后的文本数据生成新的文本文件,以基于完成文本数据更新的新文本文件进行类对象匹配,以在面对进行数据删除更新时,无需逐条查询出具有已被删除的文本数据的类对象后从该类对象中删除该文本数据,通过完成更新的文本文件为各类对象重新分配新的文本数据进行引用即可,高效地更新各类对象所引用的文本数据,且保证各类对象所引用的文本数据为更新后的文本数据,即保证类对象所具有的文本数据与更新后的文本数据的一致性。
以上的典型实施例及其变化实施例充分揭示了本申请的文件数据更新方法的实施方案,但是,仍可通过对一些技术手段的变换和扩增而演绎出该方法的多种变化实施例,如下概要说明其他实施例:
一种实施例中,请参考图3,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中的步骤中,包括如下步骤:
步骤S111,响应作用于源文本文件的文件拆分指令,确定该指令所对应的目标拆分数量:
所述的文件拆分指令用于将所述源文本文件触发为对应数量的拆分文件,通过为源文本文件设置所述目标拆分数量,以触发作用于该源文本文件的所述文件拆分指令,进而由当前设备响应该文件拆分指令,确定所述源文本文件所需拆分的拆分文本文件数量的目标拆分数量。
步骤S112,确定源文本文件中待拆分文本数据所处的存储位置序号,对该存储位置序号与目标拆分数量进行余数计算,将所述待拆分文本数据存储至文件序号为计算结果的余数的拆分文件中:
确定出需拆分的目标拆分数量后,将确定源文本文件中当前待拆分的文本数据所出的存储位置序号,例如,当所述待拆分文本数据的存储位置序号为1002时,且目标拆分数量为10时,对存储位置序号与目标拆分数量进行余数计算后,其中,所述存储位置序号作为被余数,计算结果将为2,则所述待拆分文本数据将存储至文件序号为2的拆分文件中。
步骤S113,以此类推,将所述源文本文件中各文本数据存储至对应的拆分文本中:
通过对所述源文本文件中各文本数据的存储位置序号与目标拆分数量进行余数计算,以将该些文本数据存储至其对应的文件序号所对应的拆分文件中,完成所述源文本文件中拆分,生成多个存储着所述源文本文件中对应文本数据的拆分文件。
本实施例中,基于源文本文件中各文本数据的存储位置,进而高效地确定出需将该些文本数据存储至对应的拆分文件中,进而有序地对大型文本文件拆分为多个拆分文件,以便后续进行拆分文本的文本数据副本覆盖及合并。
一种实施例中,请参考图4,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据的步骤中,包括如下步骤:
步骤S121,确定当前源文本文件所对应的各拆分文件的文件序号,且获取该些拆分文件各自具有的文本数据:
关于所述拆分副本数据表的生成方式,所述拆分副本数据表为各拆分文本的副本数据表,其基于各拆分文本对各文本数据进行分类存储,首先,将确定当前需生成拆分副本数据表的源文本文件的各拆分文件的文件序号,且确定该些拆分文件各自具有的文本数据。
步骤S122,将各所述文件序号作为键标识,且将该些文件序号所对应的文本数据作为值数据,生成多个由文件序号及其文本数据所组成的键值对数据:
确定出各所述拆分文件的文件序号及其存储的文本数据后,将该些文件序号作为值数据,将该些文件序号所对应的文本数据作为键数据,以生成多个由各所述文件序号及其对应的文本数据所组成的键值对数据,进而将各所述文件序号及其对应的文本数据进行对应存储。
步骤S123,将各所述键值对数据存储至所述拆分副本数据表中:
生成出任一由文件序号及文本数据所组成的键值对数据,将该键值对数据存储值所述拆分副本数据表中,以此类推,将各所述拆分文本的文件序号及其文本数据存储值所述拆分副本数据表中,以使该拆分副本数据表作为各拆分文本的文本数据的副本。
本实施例中,通过生成具有各拆分文件的文本数据的拆分副本数据表作为副本,以在文本数据的更新处理中作为更新目标,进而基于拆分副本数据表生成具有更新后的文本数据的文本文件,以提升具有更新后的文本数据一致性及时效性的文本文件。
一种实施例中,请参考图5,所述获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据的步骤中,包括如下步骤:
步骤S121’,获取所述更新队列当前输出的目标文件序号及更新文本数据:
所述更新队列将依照先入队先出队的规则输出其具有的各目标文件序号及其对应存储的更新文本数量,以数据流的方式推送其具有的数据。
步骤S122’,查询出所述拆分副本数据表中具有目标文件序号的目标键值对数据:
获取所述目标文件序号后,将查询出所述拆分副本数据表中具有该目标文件序号的目标键值对数据,进而对该目标键值对所存储的源文本数据进行更新。
步骤S123’,将所述目标键值对数据的值数据所存储的文本数据替换为所述更新文本数据:
查询出具有所述目标文件序号的目标键值对数据后,将该目标键值对数据所存储的原文本数据替换为所述更新文本数据,以对该目标键值对数据所存储的原文本数据进行更新。
本实施例中,通过查询作为副本的拆分副本数据表中需更新的键值对数据,以将该键值对数据中的原文本数据替换为更新后的文本数据,使得合并拆分副本数据表所生成的文本文件中存储的文本数据为更新后的文本数据。
一种实施例中,请参考图6,所述合并所述拆分副本数据表中所有文本数据生成新的文本文件的步骤中,包括如下步骤:
步骤S131,获取所述拆分副本数据表中所有文本数据及其存储位置序号:
所述存储位置序号表征文本数据在源文本文件中的存储位置,通过获取所述拆分副本数据表中各文本数据各自所对应的存储位置序号,以便将该些文本数据存储至合并后所生成的文本文件对应的存储位置中。
步骤S132,生成新的文本文件,并根据各所述文本数据的存储位置序号,顺序将该些文本数据存储至所述文本文件中:
生成新的文本文件以存储各文本数据,在存储各文本数据至新生成的所述文本文件时,将基于该些文本数据的存储位置序号,顺序将该些文本数据存储至所述文本文件中,即将存储位置序号最小的文本数据存储至所述文本文件中存储位置靠前的位置中。
本实施例中,基于各拆分副本数据表中文本数据的存储位置序号,顺序将该文本数据存储至新生成的文本文件中,使新生成的文本文件中各文本数据的存储位置与源文本文件中保持相同。
一种实施例中,请参考图7,所述并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象的步骤中,包括如下步骤:
步骤S131’,获取当前新生成的文本文件中当前待匹配的目标文本数据,确定该目标文本数据的数据组成格式,所述数据组成格式是指文本数据中各文本的数据类型及数据分隔符:
所述数据组成格式是指文本数据中各文本的数据类型及数据分隔符,其中,所述数据类型是指文本数据为长整型、短整型或数字等在高级编程语言中的数据类型,所述的数据分隔符是指“;”、“,”、“<>”或“[]”等在高级编程语言中的数据分隔符。
步骤S132’,确定出所述类对象匹配规则与所述数据组成格式相匹配的目标类对象,将目标文本数据作为目标类对象的引用文本数据:
所述类对象匹配规则中具有与多个类对象相对应的正则表达式或方法匹配规则,确定出当前需进行匹配的目标文本数据的表征数据类型及数据分隔符的所述数据组成格式后,将查询出与该数据组成格式相匹配的正则表达式或方法匹配规则,将该正则表达式或方法匹配规则所对应的类对象作为目标类对象,以将所述目标文本数据导入至该目标类对象中作为其引用文本数据。
步骤S133’,以此类推,匹配出所述文本文件中各文本数据所对应的类对象,将该些文本数据分配为各自对应的类对象的引用文本数据:
通过新生成的文本文件中各文本数据的所述数据组成格式,匹配出该些文本数据所对应的类对象,进而将该些文本数据分别导入至对应的类对象中,即将该些文本数据分配为各自对应的类对象的引用文本数据。
本实施例中,通过为新生成的文本文件中的文本数据匹配至对应的类对象,以便类对象引用最新更新文本数据,集中的匹配类对象,对于被删除的文本数据,无需进入类对象中进行文本数据删除,已删除的文本数据自然无法匹配到对于的类对象,类对象中所引用的文本数据也将被替换为新删除的文本文件中所具有的文本数据。
进一步,可以通过将上述各实施例所揭示的方法中的各个步骤进行功能化,构造出本申请的一种文件数据更新装置,按照这一思路,请参阅图8,其中的一个典型实施例中,该装置包括:更新文本获取模块11,用于监听源文本文件所对应的多个拆分文件所存储的文本数据,响应作用于任一拆分文件的数据更新事件,将该拆分文件的文件序号及更新文本数据对应存储至更新队列中,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中;文本数据更新模块12,用于获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据;文本对象匹配模块13,用于合并所述拆分副本数据表中所有文本数据生成新的文本文件,并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象。
一种实施例中,所述更新文本获取模块11包括:拆分指令响应子模块,用于响应作用于源文本文件的文件拆分指令,确定该指令所对应的目标拆分数量;拆分文本确定子模块,用于确定源文本文件中待拆分文本数据所处的存储位置序号,对该存储位置序号与目标拆分数量进行余数计算,将所述待拆分文本数据存储至文件序号为计算结果的余数的拆分文件中;数据拆分存储子模块,用于以此类推,将所述源文本文件中各文本数据存储至对应的拆分文本中。
一种实施例中,所述文本数据更新模块12包括:文本数据解析子模块,用于确定当前源文本文件所对应的各拆分文件的文件序号,且获取该些拆分文件各自具有的文本数据;数据键值对生成子模块,用于将各所述文件序号作为键标识,且将该些文件序号所对应的文本数据作为值数据,生成多个由文件序号及其文本数据所组成的键值对数据;键值对存储子模块,用于将各所述键值对数据存储至所述拆分副本数据表中。
另一种实施例中,所述文本数据更新模块12还包括:更新文本获取子模块,用于获取所述更新队列当前输出的目标文件序号及更新文本数据;目标键值对查询子模块,用于查询出所述拆分副本数据表中具有目标文件序号的目标键值对数据;文本数据替换子模块,用于将所述目标键值对数据的值数据所存储的文本数据替换为所述更新文本数据。
一种实施例中,所述文本对象匹配模块13包括:拆分数据获取子模块,用于获取所述拆分副本数据表中所有文本数据及其存储位置序号;文本文件生成子模块,用于生成新的文本文件,并根据各所述文本数据的存储位置序号,顺序将该些文本数据存储至所述文本文件中。
另一种实施例中,所述文本对象匹配模块13还包括:组成格式确定子模块,用于获取当前新生成的文本文件中当前待匹配的目标文本数据,确定该目标文本数据的数据组成格式,所述数据组成格式是指文本数据中各文本的数据类型及数据分隔符;目标类对象确定子模块,用于确定出所述类对象匹配规则与所述数据组成格式相匹配的目标类对象,将目标文本数据作为目标类对象的引用文本数据;用于文本数据分配子模块,用于以此类推,匹配出所述文本文件中各文本数据所对应的类对象,将该些文本数据分配为各自对应的类对象的引用文本数据。
为解决上述技术问题,本申请实施例还提供一种计算机设备,用于运行根据所述文件数据更新方法所实现的计算机程序。具体请参阅图9,图9为本实施例计算机设备基本结构框图。
如图9所示,计算机设备的内部结构示意图。该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、存储器和网络接口。其中,该计算机设备的非易失性存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种文件数据更新方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种文件数据更新方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本实施方式中处理器用于执行本申请的文件数据更新装置中的各个模块/子模块的具体功能,存储器存储有执行上述模块所需的程序代码和各类数据。网络接口用于向用户终端或服务器之间的数据传输。本实施方式中的存储器存储有文件数据更新装置中执行所有模块/子模块所需的程序代码及数据,服务器能够调用服务器的程序代码及数据执行所有子模块的功能。
本申请还提供一种非易失性存储介质,所述的文件数据更新方法被编写成计算机程序,以计算机可读指令的形式存储于该存储介质中,计算机可读指令被一个或多个处理器执行时,意味着该程序在计算机中的运行,由此使得一个或多个处理器执行上述任一实施例文件数据更新方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
综上所述,本申请可将作用于类对象的大型文件拆分为多个子文件进行监听更新,保证文件的数据在更新中的数据一致性,且在更新后高效地为各类对象匹配对应的数据。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种文件数据更新方法,其特征在于,包括如下步骤:
监听源文本文件所对应的多个拆分文件所存储的文本数据,响应作用于任一拆分文件的数据更新事件,将该拆分文件的文件序号及更新文本数据对应存储至更新队列中,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中;
获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据;
合并所述拆分副本数据表中所有文本数据生成新的文本文件,并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象。
2.根据权利要求1所述的方法,其特征在于,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中的步骤中,包括如下步骤:
响应作用于源文本文件的文件拆分指令,确定该指令所对应的目标拆分数量;
确定源文本文件中待拆分文本数据所处的存储位置序号,对该存储位置序号与目标拆分数量进行余数计算,将所述待拆分文本数据存储至文件序号为计算结果的余数的拆分文件中;
以此类推,将所述源文本文件中各文本数据存储至对应的拆分文本中。
3.根据权利要求1所述的方法,其特征在于,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据的步骤中,包括如下步骤:
确定当前源文本文件所对应的各拆分文件的文件序号,且获取该些拆分文件各自具有的文本数据;
将各所述文件序号作为键标识,且将该些文件序号所对应的文本数据作为值数据,生成多个由文件序号及其文本数据所组成的键值对数据;
将各所述键值对数据存储至所述拆分副本数据表中。
4.根据权利要求1所述的方法,其特征在于,所述获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据的步骤中,包括如下步骤:
获取所述更新队列当前输出的目标文件序号及更新文本数据;
查询出所述拆分副本数据表中具有目标文件序号的目标键值对数据;
将所述目标键值对数据的值数据所存储的文本数据替换为所述更新文本数据。
5.根据权利要求1所述的方法,其特征在于,所述合并所述拆分副本数据表中所有文本数据生成新的文本文件的步骤中,包括如下步骤:
获取所述拆分副本数据表中所有文本数据及其存储位置序号;
生成新的文本文件,并根据各所述文本数据的存储位置序号,顺序将该些文本数据存储至所述文本文件中。
6.根据权利要求1所述的方法,其特征在于,所述并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象的步骤中,包括如下步骤:
获取当前新生成的文本文件中当前待匹配的目标文本数据,确定该目标文本数据的数据组成格式,所述数据组成格式是指文本数据中各文本的数据类型及数据分隔符;
确定出所述类对象匹配规则与所述数据组成格式相匹配的目标类对象,将目标文本数据作为目标类对象的引用文本数据;
以此类推,匹配出所述文本文件中各文本数据所对应的类对象,将该些文本数据分配为各自对应的类对象的引用文本数据。
7.一种文件数据更新装置,其特征在于,包括:
更新文本获取模块,用于监听源文本文件所对应的多个拆分文件所存储的文本数据,响应作用于任一拆分文件的数据更新事件,将该拆分文件的文件序号及更新文本数据对应存储至更新队列中,所述源文本文件的所有文本数据根据文件拆分规则分散存储至各拆分文件中;
文本数据更新模块,用于获取所述更新队列输出的文件序号及其更新文本数据,将拆分副本数据表中该文件序号对应的原文本数据替换为更新文本数据,所述拆分副本数据表中存储着各所述拆分文件的文件序号及其文本数据所组成的映射关系数据;
文本对象匹配模块,用于合并所述拆分副本数据表中所有文本数据生成新的文本文件,并根据类对象匹配规则,匹配出该文本文件中各文本数据所对应的类对象。
8.一种电子设备,包括中央处理器和存储器,其特征在于,所述中央处理器用于调用运行存储于所述存储器中的计算机程序以执行如权利要求1至6中任一项所述的方法的步骤。
9.一种非易失性存储介质,其特征在于,其以计算机可读指令的形式存储有依据权利要求1至6中任意一项所述的方法所实现的计算机程序,该计算机程序被计算机调用运行时,执行该方法所包括的步骤。
10.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至6任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210918216.0A CN115237446A (zh) | 2022-08-01 | 2022-08-01 | 文件数据更新方法及其装置、设备、介质、产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210918216.0A CN115237446A (zh) | 2022-08-01 | 2022-08-01 | 文件数据更新方法及其装置、设备、介质、产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115237446A true CN115237446A (zh) | 2022-10-25 |
Family
ID=83676864
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210918216.0A Pending CN115237446A (zh) | 2022-08-01 | 2022-08-01 | 文件数据更新方法及其装置、设备、介质、产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115237446A (zh) |
-
2022
- 2022-08-01 CN CN202210918216.0A patent/CN115237446A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108510082B (zh) | 对机器学习模型进行处理的方法及装置 | |
CN104573115B (zh) | 支持多类型数据库操作的集成接口的实现方法及系统 | |
US9619491B2 (en) | Streamlined system to restore an analytic model state for training and scoring | |
CN101385017B (zh) | 部分项改变跟踪和同步 | |
US20170063965A1 (en) | Data transfer in a collaborative file sharing system | |
CN112069265B (zh) | 配置数据的同步方法、业务数据系统、计算机系统和介质 | |
US20170064027A1 (en) | Data caching in a collaborative file sharing system | |
CN103473696A (zh) | 一种收集、分析和分发网络商业信息的方法和系统 | |
CN106681820B (zh) | 基于消息组合的可扩展大数据计算方法 | |
CN108885641A (zh) | 高性能查询处理和数据分析 | |
EP2836921A2 (en) | A system and a method for reasoning and running continuous queries over data streams | |
KR101950050B1 (ko) | 이벤트 데이터 획득을 위한 스케일 아웃 시스템 | |
CN111966692A (zh) | 针对数据仓库的数据处理方法、介质、装置和计算设备 | |
CN113961643A (zh) | 搜索引擎更新方法及其装置、设备、介质、产品 | |
CN111338717B (zh) | 接口调用方法、应用程序升级方法及服务器和客户端 | |
CN112732663A (zh) | 一种日志信息处理方法及装置 | |
CN111858617A (zh) | 用户查找方法和装置、计算机可读存储介质、电子设备 | |
CN115237446A (zh) | 文件数据更新方法及其装置、设备、介质、产品 | |
CN114647702A (zh) | 数据同步处理方法及其装置、设备、介质 | |
WO2023096731A1 (en) | Detect anomalous container deployment at a container orchestration service | |
CN114661726A (zh) | 数据类型映射处理方法及其装置、设备、介质及产品 | |
CN114756301A (zh) | 日志处理方法、装置和系统 | |
CN108182241A (zh) | 一种数据交互的优化方法、装置、服务器及存储介质 | |
CN112637288A (zh) | 流式数据分发方法和系统 | |
CN111447279A (zh) | 服务器及接口解析服务包生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |