CN112632266B - 数据写入方法、装置、计算机设备及可读存储介质 - Google Patents
数据写入方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN112632266B CN112632266B CN201910955259.4A CN201910955259A CN112632266B CN 112632266 B CN112632266 B CN 112632266B CN 201910955259 A CN201910955259 A CN 201910955259A CN 112632266 B CN112632266 B CN 112632266B
- Authority
- CN
- China
- Prior art keywords
- data
- service party
- configuration
- database
- party
- 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/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Abstract
本发明公开了一种数据写入方法、装置、计算机设备及可读存储介质,属于数据处理技术领域。本发明的数据写入方法包括:加载配置信息到内存中;根据所述配置信息中的控制类配置确定待写入数据的写入策略;在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。本发明可以将业务数据快速接入ElasticSearch。
Description
技术领域
本发明涉及数据处理领域,尤其涉及一种数据写入方法、装置、计算机设备及可读存储介质。
背景技术
随着现代社会科技的发展,在现今的IT系统中全文搜索已成为一个最常见的需求。其中,底层基于开源项目Lucene(全文搜索引擎)封装的Elasticsearch(搜索服务器),具有分布式、可扩展性、实时的搜索与数据分析能力,它提供了 REST API的操作接口,它能从项目一开始就赋予你的数据以搜索、分析和探索的能力,是目前全文搜索引擎的首选。
具体的,可以把Elasticsearch看做为一个文档型数据库,而Index(索引)定义了文档的逻辑存储和字段类型,每个Index可以包含多个Document Type(分档类型),而Document Type是Document(文档)的集合。对于全文检索来说,索引是一个关键的过程,相当于关系数据库里面的存储过程,只有通过索引操作,才能对数据(Document)进行分析存储、创建倒排索引,从而让使用者查询到相关的Document信息。
现有技术中,虽然通过Elasticsearch可以实现数据的快速搜索、分析,但是当将业务方数据接入该ElasticSearch时,需要人工对每一步进行单独设置,使得接入过程耗时较长,不方便快速的接入业务。
发明内容
针对现有技术在将业务方数据接入该ElasticSearch时,耗时较长的问题,现提供一种数据写入方法、装置、计算机设备及计算机可读存储介质,以将业务数据快速接入ElasticSearch。
本发明提供了一种数据写入方法,包括下述步骤:
加载配置信息到内存中;
根据所述配置信息中的控制类配置确定待写入数据的写入策略;
在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;
当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。
可选地,所述写入策略包括全量写入以及增量写入,所述方法还包括:
在所述写入策略为所述增量写入时,从消息队列中获取第一业务方的数据,以及从所述第二数据库中获取第二业务方的数据。
可选地,所述第一业务方的数据为评论数据,所述第二业务方的数据为稿件数据、专栏数据、活动数据以及漫画数据中的一种。
可选地,所述评论数据包括所述第二业务方的标识,所述方法还包括:
根据所述评论数据中的业务方的标识过滤掉所述第一业务方的数据中业务方的标识不为预设标识的数据。
可选地,所述方法还包括:
对获取到的第一业务方的数据进行数据格式转换;
所述从第二数据库中获取第二业务方的数据的步骤包括:
对格式转换后的各个数据进行遍历,并根据所述各个数据中的业务方的标识从对应的第二数据库中获取所述第二业务方的数据;
对获取到的第二业务方的数据进行数据格式转换。
可选地,所述根据所述各个数据中的业务方的标识从对应的第二数据库中获取所述第二业务方的数据的步骤包括:
获取所述配置信息中的数据模型配置,根据所述数据模型配置确定拉取的字段;
从获取的所述第二业务方的数据中抽取所述字段对应的数据。
可选地,所述数据写入方法还包括:
提供一配置界面,以供用户配置所述配置信息,所述配置信息包括资源依赖配置、数据模型配置、索引配置以及控制类配置。
本发明还提供了一种数据写入装置,包括:
加载模块,用于加载配置信息到内存中;
确定模块,用于根据所述配置信息中的控制类配置确定待写入数据的写入策略,所述写入策略包括全量写入以及增量写入;
获取模块,用于在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;
写入模块,用于当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。
本发明还提供了一种计算机设备,所述计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
上述技术方案的有益效果:
本技术方案中,通过加载配置信息到内存中;根据所述配置信息中的控制类配置确定待写入数据的写入策略,所述写入策略包括全量写入以及增量写入;在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。本案通过定义了通用化的配置,使得业务方在接入ElasticSearch时,可以根据需要选定配置信息,然后根据配置信息接入到 ElasticSearch,而不用通过用户对每一步进行单独设置,从而可以将业务数据快速接入ElasticSearch。
附图说明
图1为实现本发明所述数据写入方法的应用环境示意图;
图2为本发明所述的数据写入方法的一种实施例的流程图;
图3为本发明中根据所述各个数据中的业务方的标识从对应的第二数据库中获取所述第二业务方的数据的步骤细化流程图;
图4为本发明所述的数据写入方法的另一种实施例的流程图;
图5为本发明所述的数据写入装置的一种实施例的模块图;
图6为本发明实施例提供的执行数据写入方法的计算机设备的硬件结构示意图;
图7为本发明一实施方式中对业务进行配置的配置流程图;
图8为本发明一实施方式中将业务数据写入到集群中的数据写入流程图。
具体实施方式
以下结合附图与具体实施例进一步阐述本发明的优点。
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本发明的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本发明及区别每一步骤,因此不能理解为对本发明的限制。
图1示意性示出了根据本申请实施例的数据写入方法的应用环境示意图。在示例性的实施例中,计算机设备2(作为数据发送端)可以通过网络6向数据接收端4发送数据。所述计算机设备2可以是服务器、膝上型计算机(laptop computer)等具有数据发送功能的电子设备。所述数据接收端4可以是服务器、机顶盒、移动电话、平板个人计算机、膝上型计算机、智能电视等具有数据接收功能的电子设备。所述网络6可以是因特网。
本发明为解决在将业务方数据接入ElasticSearch(一个开源的搜索服务器) 时,耗时较长的问题,提出了一种数据写入方法。参阅图2,其为本发明一实施例的数据写入方法的流程示意图,从图中可以看出,本实施例中所提供的数据写入方法包括:
步骤S20、加载配置信息到内存中;
具体地,当Job启动(任务初始化)时,系统会加载业务的配置信息到内存中。所述配置信息包括资源依赖配置、数据模型配置、索引配置以及控制类配置。所述资料依赖配置包括对ES集群的配置、数据库(DB)的配置、数据表(Table)的配置、消息队列(Databus)的配置等。所述数据模型配置包括对第一业务方数据(主数据)的配置以及对第二业务方数据(Join数据)的配置,具体的配置可以包括数据库的选择、表的正则表达、字段选择、字段映射、条件过滤等。所述索引配置包括mapping的设置、分索引的规则配置(比如,可以该配置规则可以为单个索引、取模拆分、按时间拆分或按表后缀拆分)、唯一ID的规则配置(比如,该唯一ID可以为单个字段、组合字段或者通用唯一识别码)、过期规则配置、集群双写规则配置。所述控制类配置包括对读写速率的配置、对增量和全量开关的配置、对读索引的各种权限的配置。其中,读索引的各种权限的配置具体可以包括一次性最多访问多少个索引、是否可以集群嗅探、最大的内存页是多大、是否可以使用scroll查询等。
在本实施例中,该配置信息可以由用户预先通过一个配置界面来配置,然后根据用户选择的实际配置情况生成该配置信息。
可选地,在一具体应用场景中,也可以参照如图7所示的配置流程图来对业务(business)所需的各项配置信息进行配置,并在完成配置后根据用户的配置情况来生成该业务的配置信息。
步骤S21、根据所述配置信息中的控制类配置确定待写入数据的写入策略。
具体地,所述控制内配置包括数据的写入策略,该写入策略包括全量写入以及增量写入,其中,全量写入策略为将数据库中的数据全部写入到对应集群的策略,所述增量写入策略为将仅仅新增加的数据写入到对应集群的策略。
在一具体实施方式中,可以通过判断该控制类配置中的全量开关和增量开关中的哪一个处于开启状态来判定执行全量写入策略还是执行增量写入策略。
步骤S22、在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据。
具体地,在判定写入策略为全量写入时,即可根据资源依赖配置、数据模型配置从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据,所述第二业务方的数据与所述第一业务方的数据是对应关联的。
在本实施例中,所述第一数据库为用于存储第一业务方数据的数据库,所述第二数据库为用于存储第二业务方数据的数据库,其中,第一业务方数据为用户自身部门的数据,第二业务方数据为其他部门的数据。需要说明的是,在本实施例中的业务方的数量并无限制。
在一实施方式中,该第一业务方数据可以为用户的评论数据,该第二业务方的数据可以为稿件数据、专栏数据、活动数据以及漫画数据中的一种,相应的,该第一数据库可以为评论数据库,该第二数据库可以为稿件数据库、专栏数据库、活动数据库或者漫画数据库。在本实施例中,该评论数据可以包括评论唯一标识、评论内容、评论者、评论时间、评论状态、被举报记录、第二业务方标识、第二业务方的数据标识等。该第二业务方的数据根据第二业务方类型不同而相应具有对应的内容,例如,若该第二业务方为稿件时,则该第二业务方数据可以包括标题、作者、分区、简介、发布时间等;若该第二业务方为专栏时,则该第二业务方数据可以包括标题、作者等;若该第二业务方为活动时,则该第二业务方数据可以包括标题、活动开始时间等;若该第二业务方为漫画时,则该第二业务方数据可以包括标题、作者、简介、上架时间等。
在一实施方式中,该第二业务方的数据还可以为账号数据,相应地,该第二数据库还可以为账号数据库,该账号数据可以包括评论者的昵称、评论者的登录ip、稿件作者的昵称、稿件作者的等级、举报者的昵称等。
可以理解的是,上述第二业务方数据可以根据业务方的不同,而从对应的数据库中获取,比如,从稿件数据库、专栏数据库、活动数据库、漫画数据库或者账号数据库中获取。
在本实施例中,当从对应数据库中获取数据时,可以通过遍历数据库的方式来从数据库中获取所需要的数据。
进一步地,在一实施方式中,由于评论数据除了稿件数据、专栏数据、活动数据以及漫画数据之外,还可以有其他类型的数据,为了减少数据的处理量,本发明实施在获取到评论数据之后,可以根据评论数据中的业务方的标识过滤掉所述第一业务方的数据中业务方的标识不为预设标识的数据。
具体地,所述评论数据包括所述第二业务方的标识,所述标识用于指明业务方的类型,比如,可以采用标识“00”代表稿件,采用标识“01”代表专栏,采用标识“10”代表活动,采用标识“11”代表漫画。所述预设标识为代表稿件、专栏、活动或者漫画的标识。
需要说明的是,上述采用的标识仅为示例性的,并不用于对本发明进行限定。
在获取到第一业务方的数据之后,通过评论数据中的业务方标识即可以判定评论数据的类型,在判定该第一业务方的数据中业务方的标识不为所述预设标识时,就可以将该条数据过滤掉。
进一步地,在一实施方式中,由于获取到的第一业务方的数据格式存在多种,为了便于后续数据的处理,在获取到第一业务方的数据之后,可以对获取到的第一业务方的数据进行数据格式转换。
具体地,在将数据进行格式转换时,可以对第一业务方的数据类型进行类型强转,即可以将第一业务方的数据中的各类型字段都转换为整型或字符型等。
在对第一业务方的数据进行数据格式转换之后,可以对各个数据进行遍历,每遍历到一个数据之后,根据该数据中的业务方标识从与该业务方标识对应的第二数据库中获取第二业务方的数据。
具体地,参照图3,所述根据所述各个数据中的业务方的标识从对应的第二数据库中获取所述第二业务方的数据的步骤包括:
步骤S30,获取所述配置信息中的数据模型配置,根据所述数据模型配置确定拉取的字段。
步骤S31,从获取的所述第二业务方的数据中抽取所述字段对应的数据。
在一实施方式中,由于第二业务方的数据包含很多字段的数据,而有些字段的数据不是用户关注的数据,因此,为了减少获取的数据量,可以通过预先在数据模型配置中配置需要拉取的字段,这样,当从第二数据库中获取所述第二业务方的数据时,即可以先通过获取配置信息中的数据模型配置,然后通过该数据模型配置中包含的对拉取字段的设置来确定具体需要抽取第二业务方的数据中的哪些字段的数据。示例性地,该数据模型配置中包含有稿件的标题、作者、分区、简介、发布时间字段,则在第二业务方的数据为稿件数据时,就可以只抽取稿件数据中的标题、作者、分区、简介、发布时间字段对应的数据,而不会抽取其他字段对应的数据。
在本实施例中,由于获取到的第二业务方的数据可能包含时间信息,而获取到的时间信息一般是以年月日时分秒的形式存在的,该时间信息占用内存较多,为了节省内存,可以对该获取的第二业务方的数据进行数据格式转换,以便将该第二业务方的数据中的时间信息转换为年月日格式的数据。
示例性的,当第二业务方的数据为稿件数据时,可以对稿件数据中的发布时间做一次数据格式转换,得到年月日的发布时间数据;当第二业务方的数据为活动数据时,可以对活动数据中的开始时间做一次数据格式转换,得到年月日的开始时间数据;当第二业务方的数据为漫画数据时,可以对漫画数据中的上架时间做一次数据格式转换,得到年月日的上架时间数据。
进一步地,在另一实施方式中,在所述写入策略为所述增量写入时,从消息队列中获取第一业务方的数据,以及从所述第二数据库中获取第二业务方的数据。
具体地,在判定写入策略为增量写入时,即可根据资源依赖配置、数据模型配置从消息队列中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据,所述第二业务方的数据与所述第一业务方的数据是对应关联的。
其中,消息队列为用于存储第一业务方的新增数据,该新增数据为离当前时刻最近的一预设时间内所新生成的数据,例如,当前时刻为08:00,该预设时间为1分钟,则该新增数据则为在07:59-08:00时间段内所产生的数据。
步骤S23、当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。
具体地,在获取到第一业务方的数据和第二业务方的数据之后,需要判断获取到的数据是否达到预设的数据量,即达到所述预设阈值,若达到所述预设阈值,则可以对获取到的数据进行数据装载。
在本实施例中,在对数据进行装载的过程中,首先需要将第一业务方数据与对应的第二业务方的数据进行拼接以得到完整的数据,例如,可以将第一业务方的评论数据与该评论数据对应的稿件数据进行拼接,以得到包含稿件数据的评论数据,或者可以将第一业务方的评论数据与该评论数据对应的专栏数据进行拼接,以得到包含专栏数据的评论数据,或者可以将第一业务方的评论数据与该评论数据对应的活动数据进行拼接,以得到包含活动数据的评论数据,或者可以将第一业务方的评论数据与该评论数据对应的漫画数据进行拼接,以得到包含漫画数据的评论数据。
在完成数据的拼接之后,可以根据预设的索引配置来确定每条数据的索引归属,每条数据的唯一ID,以及每条数据归属的集群等,然后将各个数据封装成es期望的批量格式。
当完成数据装载之后,即可将该装载的数据写入对应的集群中,具体写入的集群可以根据预设的资源依赖配置来确定。
在本发明实施方式中,当将数据写入对应的集群中之后,为了将所有的数据写入到集群中,需要进一步判断第一业务方的数据是否全部写入到集群中,若数据未全部写入到集群中,则需要重新执行步骤S22-S23,直到所有的第一业务方的数据都写入到集群中。
可选地,在一具体业务场景中,可参照如图8所示的业务数据写入流程图来将业务数据写入到集群中。
在本实施例中,通过加载配置信息到内存中;根据所述配置信息中的控制类配置确定待写入数据的写入策略,所述写入策略包括全量写入以及增量写入;在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。本案通过定义了通用化的配置,使得业务方在接入ElasticSearch时,可以根据需要选定配置信息,然后根据配置信息接入到 ElasticSearch,而不用通过用户对每一步进行单独设置,从而可以将业务数据快速接入ElasticSearch。
进一步地,参阅图4,其为本发明另一实施例的数据写入方法的流程示意图,从图中可以看出,本实施例中所提供的数据写入方法包括以下步骤:
步骤S40,提供一配置界面,以供用户配置所述配置信息,所述配置信息包括资源依赖配置、数据模型配置、索引配置以及控制类配置。
具体地,用户通过该配置界面可以对资源依赖进行配置、数据模型进行配置、索引进行配置以及控制类进行配置。
在一应用场景中,用户可以通过如下步骤实现配置:
第一步,创建一个名为reply_list的业务
第二步,从部门数据库中推拽出评论库,放置右侧空白区域,从评论库中下拉出以下字段:评论唯一标识、评论内容、评论者、评论时间、评论状态、被举报记录、业务方标识、业务方的数据标识;
然后继续推拽出稿件库,与评论库拼接上,并选择业务方标识为稿件,从稿件库中下拉出以下字段:标题、作者、分区、简介、发布时间;
然后继续拖拽出专栏库,与评论库拼接上,并选择业务方标识为专栏,从专栏库中下拉出以下字段:标题、作者;
然后继续拖拽出活动库,与评论库拼接上,并选择业务方标识为活动,从专栏库中下拉出以下字段:标题、活动开始时间;
然后继续拖拽出漫画库,与评论库拼接上并选择业务方标识为漫画,从专栏库中下拉出以下字段:标题、作者、简介、上架时间;
然后增加过滤条件,比如,评论库的业务方标识,只允许是稿件、专栏、活动、漫画其中一个;
增加字段格式化,自动识别所有字段自身的类型(整型、字符型、浮点型、时间戳等),对稿件的发布时间、活动的开始时间、漫画的上架时间默认是年月日时分秒,将其改成转换为年月日;
增加统计,计算被举报记录的个数;
第三步,选择将聚合的数据按照月份分割(其他分割选项还有:按年、日、周、取模),方便按月份查询;
然后选择评论唯一标识作为索引的主键;
然后根据之前下拉的所有字段自动生成一份符合规范的mapping;
然后选择评论库的消息队列作为新增数据的来源;
然后选择写入的es集群,可以选择写入多个集群;
第四步,打开新增数据控制开关或者打开全量数据控制开关。
在用户完成上述配置步骤后,即可以根据用户选择的配置项生成所述配置信息。
步骤S41,加载配置信息到内存中。
步骤S42,根据所述配置信息中的控制类配置确定待写入数据的写入策略;
步骤S43,在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据.
步骤S44,当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。
本实施例中的步骤S41-S44与上述实施例中的步骤S20-S23大致相同,在本实施例中不再赘述。
本实施例中,通过提供一配置页面,使得用户可以方便对业务方的数据接入进行配置,从而可以提高接入效率。
参阅图5所示,是本发明数据写入装置500一实施例的程序模块图。
本实施例中,所述数据写入装置500包括一系列的存储于存储器上的计算机程序指令,当该计算机程序指令被处理器执行时,可以实现本发明各实施例的数据写入功能。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,数据写入装置500可以被划分为一个或多个模块。例如,在图5中,所述数据写入装置500可以被分割成加载模块501、确定模块502、获取模块 503、写入模块504及提供模块505。其中:
加载模块501,用于加载配置信息到内存中;
具体地,当Job启动(任务初始化)时,加载模块501会加载业务的配置信息到内存中。所述配置信息包括资源依赖配置、数据模型配置、索引配置以及控制类配置。所述资料依赖配置包括对ES集群的配置、数据库的配置、数据表的配置、消息队列的配置等。所述数据模型配置包括对第一业务方数据的配置以及对第二业务方数据的配置,具体的配置可以包括数据库的选择、表的正则表达、字段选择、字段映射、条件过滤等。所述索引配置包括mapping的设置、分索引的规则配置(比如,可以该配置规则可以为单个索引、取模拆分、按时间拆分或按表后缀拆分)、唯一ID的规则配置(比如,该唯一ID可以为单个字段、组合字段或者通用唯一识别码)、过期规则配置、集群双写规则配置。所述控制类配置包括对读写速率的配置、对增量和全量开关的配置、对读索引的各种权限的配置。其中,读索引的各种权限的配置具体可以包括一次性最多访问多少个索引、是否可以集群嗅探、最大的内存页是多大、是否可以使用scroll查询等。
在本实施例中,该配置信息可以由用户预先通过一个配置界面来配置,然后根据用户选择的实际配置情况生成该配置信息。
确定模块502,用于根据所述配置信息中的控制类配置确定待写入数据的写入策略。
具体地,所述控制内配置包括数据的写入策略,该写入策略包括全量写入以及增量写入,其中,全量写入策略为将数据库中的数据全部写入到对应集群的策略,所述增量写入策略为将仅仅新增加的数据写入到对应集群的策略。
在一具体实施方式中,可以通过判断该控制类配置中的全量开关和增量开关中的哪一个处于开启状态来判定执行全量写入策略还是执行增量写入策略。
获取模块503,用于在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据。
具体地,在判定写入策略为全量写入时,即可根据资源依赖配置、数据模型配置从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据,所述第二业务方的数据与所述第一业务方的数据是对应关联的。
在本实施例中,所述第一数据库为用于存储第一业务方数据的数据库,所述第二数据库为用于存储第二业务方数据的数据库,其中,第一业务方数据为用户自身部门的数据,第二业务方数据为其他部门的数据。
在一实施方式中,该第一业务方数据可以为用户的评论数据,该第二业务方的数据可以为稿件数据、专栏数据、活动数据以及漫画数据中的一种,相应的,该第一数据库可以为评论数据库,该第二数据库可以为稿件数据库、专栏数据库、活动数据库或者漫画数据库。在本实施例中,该评论数据可以包括评论唯一标识、评论内容、评论者、评论时间、评论状态、被举报记录、第二业务方标识、第二业务方的数据标识等。该第二业务方的数据根据第二业务方类型不同而相应具有对应的内容,例如,若该第二业务方为稿件时,则该第二业务方数据可以包括标题、作者、分区、简介、发布时间等;若该第二业务方为专栏时,则该第二业务方数据可以包括标题、作者等;若该第二业务方为活动时,则该第二业务方数据可以包括标题、活动开始时间等;若该第二业务方为漫画时,则该第二业务方数据可以包括标题、作者、简介、上架时间等。
在一实施方式中,该第二业务方的数据还可以为账号数据,相应地,该第二数据库还可以为账号数据库,该账号数据可以包括评论者的昵称、评论者的登录ip、稿件作者的昵称、稿件作者的等级、举报者的昵称等。
可以理解的是,上述第二业务方数据可以根据业务方的不同,而从对应的数据库中获取,比如,从稿件数据库、专栏数据库、活动数据库、漫画数据库或者账号数据库中获取。
进一步地,在一实施方式中,由于评论数据除了稿件数据、专栏数据、活动数据以及漫画数据之外,还可以有其他类型的数据,为了减少数据的处理量,本发明实施在获取到评论数据之后,可以根据评论数据中的业务方的标识过滤掉所述第一业务方的数据中业务方的标识不为预设标识的数据。
具体地,所述评论数据包括所述第二业务方的标识,所述标识用于指明业务方的类型,比如,可以采用标识“00”代表稿件,采用标识“01”代表专栏,采用标识“10”代表活动,采用标识“11”代表漫画。所述预设标识为代表稿件、专栏、活动或者漫画的标识。
需要说明的是,上述采用的标识仅为示例性的,并不用于对本发明进行限定。
在获取到第一业务方的数据之后,通过评论数据中的业务方标识即可以判定评论数据的类型,在判定该第一业务方的数据中业务方的标识不为所述预设标识时,就可以将该条数据过滤掉。
进一步地,在一实施方式中,由于获取到的第一业务方的数据格式存在多种,为了便于后续数据的处理,在获取到第一业务方的数据之后,可以对获取到的第一业务方的数据进行数据格式转换。
具体地,在将数据进行格式转换时,可以对第一业务方的数据类型进行类型强转,即可以将第一业务方的数据中的各类型字段都转换为整型或字符型等。
在对第一业务方的数据进行数据格式转换之后,可以对各个数据进行遍历,每遍历到一个数据之后,根据该数据中的业务方标识从与该业务方标识对应的第二数据库中获取第二业务方的数据。
具体地,所述获取模块503,还用于获取所述配置信息中的数据模型配置,根据所述数据模型配置确定拉取的字段,以及用于从获取的所述第二业务方的数据中抽取所述字段对应的数据。
在一实施方式中,由于第二业务方的数据包含很多字段的数据,而有些字段的数据不是用户关注的数据,因此,为了减少获取的数据量,可以通过预先在数据模型配置中配置需要拉取的字段,这样,当从第二数据库中获取所述第二业务方的数据时,即可以先通过获取配置信息中的数据模型配置,然后通过该数据模型配置中包含的对拉取字段的设置来确定具体需要抽取第二业务方的数据中的哪些字段的数据。示例性地,该数据模型配置中包含有稿件的标题、作者、分区、简介、发布时间字段,则在第二业务方的数据为稿件数据时,就可以只抽取稿件数据中的标题、作者、分区、简介、发布时间字段对应的数据,而不会抽取其他字段对应的数据。
在本实施例中,由于获取到的第二业务方的数据可能包含时间信息,而获取到的时间信息一般是以年月日时分秒的形式存在的,该时间信息占用内存较多,为了节省内存,可以对该获取的第二业务方的数据进行数据格式转换,以便将该第二业务方的数据中的时间信息转换为年月日格式的数据。
示例性的,当第二业务方的数据为稿件数据时,可以对稿件数据中的发布时间做一次数据格式转换,得到年月日的发布时间数据;当第二业务方的数据为活动数据时,可以对活动数据中的开始时间做一次数据格式转换,得到年月日的开始时间数据;当第二业务方的数据为漫画数据时,可以对漫画数据中的上架时间做一次数据格式转换,得到年月日的上架时间数据。
进一步地,在另一实施方式中,在所述写入策略为所述增量写入时,从消息队列中获取第一业务方的数据,以及从所述第二数据库中获取第二业务方的数据。
具体地,在判定写入策略为增量写入时,即可根据资源依赖配置、数据模型配置从消息队列中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据,所述第二业务方的数据与所述第一业务方的数据是对应关联的。
其中,消息队列为用于存储第一业务方的新增数据,该新增数据为离当前时刻最近的一预设时间内所新生成的数据,例如,当前时刻为08:00,该预设时间为1分钟,则该新增数据则为在07:59-08:00时间段内所产生的数据。
写入模块504,用于当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。
具体地,在获取到第一业务方的数据和第二业务方的数据之后,需要判断获取到的数据是否达到预设的数据量,即达到所述预设阈值,若达到所述预设阈值,则可以对获取到的数据进行数据装载。
在本实施例中,在对数据进行装载的过程中,首先需要将第一业务方数据与对应的第二业务方的数据进行拼接以得到完整的数据,例如,可以将第一业务方的评论数据与该评论数据对应的稿件数据进行拼接,以得到包含稿件数据的评论数据,或者可以将第一业务方的评论数据与该评论数据对应的专栏数据进行拼接,以得到包含专栏数据的评论数据,或者可以将第一业务方的评论数据与该评论数据对应的活动数据进行拼接,以得到包含活动数据的评论数据,或者可以将第一业务方的评论数据与该评论数据对应的漫画数据进行拼接,以得到包含漫画数据的评论数据。
在完成数据的拼接之后,可以根据预设的索引配置来确定每条数据的索引归属,每条数据的唯一ID,以及每条数据归属的集群等,然后将各个数据封装成es期望的批量格式。
当完成数据装载之后,即可将该装载的数据写入对应的集群中,具体写入的集群可以根据预设的资源依赖配置来确定。
在本发明实施方式中,当将数据写入对应的集群中之后,为了将所有的数据写入到集群中,需要进一步判断第一业务方的数据是否全部写入到集群中,若数据未全部写入到集群中,则需要继续通过获取模块503从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;以及通过写入模块504将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中,直到所有的第一业务方的数据都写入到集群中。
提供模块505,用于提供一配置界面,以供用户配置所述配置信息,所述配置信息包括资源依赖配置、数据模型配置、索引配置以及控制类配置。
具体地,用户通过该配置界面可以对资源依赖进行配置、数据模型进行配置、索引进行配置以及控制类进行配置。
在一应用场景中,用户可以通过如下步骤实现配置:
第一步,创建一个名为reply_list的业务
第二步,从部门数据库中推拽出评论库,放置右侧空白区域,从评论库中下拉出以下字段:评论唯一标识、评论内容、评论者、评论时间、评论状态、被举报记录、业务方标识、业务方的数据标识;
然后继续推拽出稿件库,与评论库拼接上,并选择业务方标识为稿件,从稿件库中下拉出以下字段:标题、作者、分区、简介、发布时间;
然后继续拖拽出专栏库,与评论库拼接上,并选择业务方标识为专栏,从专栏库中下拉出以下字段:标题、作者;
然后继续拖拽出活动库,与评论库拼接上,并选择业务方标识为活动,从专栏库中下拉出以下字段:标题、活动开始时间;
然后继续拖拽出漫画库,与评论库拼接上并选择业务方标识为漫画,从专栏库中下拉出以下字段:标题、作者、简介、上架时间;
然后增加过滤条件,比如,评论库的业务方标识,只允许是稿件、专栏、活动、漫画其中一个;
增加字段格式化,自动识别所有字段自身的类型(整型、字符型、浮点型、时间戳等),对稿件的发布时间、活动的开始时间、漫画的上架时间默认是年月日时分秒,将其改成转换为年月日;
增加统计,计算被举报记录的个数;
第三步,选择将聚合的数据按照月份分割(其他分割选项还有:按年、日、周、取模),方便按月份查询;
然后选择评论唯一标识作为索引的主键;
然后根据之前下拉的所有字段自动生成一份符合规范的mapping;
然后选择评论库的消息队列作为新增数据的来源;
然后选择写入的es集群,可以选择写入多个集群;
第四步,打开新增数据控制开关或者打开全量数据控制开关。
在用户完成上述配置步骤后,即可以根据用户选择的配置项生成所述配置信息。
在本实施例中,通过加载配置信息到内存中;根据所述配置信息中的控制类配置确定待写入数据的写入策略,所述写入策略包括全量写入以及增量写入;在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中。本案通过定义了通用化的配置,使得业务方在接入ElasticSearch时,可以根据需要选定配置信息,然后根据配置信息接入到 ElasticSearch,而不用通过用户对每一步进行单独设置,从而可以将业务数据快速接入ElasticSearch。
参阅图6,是本发明实施例之计算机设备2的硬件架构示意图。在本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。如图所示,所述计算机设备2至少包括,但不限于,可通过装置总线相互通信连接存储器601、处理器602、网络接口603。
其中:
本实施例中,存储器601至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器 (PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器601可以是计算机设备2的内部存储单元,例如所述计算机设备2的硬盘或内存。在另一些实施例中,存储器601也可以是计算机设备2的外部存储设备,例如所述计算机设备2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器601 还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器601通常用于存储安装于计算机设备2的操作装置和各类应用软件,例如写入装置500的程序代码等。此外,存储器601还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器602在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。所述处理器602 通常用于控制计算机设备2的总体操作。本实施例中,处理器602用于运行存储器601中存储的程序代码或者处理数据,例如运行写入装置500,以实现上述各个实施例中的代码编写方法。
所述网络接口603可包括无线网络接口或有线网络接口,所述网络接口603 通常用于在所述计算机设备2与其他电子装置之间建立通信连接。例如,所述网络接口603用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯装置(Global System of Mobile communication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi 等无线或有线网络。
需要指出的是,图6仅示出了具有部件601-603的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器601中的所述写入装置500还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器601中,并由一个或多个处理器(本实施例为处理器602)所执行,以完成本发明之代码编写方法或者代码编写方法。
本申请实施例提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图6中的一个处理器22,可使得上述一个或多个处理器22可执行上述任意方法实施例中的数据写入的方法,例如,执行以上描述的图2中的方法步骤S20至步骤S23、图4中的方法步骤S40至步骤S44、实现图5所示的加载模块501、确定模块502、获取模块503、写入模块504及提供模块505的功能。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM) 或随机存储记忆体(RandomAccessMemory,RAM)等。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种数据写入方法,其特征在于,包括:
加载配置信息到内存中;
根据所述配置信息中的控制类配置确定待写入数据的写入策略;
在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;
当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中,其中,所述将所述第一业务方的数据和第二业务方的数据进行数据装载包括:将所述第一业务方的数据和第二业务方的数据进行拼接,并设定拼接后得到的每条数据所对应的索引归属、ID信息以及集群信息。
2.根据权利要求1所述的数据写入方法,其特征在于,所述写入策略包括全量写入以及增量写入,所述方法还包括:
在所述写入策略为所述增量写入时,从消息队列中获取第一业务方的数据,以及从所述第二数据库中获取第二业务方的数据。
3.根据权利要求1或2所述的数据写入方法,其特征在于,所述第一业务方的数据为评论数据,所述第二业务方的数据为稿件数据、专栏数据、活动数据以及漫画数据中的一种。
4.根据权利要求3所述的数据写入方法,其特征在于,所述评论数据包括所述第二业务方的标识,所述方法还包括:
根据所述评论数据中的业务方的标识过滤掉所述第一业务方的数据中业务方的标识不为预设标识的数据。
5.根据权利要求4所述的数据写入方法,其特征在于,所述方法还包括:
对获取到的第一业务方的数据进行数据格式转换;
所述从第二数据库中获取第二业务方的数据的步骤包括:
对格式转换后的各个数据进行遍历,并根据所述各个数据中的业务方的标识从对应的第二数据库中获取所述第二业务方的数据;
对获取到的第二业务方的数据进行数据格式转换。
6.根据权利要求5所述的数据写入方法,其特征在于,所述根据所述各个数据中的业务方的标识从对应的第二数据库中获取所述第二业务方的数据的步骤包括:
获取所述配置信息中的数据模型配置,根据所述数据模型配置确定拉取的字段;
从获取的所述第二业务方的数据中抽取所述字段对应的数据。
7.根据权利要求1所述的数据写入方法,其特征在于,所述数据写入方法还包括:
提供一配置界面,以供用户配置所述配置信息,所述配置信息包括资源依赖配置、数据模型配置、索引配置以及控制类配置。
8.一种数据写入装置,其特征在于,包括:
加载模块,用于加载配置信息到内存中;
确定模块,用于根据所述配置信息中的控制类配置确定待写入数据的写入策略;
获取模块,用于在所述写入策略为全量写入时,从第一数据库中获取第一业务方的数据,以及从第二数据库中获取第二业务方的数据;
写入模块,用于当获取到的第一业务方的数据和第二业务方的数据达到预设阈值时,则将所述第一业务方的数据和第二业务方的数据进行数据装载,并在完成数据装载之后,将所述第一业务方的数据和第二业务方的数据写入对应的集群中;其中,所述将所述第一业务方的数据和第二业务方的数据进行数据装载包括:将所述第一业务方的数据和第二业务方的数据进行拼接,并设定拼接后得到的每条数据所对应的索引归属、ID信息以及集群信息。
9.一种计算机设备,所述计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述的数据写入方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至7任一项所述的数据写入方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910955259.4A CN112632266B (zh) | 2019-10-09 | 2019-10-09 | 数据写入方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910955259.4A CN112632266B (zh) | 2019-10-09 | 2019-10-09 | 数据写入方法、装置、计算机设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112632266A CN112632266A (zh) | 2021-04-09 |
CN112632266B true CN112632266B (zh) | 2022-12-23 |
Family
ID=75283305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910955259.4A Active CN112632266B (zh) | 2019-10-09 | 2019-10-09 | 数据写入方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112632266B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760906B (zh) * | 2021-05-11 | 2023-04-14 | 中科天玑数据科技股份有限公司 | 一种索引管理的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959549A (zh) * | 2018-06-29 | 2018-12-07 | 北京奇虎科技有限公司 | 数据写入方法、装置、计算设备及计算机存储介质 |
CN109086409A (zh) * | 2018-08-02 | 2018-12-25 | 泰康保险集团股份有限公司 | 微服务数据处理方法、装置、电子设备及计算机可读介质 |
CN109753531A (zh) * | 2018-12-26 | 2019-05-14 | 深圳市麦谷科技有限公司 | 一种大数据统计方法、系统、计算机设备及存储介质 |
-
2019
- 2019-10-09 CN CN201910955259.4A patent/CN112632266B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108959549A (zh) * | 2018-06-29 | 2018-12-07 | 北京奇虎科技有限公司 | 数据写入方法、装置、计算设备及计算机存储介质 |
CN109086409A (zh) * | 2018-08-02 | 2018-12-25 | 泰康保险集团股份有限公司 | 微服务数据处理方法、装置、电子设备及计算机可读介质 |
CN109753531A (zh) * | 2018-12-26 | 2019-05-14 | 深圳市麦谷科技有限公司 | 一种大数据统计方法、系统、计算机设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
ElasticSearch增量数据同步与无缝升级;王柏元;《王柏元的博客》;20181007;第2页 * |
Logstash学习之路(四)使用Logstash将mysql数据导入elasticsearch(单表同步、多表同步、全量同步、增量同步);xiaolaotou;《博客园cnblogs.com》;20190425;正文第一至三部分 * |
xiaolaotou.Logstash学习之路(四)使用Logstash将mysql数据导入elasticsearch(单表同步、多表同步、全量同步、增量同步).《博客园cnblogs.com》.2019, * |
Also Published As
Publication number | Publication date |
---|---|
CN112632266A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109271435B (zh) | 一种支持断点续传的数据抽取方法及系统 | |
CN106708912B (zh) | 垃圾文件识别及管理方法、识别装置、管理装置和终端 | |
CN104391725A (zh) | 页面展示方法和页面展示装置 | |
EP3788505B1 (en) | Storing data items and identifying stored data items | |
CN108932286B (zh) | 一种数据查询方法及装置 | |
CN109885577B (zh) | 数据处理方法、装置、终端及存储介质 | |
CN111177113B (zh) | 数据迁移方法、装置、计算机设备和存储介质 | |
AU2015331030A1 (en) | System generator module for electronic document and electronic file | |
CN112328592A (zh) | 数据存储方法、电子设备及计算机可读存储介质 | |
CN106802928B (zh) | 电网历史数据管理方法及其系统 | |
CN107729330B (zh) | 获取数据集的方法和装置 | |
CN110162540B (zh) | 区块链账本数据的查询方法、电子装置及存储介质 | |
CN112860412B (zh) | 业务数据处理方法、装置、电子设备及存储介质 | |
US10185757B2 (en) | Non-uniform multi-row text file loading | |
CN112632266B (zh) | 数据写入方法、装置、计算机设备及可读存储介质 | |
EP3343395B1 (en) | Data storage method and apparatus for mobile terminal | |
KR20150123603A (ko) | 데이터베이스 관리 방법 및 데이터베이스 관리 시스템 | |
CN111045994A (zh) | 一种基于kv数据库的文件分类检索方法及系统 | |
CN116049193A (zh) | 数据存储方法及装置 | |
CN111752941A (zh) | 一种数据存储、访问方法、装置、服务器及存储介质 | |
CN112036133B (zh) | 一种文件保存方法、装置、电子设备及存储介质 | |
CN111104777A (zh) | 一种文档编辑的方法、装置、计算机存储介质及终端 | |
CN114860362A (zh) | 界面的更新方法及装置 | |
US11403315B2 (en) | Reporting and knowledge discovery for databases | |
CN114490848A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |