CN115952471A - 融合不同数据源的数据的方法、装置、计算设备和介质 - Google Patents
融合不同数据源的数据的方法、装置、计算设备和介质 Download PDFInfo
- Publication number
- CN115952471A CN115952471A CN202310232418.4A CN202310232418A CN115952471A CN 115952471 A CN115952471 A CN 115952471A CN 202310232418 A CN202310232418 A CN 202310232418A CN 115952471 A CN115952471 A CN 115952471A
- Authority
- CN
- China
- Prior art keywords
- data
- primary
- key
- target object
- main
- 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.)
- Granted
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Traffic Control Systems (AREA)
Abstract
提供了融合不同数据源的数据的方法、装置、计算设备和介质。该方法可以包括:从所述不同数据源中的主数据源获取与一个或多个目标对象分别对应的一条或多条主数据;基于所述一条或多条主数据中的每一者的用于指示所对应的目标对象的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象;以及将与同一目标对象对应的主数据与关联数据融合。可选地,该方法可以基于主键映射表来实现。将从不同数据源获取的数据经过关键特征的特征匹配,来将针对同一目标对象的主数据与相应的关联数据融合,过程简单,可以提高融合效率。
Description
技术领域
本申请涉及数据处理领域,更具体地,涉及一种用于融合来自不同数据源的数据的方法、装置、计算设备和计算机可读存储介质。
背景技术
在航班运行中,通常需要对来自不同数据源的不同类型数据进行融合,以掌握航班整个完整生命周期的信息。如何将来自于众多数据源的航空数据进行关联或对齐,以将不同数据源的数据映射到同一个航班,例如,以某个航班为目标对象,将与该航班相关的不同类型的数据(例如机位、登机口、旅客、配餐、货运等数据)关联在一起,对航空数据的有效融合具有重要意义。
然而,因为历史上的或者其他现实原因,机场建设了大量烟囱式的系统,不同的系统作为不同的数据源且是相互独立的,这些与航班相关联的各种数据散落在不同的系统之中,例如,协同决策系统(ADCM)、地面保障系统、配餐系统和贵宾系统等等机场处常见的系统提供的数据是相互独立的,它们各自可以提供与同一航班相关的数据,但是机场难以从整体上查看到跟同一航班相关的所有类型的数据。
因此,需要一种能够对各种数据源的数据进行关联或融合的有效方法。
发明内容
根据本申请的一方面,提供了一种用于融合来自不同数据源的数据的方法,所述方法包括:从所述不同数据源中的主数据源获取与一个或多个目标对象分别对应的一条或多条主数据;基于所述一条或多条主数据中的每一者的用于指示所对应的目标对象的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象;以及将与同一目标对象对应的主数据与关联数据融合。
根据本申请的另一方面,还提供了用于融合来自不同数据源的数据的装置,所述装置包括:获取模块,用于从所述不同数据源中的主数据源获取与一个或多个目标对象分别对应的一条或多条主数据;确定模块,用于基于所述一条或多条主数据中的每一者的用于指示所对应的目标对象的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象;以及融合模块,用于将与同一目标对象对应的主数据与关联数据融合。
根据本申请的另一方面,还提供了一种计算设备,其包括:处理器;以及存储器,存储有计算机可执行程序,所述计算机可执行程序被处理器执行时,使得处理器实现如上所述的用于融合来自不同数据源的数据的方法的各种操作。
根据本申请的另一方面,还提供了一种计算机可读存储介质,存储有计算机可执行程序,所述计算机可执行程序被处理器执行时,使得所述处理器执行如上所述的用于融合来自不同数据源的数据的方法的各种操作。
根据本申请的另一方面,还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如上所述的用于融合来自不同数据源的数据的方法的各种操作。
根据本申请的又一方面,还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现如上所述的用于融合来自不同数据源的数据的方法的各种操作。
通过本申请用于融合来自不同数据源的数据的方法,通过将从不同数据源获取的关联数据与主数据经过关键特征的特征匹配(例如,可以基于主键映射表),来将针对同一目标对象的主数据与相应的关联数据融合,过程简单,可以提高融合效率。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1示出了本申请实施例提供的用于融合来自不同数据源的数据的方法的一种示例性应用系统图。
图2示出了根据本申请的用于融合来自不同数据源的数据的方法的流程示意图。
图3示出了主键映射表的一个示例。
图4-5示出了步骤S220的更多细节。
图6-7示出了根据本申请的用于融合来自不同数据源的数据的装置的结构框图。
图8示出了根据本申请实施例的计算设备的示意性框图。
具体实施方式
现在将详细参照本发明的具体实施例,在附图中例示了本发明的例子。尽管将结合具体实施例描述本发明,但将理解,不是想要将本发明限于描述的实施例。相反,想要覆盖由所附权利要求限定的在本发明的精神和范围内包括的变更、修改和等价物。应注意,这里描述的方法步骤都可以由任何功能块或功能布置来实现,且任何功能块或功能布置可被实现为物理实体或逻辑实体、或者两者的组合。
注意,接下来要介绍的结合航空数据的各个实施例仅是示例,本领域技术人员可以将其应用到其他领域的数据。本申请的以下描述不作为限制本发明的实施例必须为示出和描述的具体的外形、硬件、连接关系、步骤、数值、条件、数据、顺序等等。本领域技术人员可以通过阅读本说明书来运用本发明的构思来构造本说明书中未提到的更多实施例。
在民航空管生产系统运行过程中,会不断地产生各种航空数据,例如来自协同决策系统(ADCM)、地面保障系统、配餐系统和贵宾系统等等的各种类型的数据。例如,协同决策系统(ADCM)提供的数据一般包括航班号、报文时间、起飞/落地时间和起飞/降落机场等信息,因此可以是最重要最直接的用于指示航班的数据,本申请中将其称为航班主数据或主数据,并且提供该数据的数据源也可以称为主数据源;地面保障系统、配餐系统和贵宾系统等等提供的数据也是与航班关联的数据,可以认为是航班辅助数据,并且提供该辅助数据的数据源也可以称为辅助数据源。通常需要对这些航空数据进行关联和融合起来,以便查看同一个航班的所有方面的信息。
然而,将这些航空数据进行关联或融合具有如下问题:
1、不同数据系统提供的数据可能会采用不同规则来生成数据的唯一标识(表示目标对象的标识),导致跨数据系统的数据无法通过简单的判断该唯一标识是否相同来进行关联。
2、各个数据系统以实时的方式生成自己的数据,不同数据系统间的数据及时性有着差别,不能保证主数据源的主数据一定比辅助数据源的辅助数据先到来,因此在辅助数据先到来的情况下,可能不存在要关联的主数据而无法关联成功。
3、同一类型的数据可能还由多个数据源来提供,但是各个数据源的质量水平和及时性不一致。
因此,如何将来自不同数据源的这些航空数据映射到同一个航班,并能解决上述问题,将对航空数据的有效关联和融合具有重要意义。
以下将结合图1-图8对本申请的关联不同源的数据的方法的方案进行更详细的描述。
图1示出了本申请实施例提供的用于融合来自不同数据源的数据的方法的一种示例性应用系统图。
如图1所示,多个不同的数据系统10(作为示例,示出为协同决策系统(ADCM)、地面保障系统、配餐系统和贵宾系统)向服务器20提供相应的数据,服务器20收到各个数据后利用本申请实施例提供的用于关联不同数据源的数据的方法,将这些数据中与目标对象(例如,同一个航班)对应的数据关联在一起。服务器可以是云端服务器,也可以是本地服务器,可以是实体服务器,也可以是虚拟服务器,本申请对此不做限定。
服务器20在将与目标对象对应的各种类型的数据关联在一起后,可以通过数据表的形式对这些关联关系进行本地存储或者发送到终端设备(例如,移动设备、桌上计算机、平板电脑、个人数字助理等),以便基于调用而被查看。
图2示出了根据本申请的用于融合来自不同数据源的数据的方法的流程示意图。图2所示的方法可以由图1所示的服务器来执行。
如图2所示,在步骤S210中,从不同数据源中的主数据源获取与一个或多个目标对象分别对应的一条或多条主数据。
可选地,主数据源可以提供与一个或多个不同的目标对象分别对应的一条或多条主数据,从而服务器可以基于当前获取的主数据的关键特征而确定该主数据与哪个目标对象对应。可选地,主数据源可以持续地提供主数据,并且服务器在已经从同一数据源获取并存储与某个目标对象对应的主数据之后,可以不再存储该目标对象对应的主数据或者定时地更新所存储的该目标对象对应的主数据,或者共同存储该目标对象对应的所有主数据等等。此外,后续的关联数据也是类似的。
本文中提及的主数据和关联数据可以使用名称-值对(也可以被称为字段-值对,属性-值对或者键-值对)来表示。例如,名称-值对中的“名称”的数据类型为字符串或字符,名称-值对中的“值”的数据类型可以为字符串、数字、布尔值(真或假)、数组、空(null)或者名称-值对。例如,数字可以采用整型、浮点型(例如,单精度或双精度)或定点数进行表示。
例如,本文中来自不同数据源的多条数据可以具有统一的数据格式,即多条数据涉及的数据交换格式、数字表示法、时间表示法、单位表示法和名称表示法等等的至少之一(例如,全部)完全一致。例如,服务器可以在接收到来自不同数据源的多条数据之后,对这些数据进行解析和/或数据加工,以得到具有统一的数据格式的多条数据。
例如,本文中来自不同数据源的多条数据的数据交换(数据传输)格式可以为JSON(JavaScript对象表示法)格式、XML(可扩展性标记语言)格式、二进制格式和文本格式的任意一种。例如,本文中来自不同数据源的多条数据的数字表示法可以为整型、单精度浮点型、双精度浮点型和定点数型的任意一种。例如,本文中来自不同数据源的多条数据的时间表示法可以为XX-YY-ZZ(XX、YY、ZZ分别表示年、月、日)、XX年YY月ZZ日、YY-ZZ-XX的任意一种。例如,本文中来自不同数据源的多条数据涉及的名称表示法一致。例如,对于航班起飞的机场,多条数据均采用“航班起飞机场”表示,或者对于数据源的特定于航班的标识,多条数据均采用“厂商对象标识”来表示。例如,本文中来自不同数据源的多条数据涉及的单位表示法一致。例如,对于高度,多条数据均采用“英尺”表示。
这样,由于这些数据具有统一的数据格式,因此可以方便的进行特征匹配。
作为示例,可以基于选取主数据的一个或多个关键特征来确定所述主数据所对应的目标对象。例如,以目标对象为航班为例,对应的主数据的一个或多个关键特征可以包括航班号、进离港标识、计划时间、计划起飞机场、计划落地机场等。通过当前获取的主数据的这些信息,可以唯一地确定出当前获取的主数据所对应的一个目标对象。同时,主数据源针对不同的目标对象还可以在主数据中包括系统标识,即该系统标识可以用于区分不同的目标对象(相对于主数据源),因此也可以作为主数据的一个关键特征。
可选地,不同数据源可以包括主数据源、一级关联数据源和二级关联数据源等等。其中,主数据源用于提供与目标对象最直接相关且比较全面及重要的主数据,一级关联数据源可以提供与主数据源提供的数据直接相关联的数据,并且二级关联数据源可以提供与相应的一级数据源提供的数据直接相关联,从而能够与主数据间接相关联的数据。不同数据源中的主数据源是预先确定的。另外,不同的数据源相互之间的关系是已知的,即哪个数据源为主数据源,哪个或哪些数据源为与主数据源直接关联的一级关联数据源,以及哪个或哪些数据源为经由一级关联数据源与主数据源相关联(间接关联)的二级关联数据源。此外,还可以存在经由一级、二级关联数据源与主数据源相关联(间接关联)的三级关联数据源,等等。
例如,在目标对象是某一个航班的情况下,不同数据源可以包括协同决策(ADCM)系统、地面保障系统、配餐系统和贵宾系统,这些系统提供的不同类型的数据相应地可以表述为协同决策数据、地面保障数据、配餐数据和贵宾管理数据。由于ADCM系统提供的数据一般包括航班号、报文时间、起飞/落地时间和起飞/降落机场等信息,因此可以是最重要且与航班最直接相关的数据,因此是主数据,从而ADCM系统为主数据源。而其他数据源提供的数据为辅助数据,也称为需要与主数据进行关联或融合的关联数据,例如地面保障系统和配餐系统为一级关联数据源,并且贵宾系统为二级关联数据源,它们提供的数据可以被称为辅助数据或者关联数据(可以互换使用)。这些关联数据可以根据将在后续描述的方式与同一个航班对应的主数据关联或融合。
在步骤S220中,基于所述一条或多条主数据中的每一者的用于指示所对应的目标对象的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象。
如前面所述,每条主数据的一个或多个关键特征能够用于指示该条主数据所对应的目标对象,即通过这些关键特征中的至少一部分可以唯一地定位到一个目标对象。可选地,可以基于该主数据的一个或多个关键特征得到与该主数据对应的目标对象的唯一标识。例如,以目标对象为某一个航班为例,可以采用{航班号}-{进离港标识}-{计划时间}-{计划起飞机场}-{计划落地机场}等格式来作为目标对象的唯一标识。例如,对于某个目标航班,唯一标识也可以具体表示为20221213-CA1142-DSN-PEK-202212130925-202212131050-A,即表示从鄂尔多斯到北京的航班号为CA1142的航班,并且该航班飞行时间从2022年12月13日的09:25-至2022年12月13日的10:50,且是进港。
可选地,每个数据源都可以提供针对不同目标对象的许多数据。因此,在获取到其他数据源的其他数据(关联数据)时,需要确定这些关联数据分别与哪个目标对象对应。例如,每个数据源均可以提供针对多个目标航班的数据,而对于每个目标航班,需要将所有数据源提供的与该目标航班相关的数据融合在一起。不同数据源提供的不同数据的关键特征(例如,需要用于特征匹配过程的特征)可以是不同的,并且主数据的关键特征是最全面的。
例如,如果数据是来自一级关联数据源的一级关联数据,则可以将该一级关联数据的关键特征与从主数据源获取的一条或多条主数据(分别针对不同的目标对象)中的每一者的关键特征进行特征匹配,并根据匹配结果确定所述一条或多条主数据中所述一级关联数据所关联的主数据,作为匹配主数据;以及将所述一级关联数据对应的目标对象确定为与所述匹配主数据对应的目标对象。
例如,在获取了来自一级关联数据源的一级关联数据之后,如果此时已经获取到了一条或多条主数据并提取了每条主数据的关键特征,则将该一级关联数据的关键特征与每条主数据的关键特征进行匹配。匹配结果可以是是否满足匹配条件的结果。匹配条件可以为:该一级关联数据的与某条主数据的关键特征匹配的一个或多个特征能够用于唯一确定某个目标对象。也就是说,该一级关联数据无需包括所关联的主数据的所有关键特征,而是可以仅包括所关联的主数据中的部分关键特征,只要该部分关键特征能够用于唯一确定该目标对象即可。可以针对每个一级数据源定义不同的匹配条件或者匹配规则。
作为示例,在从地面保障系统获取到地面保障数据之后,由于地面保障系统可以提供针对不同航班的多条地面保障数据,因此需要确定当前提供的一条地面保障数据对应的多个航班中的一个航班,因此可以提取当前地面保障数据的关键特征(例如,航班号、计划时间、计划起飞机场、和/或计划落地机场等),并将其与多个航班对应的多条主数据中的每一者的关键特征进行匹配,从而定位到对应的航班。
可选地,在一些情况下,在获取到来自一级关联数据源的一级关联数据时可能尚未获取到该一级关联数据能够关联(或融合)的主数据,即在确定不存在所述一级关联数据所关联的所述匹配主数据的情况下,例如未获取到任何主数据,或者该一级关联数据无法与已获取的主数据匹配。此时,可以在预设时间段内(例如设置一个时间窗口)等待能够关联的主数据(匹配主数据)的到来。可选地,如果超过预设时间段仍未获取到能够关联(或融合)的主数据,则停止对该一级关联数据的关联(或融合)操作。
另外,在一些情况下,获取的数据是来自二级关联数据源的数据(二级关联数据),并且该二级关联数据的关键特征与每条主数据的关键特征进行匹配之后,确定该二级关联数据并不包括任何主数据的任意一个关键特征,或者不包括能够用于唯一确定到目标对象的关键特征,但是该二级关联数据不一定就不能与这些主数据中的主数据关联(或融合),而是可能通过与相应的一级关联数据源提供的一级关联数据关联再关联到主数据,即间接关联方式,来达到与主数据关联(或融合)的目的。
因此,在这种情况下,可以将来自二级关联数据源的二级关联数据的关键特征与来自相应的一级关联数据源的每条一级关联数据的关键特征进行特征匹配,并根据匹配结果确定所述二级关联数据所关联的一级关联数据,作为匹配一级关联数据;以及在基于所述一条或多条主数据中的每一者的关键特征确定了所述匹配一级关联数据所对应的目标对象的情况下,将所述二级关联数据对应的目标对象确定为与所述匹配一级关联数据对应的目标对象。
例如,一级关联数据的关键特征可以包括用于确定关联关系的特征,即关系特征,因此可以将当前获取的二级关联数据的关键特征与相应的一级关联数据源提供的一条或多条一级关联数据(分别对应不同的目标对象)中的每一者的关系特征进行匹配,匹配结果可以包括指示当前获取的二级关联数据的关键特征是否与相应的一级关联数据的关系特征相同的结果。
作为示例,关系特征可以包括系统标识,例如厂商对象标识(ID),每个厂商提供的系统(数据源)可以针对不同的航班提供不同的厂商对象标识。例如,针对CA1142航班,地面保障系统提供的数据中包括的厂商对象标识为6721356,而针对CA4130航班,地面保障系统提供的数据中包括的厂商对象标识为2345633。
具有相同厂商对象标识的系统可以作为相关联的数据源。例如,地面保障系统(一级关联数据源)和贵宾系统(二级关联数据源)在由同一个厂商生产时,它们是关联的,因此针对同一个航班它们提供的数据中包括的厂商对象标识是相同的。例如,针对CA1142航班,地面保障系统和贵宾系统提供的数据中包括的厂商对象标识(关系特征)为6721356,而针对CA4130航班,地面保障系统提供的数据中包括的厂商对象标识(关系特征)为2345633。
如果获取了贵宾系统(二级关联数据源)的数据(二级关联数据),则基于厂商对象标识将该数据与地面保障系统提供的数据进行特征匹配,以确定地面保障系统提供的多条地面保障数据中其所关联的地面保障数据。例如,贵宾系统提供的数据中包括的厂商对象标识为6721356,则可以匹配到地面保障系统提供的一条或多条数据当中包括厂商对象标识为6721356的数据。如果此时地面保障系统提供的包括厂商对象标识为6721356的数据已经通过特征匹配(例如,如前面所述的与主数据的关键特征进行匹配)确定了与航班CA1142对应,则可以确定贵宾系统提供的包括厂商对象标识为6721356的该数据也与航班CA1142对应。
当然,以上关系特征为厂商对象标识,以及地面保障系统和贵宾系统分别作为一级关联数据源和二级关联数据源仅仅为示例。在其他实施例中,也可以基于其他的关系特征,并且也可以存在其他类型的数据源、三级关联数据源等等,通过间接关联的方式而与主数据源(以及提供的主数据)相关联。
类似地,当确定不存在当前获取的二级关联数据所关联的匹配一级关联数据时,例如未获取到任何一级关联数据,或者该二级关联数据无法与已获取的一级关联数据匹配。此时,可以在预设时间段内(例如设置一个时间窗口)等待能够关联的一级关联数据(匹配一级关联数据)的到来。可选地,如果超过预设时间段仍未获取到能够关联(或融合)的一级关联数据,则停止对该二级关联数据的关联(或融合)操作。
在步骤S230中,将与同一目标对象对应的主数据与关联数据融合。
例如,可能确定出针对不同目标对象分别对应的所有数据,因此可以将与同一目标对象相关的所有数据融合在一起,例如以数据表的形式存储在数据库中或者其他方式存储在任何类型的存储装置中,从而可以查看每个目标对象相关的所有数据。例如,在将与同一目标对象相关的所有数据融合在一起时,可以对该所有数据中的每条数据赋予相同的唯一标识,然后可以基于目标对象的唯一标识进行索引,即可找到所存储的该目标对象相关的所有数据。
可选地,在另一些实施例中,可能存在至少两个数据源提供同种类型的数据,并且各个数据源提供的数据的质量水平和及时性不一致,因此每个数据源可以被赋予优先级,并且可以基于优先级来确定将哪个数据源提供的数据用于与主数据融合。可以对提供同种类型的数据的数据源赋予不同的优先级,也可以对所有数据源赋予不同的优先级。可选地,数据源所提供的数据的质量水平越高,优先级越高。
例如,在提供同种类型的数据的至少两个数据源提供的数据均与同一目标对象对应的情况下,将具有较高优先级的数据源提供的数据确定为是与该同一目标对象对应的数据,作为用于融合的数据。该基于优先级的机制适用于主数据、一级关联数据、或二级关联数据等等。
此外,由于提供同种类型的数据的该至少两个数据源提供数据的及时性可能不同,在这种情况下,可以通过如下过程来进行数据融合。针对某种类型的数据,在从第一数据源接收到该种类型的数据,并且在确定该数据与某个目标对象对应的情况下,如果先前已经从具有比第一数据源更高的第二数据源接收到与该个目标对象对应的该种类型的数据,则丢弃从第一数据源接收到的该种类型的数据;反之,则将从第一数据源接收到该种类型的数据替代先前的该种类型的数据用于数据融合。
例如,对于地面保障数据(例如,飞机停机位分配数据、飞机起飞时间和降落时间等数据),可能有至少两个不同部门的地面保障系统作为数据源来提供该地面保障数据,例如,该至少两个不同部门可以包括空管局和机场。由于空管局的数据是在塔台观察所获取的数据,一般来说,准确度更高,但是及时性稍欠缺;同时,由于机场获取的数据可能存在预估数据(例如,在飞机离开廊桥后到实际滑行起飞的这段时间,可能不在机场部门的观察范围内,实际起飞时间数据可能只是人为猜测的),准确度较低,但是机场获取的数据及时性更高。因此,可能是先接收到来自机场的地面保障系统的地面保障数据,并确定其与某个航班(例如第一航班)对应(暂时确定为可以在后续将其与该目标航班的主数据进行融合),然后在一段时间之后,接收到来自空管局的地面保障系统(其作为优先级高于机场的地面保障系统的数据源)的地面保障数据,在确定来自空管局的地面保障系统的地面保障数据也与第一航班对应时,则用来自空管局的地面保障系统的地面保障数据替换来自机场的地面保障系统地面保障数据,以用于在后续与主数据进行融合。
可见,通过图2描述的用于融合来自不同数据源的数据的方法,通过将获取的辅助数据(也称为关联数据)与主数据经过特征匹配而将针对同一目标对象的主数据与相应的辅助数据融合;此外,针对一级关联数据将其与主数据进行匹配而完成与主数据的融合(基于直接关联),并且针对二级关联数据将其与一级关联数据进行匹配进而完成与主数据的融合(基于间接关联)。此外,在一级关联数据早于相应的主数据以及二级关联数据早于相应的一级关联数据的情况下,通过引入时间窗口从而可以等待相应的数据到来,以实现数据融合。另外,每个数据源被赋予优先级,并且可能同一类型数据(例如,主数据或者地面保障数据)由至少两个数据源来提供,此时可以基于具有最高优先级的数据源提供的数据来进行数据融合。
可选地,在一些实施例中,可以基于主键映射机制来实现上述用于融合来自不同数据源的数据的方法。
图3示出了主键映射表的一个示例。
如图3所示,示出了已经映射完成的针对两个航班的映射记录(包括主数据映射记录和关联数据映射记录),第1-4行的映射记录针对第一个航班,并且第5-8行映射记录针对第二个航班,每条映射记录包括一条数据的部分信息,可以基于该映射记录获取到该条数据的所有信息(例如,通过索引)。每个航班的相关数据包括ACDM系统、地面保障系统、配餐系统、贵宾系统提供的数据,经过主键映射后分别对应多条映射记录。其中,ACDM系统提供主数据,并且由厂商A生产;地面保障系统和配餐系统提供该主数据的一级关联数据,贵宾系统提供该主数据的二级关联数据,并且地面保障系统和贵宾系统均由厂商B生产,配餐系统由厂商C生产。
主键映射表的字段包括业务主键和系统主键(例如,厂商主键),可选地,为了更清楚的表明该主键映射表的含义,主键映射表的字段还可以包括厂商系统(值可以例如为ACDM系统、地面保障系统、配餐系统、贵宾系统)和厂商(值可以例如为A、B、C)。一般来说,相同厂商生产的系统针对同一航班的系统主键的值是相同的。
例如,基于接收到的主数据生成某个航班的主数据映射记录,其中主数据映射记录中的业务主键的值为该航班的唯一标识20221213-CA1142-DSN-PEK-202212130925-202212131050-A,并且系统主键的值为主数据源特定于该航班的系统标识32784120。
然后,在获取了地面保障系统提供的地面保障数据(一级关联数据)时,基于其生成的关联数据映射记录的业务主键的值是其直接关联的主数据对应的主数据映射记录中的业务主键的值,即也为20221213-CA1142-DSN-PEK-202212130925-202212131050-A,同时其系统主键的值为特定于该航班的系统标识(即示为6721356)。此外,针对配餐系统提供的数据(一级关联数据)生成的映射记录也是类似的。具体地基于一级关联数据生成映射记录的过程将在后续描述。
类似的,在获取了贵宾系统提供的贵宾管理数据(二级关联数据)时,并基于其生成的关联数据映射记录的业务主键的值是其间接关联的主数据对应的主数据映射记录中的业务主键的值,即也为20221213-CA1142-DSN-PEK-202212130925-202212131050-A,同时其系统主键的值为特定于该航班的系统标识(即示为6721356),因为贵宾系统和地面保障系统均由同一个厂商(厂商标识为B)提供,所以针对该航班的系统标识是相同的。具体地基于二级关联数据生成映射记录的过程将在后续描述。
如果已经生成主键映射表,并且包括了与多个目标对象中的每一者相关的所有数据的基本信息,例如,如图3所示的主键映射表包括了两个航班相关的所有数据的基本信息,则可以通过查询该主键映射表,从而基于这些基本信息获取到与同一目标对象相关的所有数据(所有源数据),进而将所获取的所有数据融合。
在另一些实施例中,主键映射表中可能并不存在当前获取的数据的映射记录,因此还可以基于当前获取的数据生成新的映射记录。
例如,在获取了来自主数据源的主数据之后,查询所述主键映射表,并且在所述主键映射表中不存在针对当前获取的主数据对应的目标对象的主数据映射记录的情况下,基于当前获取的主数据生成主数据映射记录,其中,所生成的主数据映射记录的业务主键的值为当前获取的主数据的关键特征构成的、所对应的目标对象的唯一标识,并且其系统主键的值为所述主数据源的特定于当前获取的主数据对应的目标对象的系统标识。
另外,可选地,在主键映射表已经包括针对当前获取的主数据对应的目标对象的主数据映射记录的情况下,在针对该目标对象的主数据映射记录所基于的主数据来自优先级更低的主数据源的情况下,也需要基于当前获取的主数据生成主数据映射记录,以覆盖已有的主数据映射记录。当然,也可以针对当前获取的主数据生成新的主数据映射记录,而不管优先级如何或者是否来自同一个数据源,即只基于最新的主数据生成该主数据映射记录。
这样,主数据的关键特征(例如,航班号、计划时间、计划起飞机场、和/或计划落地机场等)的信息作为一条主数据映射记录中的业务主键的值被保存在了主键映射表中。此外,主数据的关键特征中的例如关系特征(例如,系统标识)的信息作为一条主数据映射记录中的系统主键的值也被保存在了主键映射表中。
例如,如果从ACDM系统获取了主数据D1,并且通过查询主键映射表并未存在该主数据D1的映射记录(例如,业务主键中并不存在与所接收的主数据D1相关的航班的唯一标识以及相应的系统主键中也不存在主数据源的特定于该航班的系统标识),则可以基于接收到的主数据生成新的映射记录,其中业务主键的值为该航班的唯一标识20221213-CA1142-DSN-PEK-202212130925-202212131050-A,并且系统主键的值为ACDM系统特定于该航班的系统标识32784120。
可选地,步骤S220中确定关联数据所对应的目标对象可以进一步基于主键映射机制(例如,主键映射表)来实现。
例如,在一些情况下,如果从一级关联数据源获取到一级关联数据,则在如图4所示的子步骤S220-1中,查询主键映射表,以将当前获取的一级关联数据的关键特征和所述主键映射表中的每条主数据映射记录的业务主键所指示的关键特征进行特征匹配,并根据匹配结果确定当前获取的一级关联数据所匹配的主数据映射记录,作为匹配主映射记录;然后,在子步骤S220-2中,将当前获取的一级关联数据对应的目标对象确定为所述匹配主映射记录所针对的目标对象,并且在所述主键映射表中不存在针对所确定的目标对象的一级数据映射记录的情况下,生成关于当前获取的一级关联数据的一级数据映射记录,其中,所述一级数据映射记录的业务主键的值为所述匹配主映射记录所针对的目标对象的唯一标识,并且其系统主键的值为一级关联数据源的特定于所确定的目标对象的系统标识。
例如,从地面保障系统接收到地面保障数据,并且通过查询主键映射表,确定了其与针对第一航班(目标对象)的主数据映射记录的业务主键所指示的关键特征满足匹配条件(例如,当前获取的地面保障数据包括能够唯一定位到该第一航班的多个关键特征),因此,该当前获取的地面保障数据可以被确定为与第一航班对应,并且在该主键映射表不包括针对该第一航班的一级数据映射记录的情况下,可以生成该地面保障数据的映射记录,其中业务主键与主数据映射记录的业务主键的值相同,如所示出的20221213-CA1142-DSN-PEK-202212130925-202212131050-A,并且系统主键为6721356(作为地面保障数据的关键特征的系统标识(关系特征),不同的航班对应的系统标识不同)。
又例如,在另一些情况下,如果从二级关联数据源接收到二级关联数据,则在图5所示的步骤S220-1’中,查询主键映射表,以将当前获取的二级关联数据的关键特征和所述主键映射表中的每条一级数据映射记录的系统主键所指示的关键特征进行特征匹配,并根据匹配结果确定当前获取的二级关联数据所匹配的一级数据映射记录,作为匹配一级映射记录,其中所述匹配一级映射记录是基于将相应的一级关联数据的关键特征与主键映射表中的每条主数据映射记录的业务主键所指示的关键特征进行特征匹配得到的;然后,在子步骤S220-2’中,将当前获取的二级关联数据对应的目标对象确定为所述匹配一级映射记录所针对的目标对象,并且在所述主键映射表中不存在针对所确定的目标对象的二级数据映射记录的情况下,生成当前获取的二级关联数据的二级数据映射记录,其中,所生成的二级数据映射记录的业务主键的值为所述匹配一级映射记录所针对的目标对象的唯一标识,并且其系统主键的值为二级关联数据源的特定于所确定的目标对象的系统标识。
例如,从贵宾系统接收到贵宾管理数据,并且通过查询主键映射表,确定了其关系特征与相应的一级关联数据(例如第一航班对应的地面保障数据)的映射记录的系统主键所指示的关系特征满足匹配条件,因此,该当前获取的贵宾管理数据可以被确定为与地面保障数据所对应的第一航班对应,并且在该主键映射表不包括针对该第一航班的二级数据映射记录的情况下,可以基于该贵宾管理数据生成新的映射记录,其中业务主键与该地面保障数据的映射记录的业务主键的值相同,也即所示出的20221213-CA1142-DSN-PEK-202212130925-202212131050-A,并且系统主键为6721356(作为贵宾管理数据的关键特征的系统标识(关系特征),不同的航班对应的系统标识不同)。
当然,如前面所述,在获取到来自一级关联数据源的一级关联数据,并在查询主键映射表时可能尚未查询到能够关联的主数据的主数据映射记录(通过查询主键映射表中的各个业务主键的值)时,可以在预设时间段内等待能够关联的主数据的到来。另外,如果获取到的是来自二级关联数据源的二级关联数据,并在查询主键映射表时可能尚未查询到能够关联的一级关联数据的一级数据映射记录(通过查询主键映射表中的各个系统主键的值)时,可以在预设时间段内等待能够关联的一级关联数据的到来,这样通过与相应的一级关联数据关联再关联到主数据,即间接关联方式,来达到与主数据关联的目的。
另外,由于各个数据源可以不停地发送数据,对于主数据而言,当已经基于主数据源提供的针对特定航班的主数据生成了主数据映射记录之后,在再次接收到同一数据源的针对该特定航班的主数据,则可以将再次接收到的主数据舍弃、将其与先前的主数据共同存储(例如,按照时间戳存储)或者存储最新的主数据,并相应地生成相同的业务主键的值(唯一标识)和系统主键的值(系统标识)。
此外,对于一级关联数据或者二级关联数据而言,当已经将一级关联数据或二级关联数据与主数据关联,并且生成了针对特定航班的关联数据映射记录之后,在再次接收到同一数据源的针对该特定航班的一级关联数据或二级关联数据,则可以通过系统主键的值匹配而确定再次接收到的一级关联数据或二级关联数据与该特定航班对应,从而可以舍弃再次接收到的一级关联数据或二级关联数据、将其与先前的一级关联数据或二级关联数据共同存储(例如,按照时间戳存储)或者存储最新的一级关联数据或二级关联数据,并相应地生成相同的业务主键的值(唯一标识)和系统主键的值(系统标识)。
这样,通过简单的值匹配,而可以将来自同一数据源的多条同种类型的数据共同存储,并且可以直接确定出对应的目标对象,从而可以提高数据处理速度。
此外,在另一些实施例中,如前面所述,由于提供同种类型的数据的多个数据源提供数据的质量水平以及及时性不同,因此每个数据源可以被赋予优先级,从而可以根据优先级来确定哪个数据源提供的数据最终用于融合。
在基于主键映射机制的基础上,针对某种类型的数据(主数据、一级关联数据和二级关联数据均适用),在查询所述主键映射表并且确定主键映射表中已经存在针对当前获取的数据所对应的目标对象的、与该种类型相关的先前映射记录(例如,与该种类型的数据相对应的主数据、一级数据或二级数据映射记录)的情况下,比较提供用于生成所述先前映射记录的数据的第一数据源和提供当前获取的数据的第二数据源的优先级;在所述第一数据源的优先级高于所述第二数据源的优先级的情况下,丢弃当前获取的数据;以及在所述第一数据源的优先级低于所述第二数据源的优先级的情况下,基于当前获取的数据生成新的映射记录,用于更新所述先前映射记录。
例如,针对主数据,获取主数据后查询所述主键映射表,并且在确定针对当前获取的主数据对应的航班(例如第一航班)的主数据映射记录已经存在于主键映射表中的情况下,比较提供用于生成该条主数据映射记录的主数据的第一数据源和提供当前获取的主数据的第二数据源的优先级,并且根据优先级来确定是否丢弃当前获取的主数据。
又例如,针对地面保障数据,在从空管局的地面保障系统获取到地面保障数据时,查询所述主键映射表,并且在确定针对当前获取的地面保障数据对应的第一航班的一级数据映射记录已经存在于主键映射表中的情况下,则比较提供用于生成该条一级数据映射记录的一级关联数据(地面保障数据)的第一数据源(机场的地面保障系统)和提供当前获取的地面保障数据的第二数据源(空管局的地面保障系统)的优先级,并且根据第二数据源的优先级更高来确定基于当前获取的地面保障数据生成新的映射记录。
这样,基于主键映射机制,可以基于简单的值匹配,从而方便地将同一目标对象的所有数据关联起来,以便于进行数据融合。此外,针对多个不同数据源提供同种类型的数据的情况,可以在优先级更高的数据源的同种类型数据到来之后,替换先前从优先级较低的数据源接收的数据,因此在保证数据融合的完整性的同时,还可以协调好不同数据源之间的优先级和及时性之间的关系。
根据本申请的另一方面,还提供了一种用于融合来自不同数据源的数据的装置。
图6示出了根据本申请的实施例的用于融合来自不同数据源的数据的装置的结构框图。该装置600可以为图1所示的服务器20。
如图6所示,该装置600可以包括获取模块610、确定模块620和融合模块630。
获取模块610可以用于从不同数据源中的主数据源获取与一个或多个目标对象分别对应的一条或多条主数据。
例如,不同数据源可以包括主数据源、一级关联数据源和二级关联数据源等等。其中,主数据源用于提供与该一个或多个目标对象最直接相关且比较重要的一条或多条主数据,一级关联数据源可以提供与主数据源提供的数据直接相关联的数据(即一级关联数据),并且二级关联数据源可以提供与一级数据源提供的数据直接相关联,从而能够与主数据间接相关联的数据(即二级关联数据)。
另外,每个数据源可以针对不同的目标对象而提供不同的数据。例如,主数据源可以针对第一航班提供第一主数据,并且针对第二航班提供第二主数据,等等。
确定模块620可以用于基于所述一条或多条主数据中的每一者的用于指示所对应的目标对象的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象。
例如,其他数据源可以包括一级关联数据源或者二级关联数据源。
在从一级关联数据源获取到一条或多条一级关联数据时,确定模块620可以将每条一级关联数据的关键特征与该一条或多条主数据中的每一者的关键特征进行特征匹配,并根据匹配结果确定该一条或多条主数据中该条一级关联数据所关联的主数据,作为匹配主数据;以及将该条一级关联数据对应的目标对象确定为与该匹配主数据对应的目标对象。
同理,类似的,在从二级关联数据源获取到一条或多条二级关联数据时,确定模块620可以将每条二级关联数据的关键特征与来自相应的一级关联数据源的每条一级关联数据的关键特征进行特征匹配,并根据匹配结果确定该条二级关联数据所关联的一级关联数据,作为匹配一级关联数据;以及在基于该匹配一级关联数据的关键特征确定了该匹配一级关联数据所对应的目标对象的情况下,将该条二级关联数据对应的目标对象确定为与该匹配一级关联数据对应的目标对象。
可选地,获取模块610可以响应于确定模块620确定不存在所获取的所述一级关联数据所关联的匹配主数据,在预设时间段内进行等待直到获取到所述匹配主数据。另外,获取模块610可以响应于确定模块620确定不存在所获取的所述二级关联数据所关联的匹配一级关联数据,在预设时间段内进行等待直到获取到所述匹配一级关联数据。
融合模块630可以将与同一目标对象对应的主数据与关联数据融合。
例如,可能确定出针对不同目标对象的所有数据,因此可以将与同一目标对象相关的所有数据融合在一起,例如以数据表的形式存储在数据库中或者其他方式存储在任何类型的存储装置中,从而可以查看每个目标对象相关的所有数据。
可选地,所述不同数据源中的每个数据源被赋予优先级,融合模块630还可用于在至少两个数据源提供的相同类型的数据与同一目标对象对应的情况下,将该至少两个数据源中具有较高优先级的数据源提供的数据作为用于融合的数据。
通过图6描述的用于融合来自不同数据源的数据的装置,通过将获取的辅助数据(也称为关联数据)与主数据经过特征匹配而将针对同一目标对象的主数据与相应的辅助数据融合;此外,针对一级关联数据将其与主数据进行匹配而完成与主数据的融合(基于直接关联),并且针对二级关联数据将其与一级关联数据进行匹配进而完成与主数据的融合(基于间接关联)。此外,在一级关联数据早于相应的主数据以及二级关联数据早于相应的一级关联数据的情况下,通过引入时间窗口从而可以等待相应的数据到来,以实现数据融合。另外,每个数据源被赋予优先级,并且可能同一类型数据(例如,主数据或者地面保障数据)由至少两个数据源来提供,此时可以基于具有最高优先级的数据源提供的数据来进行数据融合。
在一些实施例中,如前面所述的,可以利用主键映射表来进行数据融合过程。
图7示出了图6所示的装置的进一步结构框图。
如图7所示,确定模块620可以包括查询子模块620-1、确定子模块620-1和生成子模块620-1。
例如,针对所获取的主数据,在获取模块610获取了主数据之后,查询子模块620-1可以查询所述主键映射表,并且生成子模块620-1可以响应于在所述主键映射表中不存在针对当前获取的主数据对应的目标对象的主数据映射记录,生成当前获取的主数据的主数据映射记录,其中,所生成的主数据映射记录的业务主键的值为当前获取的主数据的关键特征构成的、所对应的目标对象的唯一标识,并且其系统主键的值为所述主数据源的特定于当前获取的主数据对应的目标对象的系统标识。
又例如,针对所获取的一级关联数据,在获取模块610获取了一级关联数据之后,查询子模块620-1可以查询所述主键映射表,以将当前获取的一级关联数据的关键特征和所述主键映射表中的每条主数据映射记录的业务主键所指示的关键特征进行特征匹配,并根据匹配结果确定当前获取的一级关联数据所匹配的主数据映射记录,作为匹配主映射记录;以及确定子模块620-2将当前获取的一级关联数据对应的目标对象确定为所述匹配主映射记录所针对的目标对象,并且生成子模块620-3响应于在所述主键映射表中不存在针对所确定的目标对象的一级数据映射记录,生成当前获取的一级关联数据的一级数据映射记录,其中,所生成的一级数据映射记录的业务主键的值为所述匹配主映射记录所针对的目标对象的唯一标识,并且其系统主键的值为所述一级关联数据源的特定于所确定的目标对象的系统标识。
又例如,针对所获取的二级关联数据,在获取模块610获取了二级关联数据之后,查询子模块620-1可以查询所述主键映射表,以将当前获取的二级关联数据的关键特征和所述主键映射表中的每条一级数据映射记录的系统主键所指示的关键特征进行特征匹配,并根据匹配结果确定当前获取的二级关联数据所匹配的一级数据映射记录,作为匹配一级映射记录;以及确定子模块620-2可以将当前获取的二级关联数据对应的目标对象确定为所述匹配一级映射记录所针对的目标对象,并且生成子模块620-3响应于在所述主键映射表中不存在针对所确定的目标对象的二级数据映射记录,生成当前获取的二级关联数据的二级数据映射记录,其中,所生成的二级数据映射记录的业务主键的值为所述匹配一级映射记录所针对的目标对象的唯一标识,并且其系统主键的值为所述二级关联数据源的特定于所确定的目标对象的系统标识。
图6-7中的每个模块和子模块的操作的更多细节可以参考图2-5的描述,这里不再重复描述。
这样,通过基于主键映射机制,可以方便地将同一目标对象的是数据关联起来,以便于进行数据融合。
另外,虽然在图6-7中以示例的方式示出了上述各模块和子模块,但是应理解,根据不同的功能还可以将装置600划分为更多或更少的模块,或者每个模块可以被划分为进一步的更多或更少子模块。在一些示例实施方式中,模块或者其子模块可用电子硬件(例如,通用目的处理器、DSP、ASIC、FPGA或其它可编程逻辑器件、分立门或晶体管逻辑、分立硬件组件等等)、计算机软件(例如可以存储于随机接入存储器(RAM)、闪存、只读存储器(ROM)、可擦除可编程ROM(EPROM)等等)或两者的组合来实现。
图8示出了根据本申请实施例的计算设备的示意性框图。该计算设备可以是如图1所示的计算设备(服务器20)。
如图8所示,计算设备800包括通过系统总线连接的一个或多个处理器、一个或多个存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该终端的非易失性存储介质存储有操作系统,还可存储有计算机可执行程序,该计算机可执行程序被处理器执行时,可使得处理器实现如前面所述的用于融合来自不同数据源的数据的方法的各种操作。该内存储器中也可储存有计算机可执行程序,该计算机可执行程序被处理器执行时,可使得处理器执行用于融合来自不同数据源的数据的方法的各步骤中描述的各种操作。
处理器可以是一种集成电路芯片,具有信号的处理能力。上述处理器可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请的实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,可以是X64架构或ARM架构的。
非易失性存储器可以是只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)或闪存。应注意,本申请描述的方法的存储器旨在包括但不限于这些和任意其它适合类别的存储器。
计算设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算设备的输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
该计算设备可以是终端或者服务器。其中,终端可包括但不限于:智能手机、平板电脑、笔记本电脑、台式计算机、智能电视等;终端内可运行各式各样的客户端(application,APP),如多媒体播放客户端、社交客户端、浏览器客户端、信息流客户端、教育客户端,等等。服务器可以是参考图2描述的服务器,即可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
根据本申请的另一方面,还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行如前面所述的用于融合来自不同数据源的数据的方法的各种操作。
根据本申请的又一方面,还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现如前面所述的用于融合来自不同数据源的数据的方法的各种操作。
需要说明的是,附图中的流程图和框图,图示了按照本申请各种实施例的方法和装置的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含至少一个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
在上面详细描述的本申请的示例实施例仅仅是说明性的,而不是限制性的。本领域技术人员应该理解,在不脱离本申请的原理和精神的情况下,可对这些实施例或其特征进行各种修改和组合,这样的修改应落入本申请的范围内。
Claims (14)
1.一种用于融合来自不同数据源的数据的方法,所述方法包括:
从所述不同数据源中的主数据源获取与一个或多个目标对象分别对应的一条或多条主数据;
基于所述一条或多条主数据中的每一者的用于指示所对应的目标对象的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象;以及
将与同一目标对象对应的主数据与关联数据融合。
2.根据权利要求1所述的方法,其中,所述其他数据源包括一级关联数据源,
其中,基于所述一条或多条主数据中的每一者的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象,包括:
将来自所述一级关联数据源的一级关联数据的关键特征与所述一条或多条主数据中的每一者的关键特征进行特征匹配,并根据匹配结果确定所述一条或多条主数据中所述一级关联数据所关联的主数据,作为匹配主数据;以及
将所述一级关联数据对应的目标对象确定为与所述匹配主数据对应的目标对象。
3.根据权利要求2所述的方法,还包括:
当确定不存在所述一级关联数据所关联的所述匹配主数据时,在预设时间段内进行等待直到获取到所述匹配主数据。
4.根据权利要求1-3任一项所述的方法,其中,所述其他数据源包括二级关联数据源,并且所述二级关联数据源具有相应的一级关联数据源,
其中,基于所述一条或多条主数据中的每一者的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象,包括:
将来自二级关联数据源的二级关联数据的关键特征与来自相应的一级关联数据源的每条一级关联数据的关键特征进行特征匹配,并根据匹配结果确定所述二级关联数据所关联的一级关联数据,作为匹配一级关联数据;以及
在基于所述一条或多条主数据中的每一者的关键特征确定了所述匹配一级关联数据所对应的目标对象的情况下,将所述二级关联数据对应的目标对象确定为与所述匹配一级关联数据对应的目标对象。
5.根据权利要求4所述的方法,还包括:
当确定不存在所述二级关联数据所关联的所述匹配一级关联数据时,在预设时间段内进行等待直到获取到所述匹配一级关联数据。
6.根据权利要求1所述的方法,其中,所述不同数据源中的每个数据源被赋予优先级,
所述方法还包括:
在至少两个数据源提供的相同类型的数据与同一目标对象对应的情况下,将所述至少两个数据源中具有较高优先级的数据源提供的数据作为用于融合的数据。
7.根据权利要求1所述的方法,其中,所述方法基于主键映射表来实现。
8.根据权利要求7所述的方法,其中,所述主键映射表的字段包括业务主键和系统主键;
所述方法还包括:
在获取了每条主数据之后,查询所述主键映射表,并且在所述主键映射表中不存在针对当前获取的主数据对应的目标对象的主数据映射记录的情况下,生成当前获取的主数据的主数据映射记录;
其中,所生成的主数据映射记录的业务主键的值为当前获取的主数据的关键特征构成的、所对应的目标对象的唯一标识,并且其系统主键的值为所述主数据源的特定于当前获取的主数据对应的目标对象的系统标识。
9.根据权利要求8所述的方法,其中,所述其他数据源包括一级关联数据源,
其中,基于所述一条或多条主数据中的每一者的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象,包括:
查询所述主键映射表,以将当前获取的一级关联数据的关键特征和所述主键映射表中的每条主数据映射记录的业务主键所指示的关键特征进行特征匹配,并根据匹配结果确定当前获取的一级关联数据所匹配的主数据映射记录,作为匹配主映射记录;以及
将当前获取的一级关联数据对应的目标对象确定为所述匹配主映射记录所针对的目标对象,并且在所述主键映射表中不存在针对所确定的目标对象的一级数据映射记录的情况下,生成当前获取的一级关联数据的一级数据映射记录,
其中,所生成的一级数据映射记录的业务主键的值为所述匹配主映射记录所针对的目标对象的唯一标识,并且其系统主键的值为所述一级关联数据源的特定于所确定的目标对象的系统标识。
10.根据权利要求8所述的方法,所述其他数据源包括提供二级关联数据源,并且所述二级关联数据源具有相应的一级关联数据源,
其中,基于所述一条或多条主数据中的每一者的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象,还包括:
查询所述主键映射表,以将当前获取的二级关联数据的关键特征和所述主键映射表中的每条一级数据映射记录的系统主键所指示的关键特征进行特征匹配,并根据匹配结果确定当前获取的二级关联数据所匹配的一级数据映射记录,作为匹配一级映射记录,其中所述匹配一级映射记录是基于相应的一级关联数据的关键特征与每条主数据映射记录的业务主键所指示的关键特征之间的特征匹配的;
将当前获取的二级关联数据对应的目标对象确定为所述匹配一级映射记录所针对的目标对象,并且在所述主键映射表中不存在针对所确定的目标对象的二级数据映射记录的情况下,生成当前获取的二级关联数据的二级数据映射记录,
其中,所生成的二级数据映射记录的业务主键的值为所述匹配一级映射记录所针对的目标对象的唯一标识,并且其系统主键的值为所述二级关联数据源的特定于所确定的目标对象的系统标识。
11.根据权利要求8-10在任一项所述的方法,其中,所述不同数据源中的每个数据源被赋予优先级,
所述方法还包括:
针对某种类型的数据,在查询所述主键映射表并且确定所述主键映射表中已经存在针对当前获取的数据所对应的目标对象的、与该种类型的数据相关的先前映射记录的情况下,比较提供用于生成所述先前映射记录的数据的第一数据源和提供当前获取的数据的第二数据源的优先级;
在所述第一数据源的优先级高于所述第二数据源的优先级的情况下,丢弃当前获取的数据;以及
在所述第一数据源的优先级低于所述第二数据源的优先级的情况下,生成关于当前获取的数据的新映射记录,用于更新所述先前映射记录。
12.一种用于融合来自不同数据源的数据的装置,所述装置包括:
获取模块,用于从所述不同数据源中的主数据源获取与一个或多个目标对象分别对应的一条或多条主数据;
确定模块,用于基于所述一条或多条主数据中的每一者的用于指示所对应的目标对象的关键特征,确定来自所述不同数据源中的其他数据源的关联数据分别对应的目标对象;以及
融合模块,用于将与同一目标对象对应的主数据与关联数据融合。
13. 一种计算设备,包括:
处理器;以及
存储器,存储有计算机可执行程序,所述计算机可执行程序被处理器执行时,使得处理器实现如权利要求1-11中任一项所述的用于融合来自不同数据源的数据的方法的各种操作。
14.一种计算机可读存储介质,存储有计算机可执行程序,所述计算机可执行程序被处理器执行时,使得所述处理器执行如权利要求1-11中任一项所述的用于融合来自不同数据源的数据的方法的各种操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310232418.4A CN115952471B (zh) | 2023-03-13 | 2023-03-13 | 融合不同数据源的数据的方法、装置、计算设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310232418.4A CN115952471B (zh) | 2023-03-13 | 2023-03-13 | 融合不同数据源的数据的方法、装置、计算设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115952471A true CN115952471A (zh) | 2023-04-11 |
CN115952471B CN115952471B (zh) | 2023-06-30 |
Family
ID=85903340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310232418.4A Active CN115952471B (zh) | 2023-03-13 | 2023-03-13 | 融合不同数据源的数据的方法、装置、计算设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115952471B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116089907A (zh) * | 2023-04-13 | 2023-05-09 | 民航成都信息技术有限公司 | 航空多源数据的融合方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751575A (zh) * | 2019-10-21 | 2020-02-04 | 中国民航信息网络股份有限公司 | 民航业旅客服务数据的处理方法及装置 |
CN110780794A (zh) * | 2020-01-02 | 2020-02-11 | 成都四方伟业软件股份有限公司 | 一种可视化数据列表显示方法及装置 |
CN110909068A (zh) * | 2019-11-08 | 2020-03-24 | 广东核电合营有限公司 | 应急柴油发电机组大数据采集处理方法、系统及存储介质 |
CN111078687A (zh) * | 2019-11-14 | 2020-04-28 | 青岛民航空管实业发展有限公司 | 航班运行数据融合方法、装置及设备 |
CN111443970A (zh) * | 2020-03-24 | 2020-07-24 | 山东浪潮通软信息科技有限公司 | 一种组装多来源数据的方法、装置、设备及可读介质 |
US20210303569A1 (en) * | 2020-03-31 | 2021-09-30 | Sonos, Inc. | Systems and Methods for Extracting Data Views from Heterogeneous Sources |
CN114661810A (zh) * | 2022-05-24 | 2022-06-24 | 国网浙江省电力有限公司杭州供电公司 | 轻量级多源异构数据融合方法及系统 |
CN114861818A (zh) * | 2022-05-25 | 2022-08-05 | 平安普惠企业管理有限公司 | 基于人工智能的主数据匹配方法、装置、设备及存储介质 |
-
2023
- 2023-03-13 CN CN202310232418.4A patent/CN115952471B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751575A (zh) * | 2019-10-21 | 2020-02-04 | 中国民航信息网络股份有限公司 | 民航业旅客服务数据的处理方法及装置 |
CN110909068A (zh) * | 2019-11-08 | 2020-03-24 | 广东核电合营有限公司 | 应急柴油发电机组大数据采集处理方法、系统及存储介质 |
CN111078687A (zh) * | 2019-11-14 | 2020-04-28 | 青岛民航空管实业发展有限公司 | 航班运行数据融合方法、装置及设备 |
CN110780794A (zh) * | 2020-01-02 | 2020-02-11 | 成都四方伟业软件股份有限公司 | 一种可视化数据列表显示方法及装置 |
CN111443970A (zh) * | 2020-03-24 | 2020-07-24 | 山东浪潮通软信息科技有限公司 | 一种组装多来源数据的方法、装置、设备及可读介质 |
US20210303569A1 (en) * | 2020-03-31 | 2021-09-30 | Sonos, Inc. | Systems and Methods for Extracting Data Views from Heterogeneous Sources |
CN114661810A (zh) * | 2022-05-24 | 2022-06-24 | 国网浙江省电力有限公司杭州供电公司 | 轻量级多源异构数据融合方法及系统 |
CN114861818A (zh) * | 2022-05-25 | 2022-08-05 | 平安普惠企业管理有限公司 | 基于人工智能的主数据匹配方法、装置、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116089907A (zh) * | 2023-04-13 | 2023-05-09 | 民航成都信息技术有限公司 | 航空多源数据的融合方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115952471B (zh) | 2023-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10387976B2 (en) | Federated system for centralized management and distribution of content media | |
US11682310B2 (en) | System and method for verifying aircraft position information | |
US20170140048A1 (en) | Information processing method, apparatus, terminal and server | |
CN111316262B (zh) | 用于提供乘客或用户信息的系统、设备和方法 | |
US10679153B2 (en) | Computer-implemented method and system for sharing information between passengers and air traffic management stakeholders | |
US20200226940A1 (en) | Systems and methods for connected and intelligent flight management system | |
EP2965283B1 (en) | Systems and methods for associating microposts with geographic locations | |
CN115952471A (zh) | 融合不同数据源的数据的方法、装置、计算设备和介质 | |
EP4024906B1 (en) | Method for identifying a device using attributes and location signatures from the device | |
US20220386071A1 (en) | Road side positioning method and apparatus, device, and storage medium | |
US8140199B2 (en) | System and method for predicting aircraft gate arrival times | |
EP3644258A1 (en) | Systems and methods to update shared databases using blockchain technology | |
CN111403034A (zh) | 用户信息管控方法及系统 | |
US20210327282A1 (en) | Distributed connected aircraft cockpit flight management system as a network node with api service capabilities | |
US20190096268A1 (en) | System and method for airport terminal area trajectory data clustering for selecting efficient terminal area procedures | |
CN112965943A (zh) | 一种数据处理方法、装置、电子设备以及存储介质 | |
CN111832879A (zh) | 一种开放式企业级信息系统的信息资源共享与授权方法 | |
CN115391605A (zh) | 数据查询方法、装置、设备、计算机可读介质和程序产品 | |
CN115098558A (zh) | 一种航班数据统计方法及装置 | |
JP2012212227A (ja) | イベント処理システム、該システムに用いられるイベント処理方法及びイベント処理プログラム | |
CN104023067A (zh) | 行程的自动导入系统及方法 | |
TW202036446A (zh) | 旅遊資訊傳播系統、伺服器及其方法 | |
CN117236659B (zh) | 一种基于线上旅游平台的团计划管理方法及系统 | |
RU2772374C2 (ru) | Система, устройство и способ обеспечения информации о пассажирах или пользователях | |
CN113408986B (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 |