CN116932560A - 一种数据湖的数据写入方法及装置 - Google Patents
一种数据湖的数据写入方法及装置 Download PDFInfo
- Publication number
- CN116932560A CN116932560A CN202210356225.5A CN202210356225A CN116932560A CN 116932560 A CN116932560 A CN 116932560A CN 202210356225 A CN202210356225 A CN 202210356225A CN 116932560 A CN116932560 A CN 116932560A
- Authority
- CN
- China
- Prior art keywords
- data
- written
- field information
- lake
- table field
- 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
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000004048 modification Effects 0.000 claims abstract description 93
- 238000012986 modification Methods 0.000 claims abstract description 93
- 238000012545 processing Methods 0.000 abstract description 21
- 238000004590 computer program Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据湖的数据写入方法及装置,涉及计算机技术领域,主要目的在于实现在传入一条新数据的字段数量以及字段名与已有的表字段中的字段数量以及字段名不一致时,可以将该条数据成功写入数据湖,以提升对数据的处理效率。本发明主要的技术方案为:获取待写入数据的表字段信息;判断所述表字段信息与数据湖的预设表字段信息是否一致;若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略;根据所述修改策略修改所述待写入数据,并写入所述数据湖。本发明用于数据湖的数据写入。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据湖的数据写入方法及装置。
背景技术
随着科学的发展,计算机技术的不断进步,由于数据湖具有存储海量的原始数据以及较好的分析能力等优势,越来越多的企业为了更智能、便捷地处理多个系统的数据,采用了以数据湖作为支撑的软件系统。
但在将数据写入数据湖的过程中,由于数据湖中已有的表字段是确定的不能发生修改,所以当传入一条新数据,若新数据的字段数量以及字段名与已有的表字段中的字段数量以及字段名不一致时,则会导致数据写入失败,最终大大降低数据的处理效率。
发明内容
鉴于上述问题,本发明提供一种数据湖的数据写入方法及装置,主要目的是为了实现在传入一条新数据的字段数量以及字段名与已有的表字段中的字段数量以及字段名不一致时,可以将该条数据成功写入数据湖,以提升对数据的处理效率。
为解决上述技术问题,本发明提出以下方案:
第一方面,本发明提供了一种数据湖的数据写入方法,所述方法包括:
获取待写入数据的表字段信息;
判断所述表字段信息与数据湖的预设表字段信息是否一致;
若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略;
根据所述修改策略修改所述待写入数据,并写入所述数据湖。
第二方面,本发明提供了一种数据湖的数据写入装置,所述装置包括:
获取单元,用于获取待写入数据的表字段信息;
第一判断单元,用于判断所述表字段信息与数据湖的预设表字段信息是否一致;
确定单元,用于若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略;
修改单元,用于根据所述修改策略修改所述待写入数据,并写入所述数据湖。
为了实现上述目的,根据本发明的第三方面,提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述第一方面的数据湖的数据写入方法。
为了实现上述目的,根据本发明的第四方面,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述第一方面的数据湖的数据写入方法。
借由上述技术方案,本发明提供的一种数据湖的数据写入方法及装置,是在传入一条待写入数据湖的数据之后,获取待写入数据的表字段信息,然后判断所述表字段信息与数据湖的预设表字段信息是否一致,若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略,进而根据所述修改策略修改所述待写入数据,最终成功将待写入数据写入所述数据湖,通过本发明提供的数据湖的数据写入方案,可以实现根据判断出的所述表字段信息与数据湖的预设表字段信息之间的差异结果确定对所述待写入数据的修改策略,进而根据所述修改策略对所述待写入数据进行修改,解决了在待写入数据的表字段信息与数据湖中预设表字段信息不一致的情况下导致的数据写入失败的情况,从而大大提升对数据的处理效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种数据湖的数据写入方法流程图;
图2示出了本发明实施例提供的另一种数据湖的数据写入方法流程图;
图3示出了本发明实施例提供的一种数据湖的数据写入装置的组成框图;
图4示出了本发明实施例提供的另一种数据湖的数据写入装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
随着科学的发展,计算机技术的不断进步,由于数据湖具有存储海量的原始数据以及较好的分析能力等优势,越来越多的企业为了更智能、便捷地处理多个系统的数据,采用了以数据湖作为支撑的软件系统,但在将数据写入数据湖的过程中,通常采用的是不支持变更的方式,即数据湖中已有的表字段是确定的不能进行修改,所以在将一条新数据写入数据湖之前,可以判断新数据中的表字段信息与数据湖中预先确定好的表字段之间的差别,但在判断出其差别之后,将新数据最终写入数据湖时,由于其差别,无法成功写入,从而导致了对数据处理效率的降低。为此,本发明实施例提供了一种数据湖的数据写入方法,可以实现在传入一条新数据时,其新数据的表字段信息中的字段数量以及字段名与数据湖中预设的表字段信息中的字段数量以及字段名不一致时,依然可以将该条数据成功写入数据湖,以提升对数据的处理效率。其具体执行步骤如图1所示,包括:
101、获取待写入数据的表字段信息。
该步骤中,在需要将数据写入数据湖时,可以先接收待写入数据湖的数据,在接收到所述待写入数据之后,可以在所述待写入数据中获取待写入数据的表字段信息。
其中,所述待写入数据的表字段信息中包括至少一个字段名称,以及所述字段名称对应的字段值。
其中,所述字段名称和所述字段名称对应的字段值之间可以是一一对应的关系。
示例性的,所述字段名称可以是姓名、年龄、地址等,所述字段名称对应的字段值可以是张三、23岁、北京等。
102、判断表字段信息与数据湖的预设表字段信息是否一致。
该步骤中,在获取到所述待写入数据的表字段信息之后,可以从数据湖中获取到预设的表字段信息,为了确定所述待写入数据能否成功写入,可以通过对所述表字段信息和所述预设表字段信息之间的字段数量和属性等信息进行对比和匹配等方式,判断所述表字段信息与数据湖的预设表字段信息是否一致。若一致,则将数据直接写入数据湖,若不一致,则执行步骤103。
其中,所述数据湖是一个集中式存储库,其可以存储海量的原始数据、能够支持任意的数据格式、有较好的分析和处理能力。
其中,所述数据湖的预设表字段信息是预先设定好的,其不能发生修改。
103、根据表字段信息的差异确定对待写入数据的修改策略。
该步骤中,在确定出所述表字段信息与数据湖的预设表字段信息不一致的情况下,为了让所述待写入数据可以成功写入,可以根据确定出的表字段信息的差异确定出针对于所述待写入数据的修改策略。
具体的,可以是先确定出所述表字段信息和所述预设表字段信息之间的字段数量和字段名称的差异,还可以是确定出所述表字段信息和所述预设表字段信息之间字段属性的差异,进而针对确定出的差异,确定出具体的差异类型,最后按照所述差异类型,确定针对于所述待写入数据的修改策略。
示例性的,若所述差异类型为字段数量和字段名称上的差异,所述修改策略可以是对所述待写入数据的字段数量进行相应的增加或删除、对所述待写入数据的字段名称进行针对性的替换,若所述差异类型为字段属性上的差异,可以对所述待写入数据的字段属性进行相应的修改。
其中,所述字段属性可以是字段大小以及字段格式等。
104、根据修改策略修改待写入数据,并写入数据湖。
该步骤中,在确定出所述修改策略之后,可以根据所述修改策略修改所述待写入数据,并写入所述数据湖。
其中,在将待写入数据写入数据湖的过程中,可以将待写入数据中的字段值经过运算转化为二进制值,若所述待写入数据中的字段值是不能确定的情况下,可以将所述待写入数据中的对应的字段值转化为空值,然后将所述待写入数据写入数据湖中。
基于上述图1的实现方式可以看出,本发明提供的一种数据湖的数据写入方法,是在传入一条待写入数据湖的数据之后,获取待写入数据的表字段信息,然后判断所述表字段信息与数据湖的预设表字段信息是否一致,若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略,然后根据所述修改策略修改所述待写入数据,在根据所述修改策略对待写入数据进行修改时,可以将修改之后的数据和所述待写入数据进行关联,最后将所述待写入数据成功写入。
通过本发明提供的数据湖的数据写入方案,可以实现根据判断出的所述表字段信息与数据湖的预设表字段信息之间的差异结果确定对所述待写入数据的修改策略,进而根据所述修改策略将所述待写入数据进行修改,进一步的,将修改之后的数据和所述待写入数据进行关联,防止了待写入数据的表字段信息与数据湖中预设表字段信息不一致的情况下导致的数据写入失败的情况,从而大大提升对数据的处理效率。
进一步的,作为对图1所示实施例的细化及扩展,本发明实施例还提供了另一种数据湖的数据写入方法,如图2所示,其具体步骤如下:
201、获取待写入数据的表字段信息。
202、判断表字段信息与数据湖的预设表字段信息是否一致。
203、根据表字段信息的差异确定对待写入数据的修改策略。
204、根据修改策略修改待写入数据,并写入数据湖。
205、对写入数据湖的数据进行修订标记,所述修订标记包括对应的修改策略以及修改内容。
该步骤中,在将数据写入数据湖之后,为了方便后续读取数据时,可以清晰知道写入数据湖的数据具体修改了哪些内容,可以通过对所述待写入数据分配一个唯一的标识符,并添加标签的方式,对写入数据湖的数据进行修订标记,所述修订标记包括对应的修改策略以及修改内容。
其中,所述标识符可以是字母,还可以是符号和数字。
206、在读取数据时,根据修改策略以及修改内容还原所述待写入数据。
该步骤中,在添加完所述修订标记之后,在读取数据时,可以根据所述修改策略以及修改内容还原所述待写入数据。
其中,步骤201至步骤204的描述,可以参照步骤101至步骤104的描述,并且可以达到相同的技术效果和解决相同的技术问题,在此不再赘述。
下面,将结合具体实施方式对上述各步骤的内容进行进一步说明。
在一些可能的实施方式中,202包括:
判断表字段信息中的字段数量是否一致;
若字段数量不一致,则确定表字段信息与预设表字段信息不一致;
若字段数量一致,判断所述表字段信息中的字段名称是否一致,若字段名称不一致则确定表字段信息与预设表字段信息不一致。
该步骤中,在判断表字段信息中的字段数量是否一致时,可以先获取到数据湖的预设表字段信息,在获取到所述数据湖的预设表字段信息之后,可以是先对所述表字段信息和所述预设表字段信息中的字段数量分别进行统计,再针对统计好的所述表字段信息和所述预设表字段信息中的字段数量进行对比,若所述字段数量不一致,则确定所述表字段信息与所述预设表字段信息不一致,若字段数量一致,则可以分别对所述表字段信息和所述预设表字段信息中的字段名称进行确定,若确定出所述字段名称不一致,则可以确定所述表字段信息与所述预设表字段信息不一致。
示例性的,若所述待写入数据的表字段信息中字段数量为4,所述数据湖的预设表字段中字段数量为3,则可以确定所述表字段信息与所述预设表字段信息不一致,若所述表字段信息中字段数量为3,所述预设表字段信息中字段数量也为3,则可以继续确定所述表字段信息和所述预设表字段信息中字段名称是否一致,若所述表字段信息中的字段名称分别为姓名、年龄、地址,所述预设表字段信息中的字段名称分别为姓名、年龄、住址,则可以确定表字段信息与预设表字段信息不一致。
在一些可能的实施方式中,203包括:
基于所述字段数量与字段名称的差异,确定表字段信息的差异类型;
根据所述差异类型确定对所述待写入数据的修改策略。
该步骤中,在根据表字段信息的差异确定对所述待写入数据的修改策略时,具体的,可以先确定出所述表字段信息和所述预设表字段信息之间的字段数量和字段名称的差异,进而根据所述差异,确定出表字段信息的差异类型,最终,根据所述差异类型确定对所述待写入数据的修改策略。
进一步的,若所述差异类型为字段数量不同,字段名称相同时,确定所述修改策略为对所述待写入数据中的字段数量进行修改;所述差异类型为字段数量相同,字段名称不同时,确定所述修改策略为对所述待写入数据中的字段名称进行修改;所述差异类型为字段数量不同且字段名称不同时,确定所述修改策略为基于预设表字段信息中的字段数量以及字段名称对所述待写入数据中的字段数量以及字段名称进行修改。
示例性的,若所述差异类型为字段数量不同,字段名称相同时,所述修改策略可以是先确定对所述待写入数据的字段数量相比于所述数据湖中预设表字段信息中的字段数量来说是增加了还是减少了,进而可以对所述待写入数据的字段数量进行增加或移除处理;若所述差异类型为字段数量相同,字段名称不同时,所述修改策略可以是先确定出所述待写入数据的表字段信息和所述预设表字段信息之间差异字段的字段名称,进而对所述待写入数据的表字段信息中差异字段处的字段名称进行替换;若所述差异类型为字段数量不同且字段名称不同时,所述修改策略可以是先确定出所述字段名称上的差异字段是否位于所述待写入数据的表字段信息和所述预设表字段信息之间字段数量的差异字段上,若在,可以直接将所述待写入数据的字段数量进行增加或移除处理,若不在,可以先将所述待写入数据的字段数量进行增加或移除处理,进而对所述待写入数据的表字段信息中差异字段处的字段名称进行替换。
在一些可能的实施方式中,在204之前,所述方法还包括:
提取所述待写入数据中主键字段对应的字段信息;
判断所述数据湖中数据的主键字段是否存在与所述字段信息相同的历史数据;
若存在,则基于所述历史数据更新所述待写入数据;
若不存在,则将所述待写入数据写入所述数据湖。
该步骤中,在根据所述修改策略修改所述待写入数据,并写入所述数据湖之前,可以先提取所述待写入数据中主键字段对应的字段信息,进而根据所述主键字段判断数据湖中的主键字段是否存在与所述字段信息相同的历史数据,若存在,可以根据所述历史数据对所述待写入数据进行更新,从而更进一步提高对数据的处理效率,若不在,则将所述待写入数据写入所述数据湖。
在一些可能的实施方式中,204包括:
在对待写入数据中的字段数量进行修改时,在所述数据湖中以预设表字段信息创建一条新数据,将所述新数据与待写入数据关联,以便将所述待写入数据中的字段信息同步至新数据中;
在对待写入数据中的字段名称进行修改,且待写入数据存在主键字段相同的历史数据时,对所述历史数据的对应字段名称进行修改,并关联所述历史数据与待写入数据,以便将所述待写入数据中的字段信息同步更新至所述历史数据中。
该步骤中,针对于修改策略为对所述待写入数据的数量进行修改时,可以直接建立一条新数据,为了保证数据的准确性,可以将新数据和所述待写入数据进行关联以及同步,针对于修改策略为对待写入数据中的字段名称进行修改时,可以先确定待写入数据中主键字段对应的字段信息,进而根据主键字段对应的字段信息,可以确定出待写入数据存在主键字段相同的历史数据,为了进一步提高对数据的处理效率,可以直接针对所述历史数据进行修改,然后关联所述历史数据与待写入数据,以便将所述待写入数据中的字段信息同步更新至所述历史数据中。
示例性的,在对所述待写入数据中的字段数量进行修改时,若所述数据湖中预设表字段信息的字段数量为3,则可以在所述数据湖中创建一条字段数量为3的新数据,然后将所述待写入数据与所述字段数量为3的新数据进行关联;在对待写入数据中的字段名称进行修改,且待写入数据存在主键字段相同的历史数据时,若所述历史数据字段数量为3,字段名称分别为姓名、年龄、住址,其字段名称对应的字段值分别为张三、23岁、北京,所述待写入数据为姓名、年龄、地址,其对应字段名称也为张三、23岁、北京,此时可以先确定所述历史数据和所述待写入数据之间的差异字段字段名称为字段值为北京所在的字段,进而可以在所述历史数据中将所述字段名称住址替换为所述待写入数据中的地址,还可以是在所述历史数据中所述字段名称为住址的后边设置修改列,将所述待写入数据中的字段名称地址加入所述历史数据中字段名称为住址后的待修改列中。
其中,所述主键可以是一个列或多列的组合,其值能唯一地标识表中的每一行,通过它可强制表的实体完整性。主键主要是用与其他表的外键关联,以及文本记录的修改与删除。
基于上述图2的实现方式可以看出,本发明提供的另一种数据湖的数据写入方法,是在传入一条待写入数据湖的数据之后,获取待写入数据的表字段信息,然后判断所述表字段信息与数据湖的预设表字段信息是否一致,若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略,然后根据所述修改策略修改所述待写入数据,在写入待写入数据之前,还可以判断所述数据湖中数据的主键字段是否存在与所述字段信息相同的历史数据,若存在,可以直接基于所述历史数据更新所述待写入数据,若不存在,则将所述待写入数据写入所述数据湖,在将所述待写入数据写入数据湖之后,还可以对写入数据湖的数据进行修订标记,所述修订标记包括对应的修改策略以及修改内容;在读取所述数据时,根据所述修改策略以及修改内容还原所述待写入数据。
通过本发明提供的数据湖的数据写入方案,可以实现根据判断出的所述表字段信息与数据湖的预设表字段信息之间的差异结果确定对所述待写入数据的修改策略,进而根据所述修改策略将所述待写入数据进行修改,防止了待写入数据的表字段信息与数据湖中预设表字段信息不一致的情况下导致的数据写入失败的情况,提升对数据的处理效率,然后所述数据湖中数据的主键字段是否存在与所述字段信息相同的历史数据,若存在,可以直接基于所述历史数据更新所述待写入数据,节省了对数据的处理时间,从而进一步提升对数据的处理效率,最后对写入数据湖的数据进行修订标记,以便在读取所述数据时,根据所述修改策略以及修改内容还原所述待写入数据,在提升对数据处理效率的基础上,针对在数据湖中处理数据时的多样性和便捷性也有所提升。
进一步的,作为对上述图1所示方法的实现,本发明实施例还提供了一种数据湖的数据写入装置,用于对上述图1所示的方法进行实现。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。如图3所示,该装置包括:
获取单元301,用于获取待写入数据的表字段信息;
第一判断单元302,用于判断所述获取单元301获取的所述待写入数据的表字段信息与数据湖的预设表字段信息是否一致;
确定单元303,用于若所述第一判断单元302判断的不一致,根据表字段信息的差异确定对所述待写入数据的修改策略;
修改单元304,用于根据所述确定单元303确定的所述修改策略修改所述待写入数据,并写入所述数据湖。
进一步的,作为对上述图2所示方法的实现,本发明实施例还提供了另一种数据湖的数据写入装置,用于对上述图2所示的方法进行实现。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。如图4所示,该装置包括:
获取单元301,用于获取待写入数据的表字段信息;
第一判断单元302,用于判断所述获取单元301获取的所述待写入数据的表字段信息与数据湖的预设表字段信息是否一致;
确定单元303,用于若所述第一判断单元302判断的不一致,根据表字段信息的差异确定对所述待写入数据的修改策略;
修改单元304,用于根据所述确定单元303确定的所述修改策略修改所述待写入数据,并写入所述数据湖。
进一步的,所述第一判断单元302具体用于:
判断表字段信息中的字段数量是否一致;
若字段数量不一致,则确定表字段信息与预设表字段信息不一致;
若字段数量一致,判断所述表字段信息中的字段名称是否一致,若字段名称不一致则确定表字段信息与预设表字段信息不一致。
进一步的,所述确定单元303具体用于:
基于所述字段数量与字段名称的差异,确定表字段信息的差异类型;
根据所述差异类型确定对所述待写入数据的修改策略。
进一步的,所述确定单元303在用于根据所述差异类型确定对所述待写入数据的修改策略时,具体用于:
所述差异类型为字段数量不同,字段名称相同时,确定所述修改策略为对所述待写入数据中的字段数量进行修改;
所述差异类型为字段数量相同,字段名称不同时,确定所述修改策略为对所述待写入数据中的字段名称进行修改;
所述差异类型为字段数量不同且字段名称不同时,确定所述修改策略为基于预设表字段信息中的字段数量以及字段名称对所述待写入数据中的字段数量以及字段名称进行修改。
进一步的,在所述修改单元304根据所述修改策略修改所述待写入数据,并写入所述数据湖之前,所述装置还包括第二判断单元305,所述第二判断单元305包括:
提取模块3051,用于提取所述待写入数据中主键字段对应的字段信息;
判断模块3052,用于判断所述数据湖中数据的主键字段是否存在与所述提取模块3051提取的字段信息相同的历史数据;
更新模块3053,用于若所述判断模块3052判断出若存在,则基于所述历史数据更新所述待写入数据;
写入模块3054,用于若所述判断模块3052判断出若不存在,则将所述待写入数据写入所述数据湖。
进一步的,所述修改单元304具体用于:
在对待写入数据中的字段数量进行修改时,在所述数据湖中以预设表字段信息创建一条新数据,将所述新数据与待写入数据关联,以便将所述待写入数据中的字段信息同步至新数据中;
在对待写入数据中的字段名称进行修改,且待写入数据存在主键字段相同的历史数据时,对所述历史数据的对应字段名称进行修改,并关联所述历史数据与待写入数据,以便将所述待写入数据中的字段信息同步更新至所述历史数据中。
进一步的,所述装置还包括标记单元306,所述标记单元306用于对所述修改单元304写入的内容进行标记,所述标记单元306还包括:
标记模块3061,用于对写入数据湖的数据进行修订标记,所述修订标记包括对应的修改策略以及修改内容;
读取模块3062,用于在读取所述数据时,根据所述标记模块3061的修订标记中的修改策略以及修改内容还原所述待写入数据。
进一步的,本发明实施例还提供一种存储介质,所述存储介质用于存储计算机程序,其中,所述计算机程序运行时控制所述存储介质所在设备执行上述图1-2中所述的数据湖的数据写入方法。
进一步的,本发明实施例还提供一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述图1-2中所述的数据湖的数据写入方法。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
此外,存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种数据湖的数据写入方法,其特征在于,所述方法包括:
获取待写入数据的表字段信息;
判断所述表字段信息与数据湖的预设表字段信息是否一致;
若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略;
根据所述修改策略修改所述待写入数据,并写入所述数据湖。
2.根据权利要求1所述的方法,其特征在于,所述判断所述表字段信息与数据湖的预设表字段信息是否一致,包括:
判断表字段信息中的字段数量是否一致;
若字段数量不一致,则确定表字段信息与预设表字段信息不一致;
若字段数量一致,判断所述表字段信息中的字段名称是否一致,若字段名称不一致则确定表字段信息与预设表字段信息不一致。
3.根据权利要求2所述的方法,其特征在于,根据表字段信息的差异确定对所述待写入数据的修改策略,包括:
基于所述字段数量与字段名称的差异,确定表字段信息的差异类型;
根据所述差异类型确定对所述待写入数据的修改策略。
4.根据权利要求3所述的方法,其特征在于,根据所述差异类型确定对所述待写入数据的修改策略,包括:
所述差异类型为字段数量不同,字段名称相同时,确定所述修改策略为对所述待写入数据中的字段数量进行修改;
所述差异类型为字段数量相同,字段名称不同时,确定所述修改策略为对所述待写入数据中的字段名称进行修改;
所述差异类型为字段数量不同且字段名称不同时,确定所述修改策略为基于预设表字段信息中的字段数量以及字段名称对所述待写入数据中的字段数量以及字段名称进行修改。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在根据所述修改策略修改所述待写入数据,并写入所述数据湖之前,所述方法还包括:
提取所述待写入数据中主键字段对应的字段信息;
判断所述数据湖中数据的主键字段是否存在与所述字段信息相同的历史数据;
若存在,则基于所述历史数据更新所述待写入数据;
若不存在,则将所述待写入数据写入所述数据湖。
6.根据权利要求5所述的方法,其特征在于,根据所述修改策略修改所述待写入数据,并写入所述数据湖,包括:
在对待写入数据中的字段数量进行修改时,在所述数据湖中以预设表字段信息创建一条新数据,将所述新数据与待写入数据关联,以便将所述待写入数据中的字段信息同步至新数据中;
在对待写入数据中的字段名称进行修改,且待写入数据存在主键字段相同的历史数据时,对所述历史数据的对应字段名称进行修改,并关联所述历史数据与待写入数据,以便将所述待写入数据中的字段信息同步更新至所述历史数据中。
7.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法还包括:
对写入数据湖的数据进行修订标记,所述修订标记包括对应的修改策略以及修改内容;
在读取所述数据时,根据所述修改策略以及修改内容还原所述待写入数据。
8.一种数据湖的数据写入装置,其特征在于,所述装置包括:
获取单元,用于获取待写入数据的表字段信息;
第一判断单元,用于判断所述表字段信息与数据湖的预设表字段信息是否一致;
确定单元,用于若不一致,根据表字段信息的差异确定对所述待写入数据的修改策略;
修改单元,用于根据所述修改策略修改所述待写入数据,并写入所述数据湖。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如权利要求1至权利要求7中任意一项所述的数据湖的数据写入方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行如权利要求1至权利要求7中任意一项所述的数据湖的数据写入方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210356225.5A CN116932560A (zh) | 2022-04-06 | 2022-04-06 | 一种数据湖的数据写入方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210356225.5A CN116932560A (zh) | 2022-04-06 | 2022-04-06 | 一种数据湖的数据写入方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116932560A true CN116932560A (zh) | 2023-10-24 |
Family
ID=88392964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210356225.5A Pending CN116932560A (zh) | 2022-04-06 | 2022-04-06 | 一种数据湖的数据写入方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116932560A (zh) |
-
2022
- 2022-04-06 CN CN202210356225.5A patent/CN116932560A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108932257B (zh) | 多维度数据的查询方法及装置 | |
CN109634682B (zh) | 应用程序的配置文件更新方法及装置 | |
CN106557486A (zh) | 一种数据的存储方法和装置 | |
CN106897342B (zh) | 一种数据校验方法和设备 | |
CN106933823B (zh) | 数据同步方法及装置 | |
US9384202B1 (en) | Gateway module to access different types of databases | |
CN109145055B (zh) | 一种基于Flink的数据同步方法和系统 | |
CN110019111B (zh) | 数据处理方法、装置、存储介质以及处理器 | |
CN108073595B (zh) | 一种在olap数据库实现数据更新和快照的方法及装置 | |
CN111984666A (zh) | 数据库访问方法、装置、计算机可读存储介质和计算机设备 | |
CN108062323B (zh) | 一种日志读取方法及装置 | |
CN111427863B (zh) | 一种基于领域模型的数据迁移方法、装置及设备 | |
CN102955808A (zh) | 一种数据获取方法和分布式文件系统 | |
CN116932560A (zh) | 一种数据湖的数据写入方法及装置 | |
CN116431601A (zh) | 数据表创建方法及设备 | |
CN110990799A (zh) | 一种反爬虫的数据处理方法、装置、系统及存储介质 | |
CN111125087A (zh) | 数据的存储方法及装置 | |
CN114138745A (zh) | 数据的集成方法、装置、存储介质及处理器 | |
CN110019507B (zh) | 数据同步的方法及装置 | |
CN111752909B (zh) | 一种多版本文件的操作方法、系统及装置 | |
CN114489481A (zh) | 硬盘存储数据并访问的方法及系统 | |
CN109299125B (zh) | 数据库更新方法及装置 | |
CN115543685A (zh) | 一种数据库回滚方法、装置、电子设备及存储介质 | |
CN110795421A (zh) | 一种防止脏数据产生的方法 | |
WO2017071777A1 (en) | Generation of a data type code value for a data type |
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 |