元数据驱动的实时分析框架的制作方法_4

文档序号:9308605阅读:来源:国知局
考图7- 9描述流程图600如下。值得注意的是并非流程图600的每 一步骤都在每个实施例中执行,并且流程图600的步骤可以图6中显示的顺序以外的其它 顺序执行。基于以下描述,其他结构及操作的实施例对于相关领域的技术人员将是显而易 见的。
[0080] 在图6中,流程图600以步骤602开始。在步骤602,使用定义将由实时数据分析 应用所接收的实时数据的至少一个有效载荷定义来配置事件收集模块。在一个实施例中, 包实例化器510可使用包108中接收的一个或多个有效载荷定义(例如,图3的有效载荷定 义318)来配置应用模板520的事件收集模块。事件收集模块被配置成接收实时数据。当 由包实例化器510配置时,事件收集模块能够接收根据一个或多个有效载荷定义配置的实 时数据。
[0081] 例如,图7示出了根据示例实施例的、可由数据分析应用包配置以作为数据分析 服务运行的应用模板700的框图。图7示出了应用模板700的图形表示,应用模板可实际上 以程序代码(例如,XML代码、JavaScript代码、C++代码等)的形式实现。如图7中所示, 应用模板700包括数据分析处理引擎702、应用监视器704、认证模块706、授权模块708、事 件收集器710、引用数据服务712、状态引擎714、以及用户控制面板716。应用模板的这些 特征中的一个或多个可能在一些实施例中不存在。应用模板700可由应用定义包的组件来 填充,并且可在云服务中主控,以生成实时数据分析服务。
[0082] 图7的事件收集器710被配置成接收实时数据。当由包实例化器510配置时,事 件收集器710能够接收根据一个或多个有效载荷定义配置的实时数据。例如,图8示出了 根据示例实施例的、根据数据分析应用包配置以实现完整数据分析应用服务800的图7的 应用模板700的框图。如图8中所示,可使用第一有效载荷定义802a和第二有效载荷定 义802b来配置事件收集器710。如上所描述的,第一和第二有效载荷定义802a和802b定 义了可被事件收集器710 (在服务800的运行期间)接收的实时数据的第一类型和第二类 型。值得注意的是,在各实施例中,可使用对应于将被接收的实时数据的不同类型的数量的 任意数量的有效载荷定义来配置事件收集器710。
[0083] 如图8中所示,事件收集器710接收由一个或多个数据源828a_828n所生成和/ 或收集的实时数据818。数据源828a-828n可包括包括任何适当类型的传感器的一个或多 个固定设备、移动设备等。数据源828a-828n收集和/或生成实时数据,并以有线和/或无 线方式将实时数据818提供给事件收集器710。
[0084] 例如,图9示出了根据示例实施例的、向基于云的数据分析服务的事件收集器710 提供数据的数据获取网络900的框图。数据获取网络900是以说明目的提供的数据获取 设备的网络的示例。如图9中所示,数据获取网络900包括第1-第n设备902a-902n。第 1-第n设备902a-902n是图8中的数据源828a-828n的示例。设备902a-902n中的每一个 被配置成收集(例如,感测)数据和/或生成实时数据。设备902a-902n的示例包括固定 设备和移动设备,这些设备可各自包括一个或多个传感器、处理器或其它逻辑、和/或用于 收集和/或生成数据的其它特征。例如,传感器可检测速度、温度、压力、方向、传输的数据 量、和/或可被表示为数据的其它参数。设备902a-902n能够以无线或有线方式将这样的 数据分别作为实时数据904a-904n传送。可生成和/或收集任何类型的实时数据。事件收 集器710可以任何方式接收实时数据904a-904n。在图8中,实时数据904a-904n包括根据 第一载荷定义804a以及根据第二载荷定义804b格式化的实时数据。
[0085] 例如,继续城市公交车运输示例,设备902a_902n可以是城市公交车上携带的位 置、速度、以及方向传感器。实时数据904a-904n可包括设备902a-902n所收集的实时数据, 包括公交车位置、公交车速度、公交车行驶方向、以及时间戳,以及还包括公交车标识符。
[0086] 再次回到图6,在步骤604,使用定义将由实时数据分析应用所访问的引用数据的 至少一个引用数据定义来配置引用数据服务。在一个实施例中,包实例化器510可使用包 108中接收的一个或多个引用数据定义(例如,图3的引用数据定义320)来配置应用模板 520的引用数据服务。例如,如图8中所示的,包实例化器510可用引用数据定义812a-812n 来配置图7中的应用模板700的引用数据服务712。当被包实例化器510配置时,引用数 据服务712能够接收和/或维护(例如,存储在数据库或其它存储中)根据引用数据定义 812a-812n配置的引用数据。在服务800运行期间,数据分析处理引擎702可从引用数据服 务712请求引用数据以供处理查询中使用。
[0087] 在步骤606,使用根据至少一个查询定义来定义的至少一个查询来配置处理引擎。 在一个实施例中,包实例化器510可使用包108中接收的一个或多个查询定义(例如,图3 的查询定义322)来配置应用模板520的数据分析处理逻辑。例如,如图8中所示的,包实 例化器510可使用查询808a-808c(基于相应的查询定义)配置图7中的应用模板700的 数据分析处理引擎702。当被包实例化器510配置时,数据分析处理引擎702能够接收来自 引用数据服务712的引用数据832 (根据引用数据定义812a-812n格式化)以及来自事件 收集器710的实时数据820a和820b(根据有效载荷定义802a和802b格式化)。在服务 800运行期间,数据分析处理引擎702执行查询808a-808c来生成输出数据810a-810c,查 询808a-808c各自使用实时数据820a和820b和/或引用数据812a-812n。
[0088] 在步骤608,使用至少一个控制流定义来配置状态引擎。在一个实施例中,包实例 化器510可使用包108中接收的一个或多个控制流定义(例如,图3的控制流定义324) 来配置应用模板520的状态引擎。例如,如图8中所示的,包实例化器510可使用控制流 814a-814n(基于相应的控制流定义)来配置图7中的应用模板700的状态引擎714。状 态714被配置成提供服务800的"世界观",并且可与数据分析处理引擎702、引用数据服务 712、以及用户控制面板824交互以执行其功能。当被包实例化器510配置时,状态引擎714 能够同步用户控制面板716处的输出数据810a-810c作为根据控制流814a-814n的经同步 的输出数据824。以此方式,处理引擎702在特定时间值内生成的各种输出数据可被提供供 在用户面板716处一起显示(例如,在一共同的表格行中,一起在一地图中等)。此外,在一 个实施例中,状态引擎714可将引用数据控制信号822提供给引用数据服务832以根据控 制流814a-814b控制提供给数据分析处理引擎702的引用数据的定时。
[0089] 在服务800运行期间,一个或多个客户机830可访问用户面板716以访问经同步 的输出数据824。客户机830可从网页中或其它形式的用户控制面板716中接收经同步的 输出数据824,作为输出数据816a和816b。输出数据816a和816b可由客户机830通过网 络834(例如,LAN、WAN、网络的组合,诸如因特网等)接收。例如,输出数据816a和816b 可根据包108中提供的一个或多个控制面板UI组件、以一个或多个表格(由表格查看器显 示)或以其它形式显示在网页中。
[0090] 在步骤610,根据为实时数据分析应用指示的认证类型配置认证模块。在一个实 施例中,包实例化器510可使用包108中接收的(例如,在应用信息316中的)认证类型来 配置应用模板520的认证模块。例如,包实例化器510可使用认证类型来配置图7中的应 用模板700的认证模块706。认证模块706可使用认证类型来对尝试通过网络834与服务 800通信的客户机830进行认证。认证类型的示例包括口令、Kerberos、公钥加密等。
[0091] 在步骤612,根据为实时数据分析应用指示的授权策略配置授权模块。在一个实施 例中,包实例化器510可使用包108中接收的(例如,在应用信息316中的)授权策略来配 置应用模板520的授权模块。例如,包实例化器510可使用授权策略来配置图7中的应用 模板700的授权模块708。授权模块706可使用授权策略来提供出于信息安全目的的访问 控制以控制能够接收输出数据的客户机830。认证策略的示例包括使用访问控制列表、基于 能力的安全性等。
[0092]III.示例计算设备实施例
[0093] 可以硬件或软件以及软件和/或固件的任意组合的形式来实现开发门户102、管 理门户104、服务106、数据分析应用110、开发工具302、应用信息编辑器306、有效载荷定 义编辑器308、引用数据定义编辑器310、查询定义编辑器312、控制流编辑器314、控制面板 UI组件接收器328、包生成器330、部署工具502、云服务生成器508、包实例化器510、数据 库生成器512、云服务514、实时数据分析应用522、数据分析处理引擎702、应用监视器704、 认证模块706、授权模块708、事件收集器710、引用数据服务712、状态引擎714、用户控制 面板716、流程图200、流程图400、以及流程图600。例如,开发门户102、管理门户104、服 务106、数据分析应用110、开发工具302、应用信息编辑器306、有效载荷定义编辑器308、引 用数据定义编辑器310、查询定义编辑器312、控制流编辑器314、控制面板UI组件接收器 328、包生成器330、部署工具502、云服务生成器508、包实例化器510、数据库生成器512、云 服务514、实时数据分析应用522、数据分析处理引擎702、应用监视器704、认证模块706、 授权模块708、事件收集器710、引用数据服务712、状态引擎714、用户控制面板716、流程 图200、流程图400、以及流程图600可被实现为配置成在一个或多个处理器中执行的并且 存储在计算机可读存储介质中的计算机程序代码。作为替换,开发门户102、管理门户104、 服务106、数据分析应用110、开发工具302、应用信息编辑器306、有效载荷定义编辑器308、 引用数据定义编辑器310、查询定义编辑器312、控制流编辑器314、控制面板UI组件接收器 328、包生成器330、部署工具502、云服务生成器508、包实例化器510、数据库生成器512、云 服务514、实时数据分析应用522、数据分析处理引擎702、应用监视器704、认证模块706、授 权模块708、事件收集器710、引用数据服务712、状态引擎714、用户控制面板716、流程图 200、流程图400、以及流程图600可被实现为硬件逻辑/电气电路。
[0094] 例如,在一个实施例中,开发门户102、管理门户104、服务106、数据分析应用110、 开发工具302、应用信息编辑器306、有效载荷定义编辑器308、引用数据定义编辑器310、查 询定义编辑器312、控制流编辑器314、控制面
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1