用于促进发布者和应用程序之间的数据通信的方法和系统与流程

文档序号:19414163发布日期:2019-12-14 00:45阅读:165来源:国知局
用于促进发布者和应用程序之间的数据通信的方法和系统与流程

引言

本主题实施例涉及促进发布者与应用程序之间的数据通信。具体地,例如,一个或多个实施例可针对促进车辆数据的发布者与使用车辆数据的应用程序之间的车辆数据通信。

数据发布者是以特定格式发布捕获的数据以供其他人使用的设备。例如,数据发布者可以对应于测量与车辆操作相关的特定参数的车辆传感器,并且这些数据发布者可以以由不同应用程序使用的格式发布它们的数据。这些应用可以对接收到的数据执行分析,以便提供一些功能,包括但不限于,例如改进车辆性能、执行车辆诊断、执行道路诊断、改进行驶体验、识别可能的设计改进,和/或执行车辆部件的测试。



技术实现要素:

在一个示例性实施例中,一种方法包括由接口平台的处理器从多个发布者接收所发布的数据。该方法还包括从多个应用程序接收对发布的数据的多个请求。该方法还包括集合多个请求。该方法还包括使用所接收的发布数据来实现所集合的请求。

除了在此描述的一个或多个特征之外,在m个发布者和接口平台之间建立m个连接,并且在接口平台和n个应用程序之间建立n个连接。

除了在此描述的一个或多个特征之外,接口平台被实现为基于云的平台。

除了在此描述的一个或多个特征之外,所公布的数据包括所公布的车辆传感器数据。

除了在此描述的一个或多个特征之外,集合请求包括对对应于至少一个车辆标识号的发布信息的请求。

除了在此描述的一个或多个特征之外,所公布的车辆传感器数据包括车速、车辆刮水器速度和感测温度中的至少一个。

除了在此描述的一个或多个特征之外,对公布的数据的请求包括采样要求和精度要求。

除了在此描述的一个或多个特征之外,多个请求包括合成发布的数据的请求。

除了在此描述的一个或多个特征之外,实现集合请求包括引用商务逻辑引擎来确定是否应当实现该请求。

除了在此描述的一个或多个特征之外,接收发布的数据包括将发布的数据存储在接口平台的数据储存库上。

在另一示例性实施例中,还描述了一种接口平台内的系统,其包括配置为从多个发布者接收发布的数据的电子控制器。电子控制器还配置为从多个应用程序接收对发布的数据的多个请求。电子控制器还配置为集合多个请求。电子控制器还配置为使用所接收的发布的数据来满足集合请求。

当结合附图阅读以下详细描述时,本公开的上述特征和优点以及其它特征和优点将变得清楚。

附图说明

其他特征、优点和细节仅作为示例出现在以下详细描述中,该详细描述参考附图,在附图中:

图1示出了在发布者和多个应用程序之间传送车辆数据的传统方法;

图2示出了根据本发明的一个或多个实施例的系统结构;

图3示出了根据一个或多个实施例的用于向应用程序提供车辆数据的过程;

图4示出了根据一个或多个实施例用于执行上/下采样以及用于修改车辆数据的精度的过程;

图5示出了根据一个或多个实施例用于合成车辆数据的过程;

图6描绘了根据一个或多个实施例的方法的流程图;以及

图7描绘了可用于实施本发明的一个或多个实施例的计算机系统的高级框图。

具体实施方式

以下描述本质上仅仅是示例性的,并不旨在限制本公开、其应用或使用。如这里所使用的,术语模块指的是处理电路,其中电路可以包括专用集成电路(asic)、电子电路、执行一个或多个软件或固件程序的处理器(共享、专用或成组)和存储器、组合逻辑电路,和/或提供所述功能的其它适当部件。

本发明的一个或多个实施例针对一种促进不同发布者和不同应用程序之间的车辆数据通信的方法和系统。具体地,一个或多个实施例可以使用网络内计算能力来灵活地共享、处理、操纵和合成车辆数据以服务于具有不同需求的不同应用程序。一个或多个实施例可以优化和自动化选择由不同的车辆传感器发布的数据流的过程。一个或多个实施例的系统可以集合来自不同应用程序的请求。一个或多个实施例的系统然后可以操纵、处理和合成从发布者接收的数据,以便服务于不同应用程序的集合请求。

图1示出了在发布者111、112、113、114和多个应用程序131、132、133之间传送车辆数据的传统方法。参考图1的实例,“m”个发布者向“n”个订阅者发布其数据。所述m个发布者中的每一个可配置成根据特定格式/精度发布其数据,且所述n个订阅者中的每一个也可能需要接收特定格式的数据。每个发布者可以发布与特定车辆相关的数据。车辆可以与多个发布者相关联。发布者111、112、113、114可以对应于单个车辆的发布者,或者发布者111、112、113、114可以对应于不同车辆的发布者111、112、113、114。

假设发布者111向不同的应用程序发布车速。进一步假设应用程序131需要以2hz频率接收整数值格式的车速数据,并且假设应用程序133需要以2hz频率接收双值格式的车速数据。因此,为了发布者111将其车速信息发布到应用程序131和应用程序133,发布者111需要配置连接到应用程序中的每一个的两个单独的连接(其中每一连接配置成根据每一应用程序的所需格式/精度传输数据,且每一连接配置成例如,根据每一应用程序的所需频率传输数据)。此外,除了发布车速数据之外,发布者111和其他发布者可以发布其他类型的数据,例如但不限于车辆刮水器数据、车辆温度数据、车辆加速度数据等。此外,如上所述,每个应用程序可能需要以特定的频率接收特定格式的数据。在一个实例性实施例中,不同的格式/精度可以对应于不同的数字类型,例如浮点数、整数、双数等。应当理解,格式差异的实例不限于数值,而是包括其它数据类型,诸如文本串、指针、标记数据、以数据交换格式(诸如xml)表示的数据或由各种这些和其它基本数据类型组成的任何类型的复杂数据类型。因此,为了适应每一应用程序的特定需要,传统方法通常需要在每一发布者与每一应用程序之间建立单独的连接。

然而,当使用传统方法时,如果“m”个发布者111、112、113、114中的每一个连接到“n”个应用程序131、132、133中的每一个,则总共m×n个连接是必要的。然而,建立和维护这样大量的连接是非常困难的并且是计算昂贵的。如下面进一步详细描述的,传统方法通常效率低并且浪费带宽和计算资源。

鉴于与常规方法相关联的困难和缺点,本发明的一个或多个实施例可针对充当发布者111、112、113、114与应用程序131、132、133之间的接口的系统。如下文更详细描述的,一个或多个实施例的接口减少了将信息从发布者111、112、113、114传送到应用程序131、132、133所需的连接的数量。具体地,一个或多个实施例可以使用n+m个连接,而非需要n×m个连接。

当从发布者111、112、113、114向应用程序131、132、133传送信息时,一个或多个实施例的接口还可以更有效地使用可用带宽。如在此更详细描述的,本发明的一个或多个实施例可以集合从多个车辆/发布者111、112、113、114接收的数据,并且一个或多个实施例可以将这种集合的数据存储在基于云的存储系统内。一个或多个实施例还可以集合多个应用程序的不同请求/需要。接下来,一个或多个实施例中,接口可以操纵、处理和合成集合数据,以便满足集合请求,如这里更详细描述的。这样,可以满足应用程序131、132、133的请求,而不需要每个应用程序131、132、133直接连接到每个发布者111、112、113、114。这样,可以满足应用程序131、132、133的请求,而不需要发布者111、112、113、114与应用程序131、132、133之间n×m个连接。

另外,一个或多个实施例可以隔离与控制平面管理有关的过程和与数据平面操作有关的过程,如这里更详细描述的。此外,一个或多个实施例能够实现灵活的数据处理、数据操纵、数据合成和数据共享。一个或多个实施例还可以引入知晓商业政策的准入控制算法,其能够向被认为比其他数据请求更重要的数据请求给予偏好。

图2示出了根据一个或多个实施例的系统结构。一个或多个实施例的系统121可用作发布者111、112、113、114与应用程序131、132、133之间的接口。在一个或多个实施例中,系统121可以是云驱动的高级知识中介和交换平台。

参照图2,应用程序131、132、133可以请求特定类型的车辆数据。在一个或多个实施例中,请求可以被格式化以指示:例如,(1)请求应用程序131、132、133,(2)请求车辆数据,(3)请求采样率,和/或(4)请求精度和格式。在其它实施例中,请求可以包括更多或更少的参数。

在接收到对车辆数据的请求时,云驱动中介和交换平台121可与控制平面决策引擎160通信,鉴于有限的通信资源确定是否可满足所接收的请求。例如,控制平面决策引擎160可以根据通信带宽和计算负载限制来确定是否可以满足所接收的请求。控制平面决策引擎160也可以在云中实现。

具体地,准入控制模块162可确定请求是否可被准许或重新协商。如果不能准许或重新协商请求,那么准入控制模块162可拒绝所述请求。如果准入控制模块162准许该请求,那么准入控制模块162出于执行规划的目的将该请求传输到合同实施模块164。

合同实施模块164可以参考商业政策引擎/书籍161来确定如何实施合同。每个不同的应用程序131、132、133可以与系统121或与订阅用户131、132、133具有不同的合同条款和/或不同的支付条款,这使得能够相对于其他应用程序请求优先处理某些应用程序请求。合同实施模块164还可以确定是否需要对数据执行任何操作以正确地满足应用程序131、132、133的请求。例如,合同实施模块164可以将请求转发到操作决策模块166,确定是否需要执行任何操作。例如,上/下采样模块163确定是否需要执行上/下采样。精度控制模块167确定是否需要增加/减少数据精度和/或改变数据格式。例如,合成模块165确定是否需要合成多个信息。

一旦控制平面决策引擎160确定是否需要对数据执行任何操作以正确地满足应用程序131、132、133的请求,则经由数据平面操作接口154将关于如何执行操作的详细指令传输到数据平面操作模块150。然后,数据平面操作模块150执行详细的操作。

云驱动的中介和交换平台121基于来自所有不同应用程序131、132、133的集合请求订阅所发布的数据。云驱动的中介和交换平台121还将所发布的数据(诸如车辆传感器数据)存储在发布/订阅计算平台122、车辆计算平台140和/或数据平面操作模块150中。根据由控制平面决策引擎160做出的数据操作决策,相应的数据平面操作模块154将从发布/订阅计算平台122检索车辆传感器数据以供进一步操作。如上所述,进一步的操作可以包括:例如,(1)上采样/下采样,(2)数据精度和格式改变,和/或(3)通过多个车辆传感器源的知识合成。

可经由消息搜索/检索接口151将经这些操作得到的经处理的数据传输到数据库模块152。得到的经处理的数据也可以由索引管理系统153用相关的数据索引管理来更新,以保持数据一致/完整。由应用程序131、132、133请求的数据通过使用信息/洞察计算平台123来提供,但是每个应用程序131、132、133接收所需的采样率和/或精度以及格式改变的数据。每个应用程序131、132、133可以根据不同于其它应用程序131、132、133用来接收数据的采样率和/或精度和格式的采样率和/或精度格式来接收数据。

在本发明的一个或多个实施例中,在系统121只能支持有限数量的应用请求的情况下,准入控制模块162可以确定要满足的最有价值/最合适的请求。要满足的确定请求可以基于:(1)提供更大收入的请求的组合,(2)能够以较少通信成本实现的请求的组合,和/或(3)能够以较少云计算成本实现的请求的组合。加权多准则函数可以基于上述准则(1)-(3),并且每个可能的组合可以与从加权多准则函数导出的值相关联。这样,具有较高函数值的请求的组合可以优先于其他的请求组合。其他实施例可以使用本地贪婪算法为要满足的每个请求分配收入成本比,其中具有更高比值的请求可以比其他请求优先。

图3示出了根据一个或多个实施例用于向应用程序131、132、133提供车辆数据的过程300。在图3的实例中,假设在310,后台数据服务器(例如,系统121)接收并集合与制动器使用相关的车辆数据,并且进一步假设该与制动器使用相关的数据与该数据所源自的每个车辆的车辆标识号(vin)相关联。例如,可以在图2的云驱动的高级知识中介和交换平台内的任何地方实现后台数据服务器。随后,在320,假设应用程序131、132、133请求接收与制动器使用相关的车辆数据。例如,该应用程序可以是分析制动器使用的应用程序。在图3的实例中,假定制动器使用分析应用程序具体请求满足两个标准的制动器使用数据:(1)制动器使用数据必须来自使用“x”型特定制动系统的车辆,以及(2)制动器使用数据必须来自具有大量使用制动器的驾驶员/用户的车辆(如由应用程序131、132、133提供的vin号列表所确定,其对应于具有大量制动器用户的车辆)。在330,后台内的系统执行集合应用131、132、133的请求的功能。这样,在340,后台向制动器使用分析应用程序提供制动器使用数据。所提供的制动器使用数据符合以下标准:(1)来自使用“x”型特定制动系统的车辆,和(2)来自具有大量使用制动器的驾驶员/使用者的车辆。不向应用程序提供来自轻制动驱动器的制动器使用数据。而且,也不向应用程序提供来自使用“y”型不同制动器系统的车辆的制动器使用数据。

图4示出了根据一个或多个实施例用于执行上/下采样以及用于修改车辆数据的精度或格式的过程400。在图4的实例中,假设实例应用程序131和实例应用程序132都请求车速数据。实例应用程序131以特定采样率“f1”请求车速数据,并且还以精度“r1”请求车速数据。另一方面,实例应用程序132以特定采样率“f2”请求车速数据,并且还以精度“r2”请求车速数据。如以上参照图3所述,后台的系统可用作数据的过滤器/转换器410。例如,(图2的)上/下采样模块163和精度控制模块167可以决定使用过滤器/转换器410来过滤/转换数据。过滤器/转换器410可以从数据发布者111、112、113、114接收车速数据401。过滤器/转换器410还可以接收对应于所请求的数据精度402(即,精度“r1”和精度“r2”)的输入,以及接收对应于所请求的采样率403(即,采样率“f1”和采样率“f2”)的另一输入。接下来,如果确定应用程序131、132、133的请求是商业政策引擎161(如图2所示)允许的,则过滤器/转换器410产生要提供给应用程序131、132、133的数据411。然后将由过滤器/转换器410产生的经处理的数据提供给应用程序131和应用程序132中的每一个。以请求的采样率“f1”和请求的精度“r1”提供被提供给应用程序131的数据411。提供给应用程序132的数据411以请求的采样率“f2”和请求的精度“r2”提供。

图5示出了根据一个或多个实施例用于合成车辆数据的过程500。在图5的实例中,假设实例应用程序131和实例应用程序132都请求关于雨/雪强度数据511的信息。实例应用程序131以特定采样率“f1”请求雨/雪强度数据511,并且还以精度“r1”请求雨/雪强度数据。另一方面,实例应用程序132以特定采样率“f2”请求雨/雪强度数据511,并且还以精度“r2”请求雨/雪强度数据511。如以上参照图3所述,后台的系统可用作数据的知识合成器510。例如,合成决策模块165可以决策使用知识合成器510来合成数据。数据的知识合成器510可以从数据发布者接收湿度数据501、刮水器数据502和温度数据503等。从数据发布者合成该数据可以有助于形成雨/雪强度数据511。接下来,如果确定应用程序131、132、133的请求是商业政策引擎161允许的,则知识合成器510产生要提供给应用程序131和132的数据511。然后将由知识合成器510产生的数据511提供给应用程序131和应用程序132中的每一个。提供给应用程序131的雨/雪强度数据511以请求的采样率“f1”和请求的精度“r1”提供。提供给应用程序132的雨/雪强度数据511以请求的采样率“f2”和请求的精度“r2”提供。

图6描绘了根据一个或多个实施例的方法600的流程图。可以执行图6的方法以便于发布者111、112、113、114和应用程序131、132、133之间的数据通信。图6的方法可以由云驱动的高级知识中介和交换平台来执行。该平台可以被实现为,例如,数据发布者111、112、113、114和应用程序131、132、133之间的接口。该方法可以包括,在框610由接口平台的处理器从多个发布者111、112、113、114接收所发布的数据。该方法还可以包括,在框620从多个应用程序131、132、133接收对已发布数据的多个请求。该方法还可以包括,在框630集合多个请求。该方法还可以包括,在框640使用所接收的发布数据来实现所集合的请求。

图7描绘了可用于实现一个或多个实施例的计算系统700的高级框图。计算系统700可以至少对应于,例如,被配置成便于发布者111、112、113、114与应用程序131、132、133之间的数据通信的系统。计算系统700可用于实现能够执行本文所述方法的系统的硬件部件。尽管示出了一个示例性计算系统700,但是计算系统700包括将计算系统700连接到附加系统(未示出)的通信路径726。计算系统700和附加系统经由通信路径726通信,例如,在它们之间传输数据。

计算系统700包括一个或多个处理器,诸如处理器702。处理器702连接到通信基础设施704(例如,通信总线、交叉杆或网络,例如,蜂窝网络、wifi、因特网等)。计算系统700可以包括显示界面706,该显示界面706转发来自通信基础设施704(或来自未示出的帧缓冲器)的图形、文本内容和其它数据,以便在显示单元708上显示。计算系统700还包括主存储器710,例如,随机存取存储器(ram),并且还可以包括辅助存储器712。辅助存储器712中还可以包含一个或多个磁盘驱动器714。可移动存储驱动器716从可移动存储单元718读取和/或向其写入。可以理解,可移动存储单元718包括其中存储有计算机软件和/或数据的计算机可读介质。

在替代实施例中,辅助存储器712可包括用于允许计算机程序或其它指令被加载到计算系统中的其它类似装置。这种装置可以包括,例如,可移动存储单元720和接口722。

在本说明书中,术语“计算机程序介质”、“计算机可用介质”和“计算机可读介质”用于指诸如主存储器710和辅助存储器712、可移动存储驱动器716以及安装在磁盘驱动器714中的磁盘之类的介质。计算机程序(也称为计算机控制逻辑)存储在主存储器710和/或辅助存储器712中。也可以通过通信接口724接收计算机程序。这样的计算机程序在运行时使得计算系统能够执行这里讨论的特征。特别地,计算机程序在运行时使处理器702能够执行计算系统700的特征。因此,这样的计算机程序表示计算系统700的控制器。由此,从前面的详细描述中可以看出,一个或多个实施例提供了技术益处和优点。

虽然已经参考示例性实施例描述了上述公开,但是本领域技术人员应当理解,在不脱离本公开的范围的情况下,可以进行各种改变并且可以用等同物替换其元件。此外,在不脱离本公开的基本范围的情况下,可以进行许多修改以使特定情况或材料适应本公开的教导。因此,希望实施例不限于所公开的特定实施例,而是将包括落入本申请范围内的所有实施例。

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