CN105637499A - 动态可扩展分布式异构平台关系数据库 - Google Patents
动态可扩展分布式异构平台关系数据库 Download PDFInfo
- Publication number
- CN105637499A CN105637499A CN201380080277.3A CN201380080277A CN105637499A CN 105637499 A CN105637499 A CN 105637499A CN 201380080277 A CN201380080277 A CN 201380080277A CN 105637499 A CN105637499 A CN 105637499A
- Authority
- CN
- China
- Prior art keywords
- server
- data
- database
- agenda
- platform
- 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
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/547—Remote procedure calls [RPC]; Web services
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
Abstract
所公开的实施例提供一种用于收集、管理和传播数据的动态可扩展分布式异构平台关系数据库系统体系结构,其中体系结构在构成分布式数据库的服务器的数目和DDB的拓扑结构的方面上都是可扩展的,并且其中数据库服务器可以在没有系统中断的情况下被添加或被移除,并且DDB的拓扑结构可以被动态地变形。
Description
技术领域
所公开的实施例总体上涉及一种用于分布式数据库的系统和方法,该分布式数据库在构成数据库的服务器的数目和分布式数据库的拓扑结构的方面上是可动态扩展的。
背景技术
分布式计算涉及对分布式系统的使用,分布式系统是其中位于网络化计算机上的组件传递和协同其动作以实现共同目标的软件系统。尽管分布式系统具有许多变型,但是所有分布式系统都利用并发的或冗余的组件并且易受到组件的独立故障影响。分布式系统的示例包括基于面向服务的体系结构的系统、大规模多玩家网络游戏和点对点应用。
在分布式计算中,并且更一般地在计算机网络中,两阶段提交协议(其为分布式算法)关于是否提交或终止事务协同参与分布式数据事务的所有过程。两阶段提交协议是健壮的,因为其甚至在暂时系统故障(涉及过程、网络节点、通信等)的一些情况下实现其目标。
然而,两阶段提交协议不是对所有可能的故障配置都是有复原能力的并且可能需要系统管理员介入以补救结果。结果,必须执行对协议的状态的记录以实现恢复程序。在任何单个分布式事务的“正常运行”中,即当没有故障发生时(其通常是最常见的情形),协议包括两个阶段:提交请求阶段和提交阶段。
在提交请求阶段(或投票阶段)中,协调器过程尝试准备所有事务的参与过程(即,参与者、同伴或同事)以采取提交事务或终止事务必要的步骤,并且以投票“是”:提交(在事务参与者的局部部分运行已经正常结束的情况下)或者“否”:终止(在已经检测到关于局部部分的问题的情况下)。
在提交阶段中,协调器基于同伴的投票来决定是提交事务(仅仅在全部已经投票“是”的情况下)还是终止事务(其他情况)并且将结果通知给所有同伴。同伴之后利用其事务资源(也被称为可恢复资源;例如,数据库数据)和其在事务的其他输出中的相应部分(在适用的情况下)跟随以所需要的动作(提交或终止)。
发明内容
下文呈现简化的概要以提供对各个所公开的实施例的一些方面的基本理解。该概要不是本发明的详细概述。其既不意图识别本发明的主要元件或关键元件也不意图描绘本发明的范围。下面的概要仅仅以简化的形式来呈现所公开的实施例的一些构思作为下面的更详细的描述的前序。
所公开的实施例提供一种用于收集、管理和传播数据的动态可扩展分布式异构平台关系数据库。
至少一个所公开的实施例提供一种系统,其在构成分布式数据库(DDB)的服务器的数目和DDB的拓扑结构的方面上是可动态扩展的。因此,所公开的实施例也提供一种方法,通过其数据库服务器可以在没有系统中断的情况下被添加或被移除,并且DDB的拓扑结构可以被动态地变形以适应其用户和应用的当前需求。
至少一个所公开的实施例提供一种系统,其在硬件故障方面是容错的,并且在数据完整性方面也是容错的。也就是说,以在多个服务器上复制的数据的形式提供硬件容错。另外,所公开的实施例也提供使用时空索引策略来维持数据完整性的方法,时空索引策略在时间和空间内的位置的方面存储并操纵数据。因此,所存储的数据可以表示在特定时间期间在特定位置处的数据是什么。
附图说明
考虑附图通过参考下面的描述来获取本发明和其实用性的更完整理解,在附图中相似的附图标记指示相似的特征,并且其中:
图1示出了DDB系统体系结构的一个示例,所公开的实施例可以被实施在该DDB系统体系结构中以提供通过对各种组件的替换的改进和改进的功能。
图2示出了产品系统体系结构的一个示例,产品系统体系结构包括与议程服务器相关联的传统已知功能以及经由一个或多个处理器和/或服务器实施的监督器处理模块,其中额外的功能被添加以与至少一个机载数据库服务器通信,至少一个机载数据库服务器与由系统体系结构支持的每个平台相关联。
图3示出了能够用于提供或包括机载列车设备的设备的示例,该机载列车设备包括在所公开的实施例的DDB系统体系结构中使用的机载服务器。
具体实施方式
对具体实施例的描述不意图为对本发明的限制。相反,本领域技术人员应当认识到,存在可以在不脱离本发明的范围的情况下采用的许多变型和等效方案。那些等效方案和变型意图由所公开的实施例包含。
在各个发明的实施例的下面的描述中,对附图进行参考,附图形成本文的一部分,并且在附图中通过说明的方式示出了本发明可以被实践在其中的各种实施例。要理解,可以在不脱离所公开的实施例的范围和精神的情况下利用其其他实施例并且进行结构和功能修改。
传统DDB基本上是以固定网络拓扑结构包括多数据库服务器的单个数据库。固定网络拓扑结构确保在DDB内存储的数据的完整性和一致性。另外,确保在DDB内存储的数据的完整性需要采用两阶段提交概念。两阶段提交是数据库事务概念,其保证在多个数据库服务器上的事务的原子性。数据在拓扑结构内的所有关系数据库管理系统(RDBMS)服务器上被提交或者数据根本不被提交。
根据所公开的实施例提供的DDB系统体系结构与传统网络拓扑结构的不同在于其是动态的并且由物理成员RDBMS服务器和由本文描述的议程服务器确定的运行拓扑结构限定。议程服务器安排DDB成员服务器上的查询运行以利用每个查询运行创建不同的DDB拓扑结构。
传统上必要的两阶段提交在所公开的实施例的DDB中由于由所公开的实施例采用的数据存储的时空和索引方案而是不必要的。更具体地,时空存储方案是包括对象标识符、时间和三维空间坐标对以及数据被输入到成员RDBMS服务器中的最终时间说明的五维索引。该解决方案有效地回答了“在该时间和位置处的数据是什么以及其何时变得可见?”的问题。结果,后一时间说明使传统上必要的事务两阶段提交协议变得没有必要。
所公开的实施例提供一种用于收集和传播数据的动态可扩展分布式异构平台关系数据库。分布式数据库(DDB)是包括在计算机服务器上部署的两个或更多个关系数据库管理系统(RDBMS)的数据仓库,计算机服务器可以是在地理上被分散的。
所公开的实施例提供一种系统,其在构成DDB的服务器的数目和DDB的拓扑结构的方面上是可动态扩展的。也就是说,数据库服务器可以在没有系统中断的情况下被添加或被移除,并且DDB的拓扑结构可以被动态地变形以适应其用户和应用的当前需求。
所公开的实施例还提供一种系统,其在硬件故障方面是容错的,并且在数据完整性方面也是容错的。也就是说,以在多个服务器上的复制的数据的形式提供硬件容错。另外,使用时空索引策略来维持数据完整性,时空索引策略在时间和空间内的位置的方面存储并操纵数据。也就是说,所存储的数据表示在特定时间期间在特定位置处的数据是什么。
时空索引消除了传统上在DDB实施方案(其是现有技术状态)中采用的两阶段提交策略的需要。所公开的实施例以如由C.J.Date的TemporalDataandtheRelationalModel(MorganKaufmann,2002)描述的第六范式维持DDB数据。
根据所公开的实施例,网格数据库体系结构通过以数据碎片和数据副本的形式将数据在多个服务器上分布提供硬件容错。
在(出于性能或可靠性原因)分布式计算用于将负载分离在多个服务器之间的情况下,对碎片方法的实施方式也可以是有用的。数据碎片是以其驻存在其上的服务器为中心的数据。概念上,数据碎片可以被认为是DDB的水平划分。因此,每个个体碎片可以被认为是数据库碎片。
水平划分单独地保持数据库表的行,而不是被拆分成列。因此,每个划分形成碎片的部分,其继而可以被定位在单独的数据库服务器上或被定位在不同物理位置处。这种类型的划分使得能够将DDB划分和分布到多个服务器中,借此每个数据库中的每个表中的总行数得到减少,这减少索引大小,其总体上改善搜索性能。
此外,数据库碎片可以被放置在单独的硬件上,并且多个碎片可以被放置在多个处理器上,这进一步使得能够将数据库分布在大量处理器上并改善性能。一致性哈希可以用于执行自动碎片化以将大负载在多个较小的服务和服务器上分布。
使用线性哈希策略来确定数据碎片服务器位置。根据所公开的实施例提供的DDB通过将数据在多个服务器上分布而不使用数据碎片或数据副本概念来提供相似的数据碎片功能和数据副本(数据副本是以另一服务器为中心的数据的副本)概念。相反,根据所公开的实施例,基于以上描述的时空概念来划分数据并将数据在多个服务器上存储。
该策略基于数据的空间特性来创建径向基存储方案。另外,根据所公开的实施例,多个RDBMS服务器可以具有创建自然数据复制的重叠空间存储,这与网格数据副本的不同在于被复制的数据不被分配给具体服务器,而是被分配给DDB内的空间。因此,DDB内的存储空间可以在多个服务器实例上被复制。
在实施时,所公开的实施例可以用于改善如图1所示的产品系统体系结构,其中,DDB系统体系结构100包括至少一个后勤办公数据库服务器105、议程服务器110、经由一个或多个处理器和/或服务器实施的监督器处理模块115以及至少一个机载数据库服务器120。
后勤办公数据库服务器(BODS)105存储从机载数据库服务器120收集的数据。议程服务器110是用于调度远程服务器上的远程任务运行的任务调度机制。监督器处理模块115在远程服务器上运行由议程服务器提供的作为远程程序调用(RPC)的任务并报告回RPC的成功或失败状态。机载数据库服务器收集由列车上的列车控制和操作员复制系统(例如,由纽约AirBrake在“LEADER”商标下销售的商用系统)生成的数据。
所公开的实施例可以通过并入轻量级(即计算上简单化的)数据库平台特异性的平台代理、用作用于将来自一个平台的数据表示转换为ASCII字符串的中继的客户端应用来改善传统的产品系统体系结构。
因此,所公开的实施例可以利用监督器处理模块来将要在远程服务器上运行RPC发送到该远程服务器的合适的平台代理;结果,该平台代理将RPC运行的结果传递回到监督器处理模块。平台代理可以使用基于简单套接字的客户端服务器体系结构。
不同的RDBMS平台使用它们自己的协议进行通信。另外,不同的RDBMS平台还使用它们自己的SQL语法惯例。平台代理被设计为通过在通信协议和语法惯例方面被平台特殊化来解决协议和语法RDBMS平台具体问题。也就是说,Oracle平台代理被设计为从议程服务器接受消息并将该消息转换成可由OracleRDBMS接受的RPC存储的程序运行,并且之后将该运行的结果返回到议程服务器。类似地,Informix平台代理提供针对InformixRDBMS实施方案的服务。将新的RDBMS平台添加到DDB简单地为添加针对该平台的平台代理的问题。这为DDB内的所有RDBMS服务器提供透明的RDBMS网关,以允许所有成员服务器一起用作单个单元。
各种平台可以使用该平台代理策略来支持,包括例如Qracle、Sybase、PostgreSQL、Informix、MySQL、InfiniDB、DB2、MariaDB、Percona和SQL*Server。
因此,如图2所示,所公开的实施例提供产品系统体系结构,其包括与议程服务器210相关联的传统已知功能以及经由一个或多个处理器和/或服务器实施的监督器处理模块215,其中额外的功能被添加以与和由系统体系结构支持的每个平台相关联的至少一个机载数据库服务器220通信。
额外地,后勤办公数据库服务器可以由实施和提供数据库服务器的动态可扩展异构网络的产品系统体系结构组件替换,数据库服务器提供以异步方式对远程数据库服务器上的远程任务运行的任务调度。
例如,如图2所示,远程数据库服务器230可以被部署在使分布式数据库网络异构的各种数据库服务器平台上。因此,如图2所示,MySQL数据库服务器230C可以被布置在MySQL平台上。该MySQL数据库服务器230C不仅提供异构分布式数据库结构而且使得能够连接到许多服务器,例如MySQL机载服务器230C。因此,这些MySQL机载服务器230C可以被动态地添加和从网络200移除。如下面所解释的,在一个可能的实施方案中,那些MySQL机载服务器230C(或任何其他服务器230A-D)中的每一个可以对应于位于列车或机车或被监测数据的其他车辆的机载服务器。该实施方案尤其是有用的,因为对这样的机载组件的包括和移除可能由于列车上线或关机而是必要的。
对所公开的实施例的议程服务器和其他组件的使用实现动态DDB拓扑结构的概念。该拓扑结构是动态的原因是因为某些服务器(例如,那些远程定位在列车上的)可以不可用以经由平台代理解决查询。服务器持续地上线和下线。因此,拓扑结构可以取决于每个个体查询和针对每个个体查询并且基于服务器上线和下线(在永久性和暂时性两者的基础上)而潜在地改变。
唯一要求在于远程数据库服务器230A-D具有如下数据模型,可以使该数据模型与在其他平台上部署的数据模型一致,其他平台例如Qracle、Sybase、PostgreSQL、Informix、MySQL、InfiniDB、DB2、MariaDB、Percona和SQL*Server。换言之,每个平台必须具有可以被映射到其他平台的其他组成组件或操作的组成组件或操作。对平台代理的上述使用是用于提供该功能的一个有效机制。因此,监督器处理模块215将要在远程服务器230A-D中的一个上运行的RPC发送到该远程服务器的合适的平台代理225A-D。在远程服务器230A-D中的一个上的运行之后的结果是平台代理225A-D使用基于简单套接字的和/或基于文件的客户端服务器体系结构将RPC运行的结果返回到监督器处理模块215。以这种方式,监督器处理模块215被实施为从相关联的议程服务器210接受任务并在远程数据库服务器230A-D之间协同对RPC的远程运行的监督程序处理器的动态可扩展异构网络。
根据所公开的实施例,议程服务器210可以被实施为一套关系数据库表和相关联的存储的程序并且可以被部署在上述数据库平台中的任一个上。系统200可以包括一个或多个议程服务器210。议程服务器210可以动态地被添加和从分布式数据库网络移除。
议程服务器210每一个均从可以被实施在任何RDBMS平台上的关系数据库议程实施方案获得其运行任务。
议程服务器210可以管理复发的调度任务和一次性adhoc任务两者以及数据库查询。因为议程服务器210可以被部署在关系数据库平台上,所以它们可以使用与远程数据库服务器访问相同的策略来访问。议程服务器210的实例是异构的在于它们被部署在上述数据库服务器平台中的任一个上。唯一差别在于议程服务器210的实例还维持任务运行数据。
以这种方式,所公开的系统体系结构200包括平台代理225的动态可扩展异构网络,平台代理225在(一个或多个)议程服务器210的引导下为(一个或多个)监督器处理器模块215提供平台特异性数据库客户端通信服务器。
(一个或多个)监督器处理器模块215可以被实施为在一个或多个服务器上运行的独立可执行程序指令。每个监督器处理器模块215从相关联的议程服务器210接收要在远程数据库服务器230A-D上运行的任务。监督器处理器模块215与单个议程服务器210相关联。然而,出于负载平衡和容错的目的,许多监督器处理器模块215可以与单个议程服务器210相关联。
监督器处理器模块215使用适合于其议程服务器210已经被部署在其上的数据库平台的平台代理与其相关联的议程服务器210通信。监督器处理器模块215将其远程运行的运行状态报告回到其相关联的议程服务器210。监督器处理器模块215通过轮询其相关联的议程服务器210来接收其远程任务运行分配。议程服务器210将当前运行任务分配分发给其监督器处理器模块215以及先前失败的任务运行分配。
监督器处理器模块215以一对多的方式(即,一个监督器处理器模块215对一个或多个远程数据库服务器230)协同在远程数据库服务器230之间的通信。因此,监督器处理器模块215可以在单个远程数据库服务器230上运行RPC并将该运行的结果引导到一个或多个目的服务器。因此,服务器可以被添加或从DDB系统体系结构移除,并且它们的可见性被控制以在DDB系统体系结构中选择成员服务器。这允许服务器的子集执行与彼此的数据交换并控制其数据的可见性。
考虑该可见性概念的下面示例:假设从DDB的一组十二个成员服务器收集数据并且使数据对不同组的六个DDB成员服务器可见。另外,假设可以防止原先组的十二个成员服务器与第二组的六个服务器直接交互,但是可以允许第三组的服务器与先前组的服务器中的两者交互。
每个运行可以包含任何数量的源服务器以及零个或多个目的服务器,其中从源服务器被提取并被转换的数据被转移到在运行周期期间指定的所有目的服务器。该运行方案类似于连接机AlphaBeta操作,其中Alpha操作在这种情况下是任意数量的源服务器上的存储的程序,并且Beta操作是Alpha运行的结果被传播到所有目的服务器的转移。参见W.DanielHillis的TheConnectionMachine第62页。
因此,源服务器运行和目的服务器数据转移可以是不同的,其中每个运行在每个运行周期中有效地改变DDB系统体系结构的拓扑结构。因此,提供以异步方式在远程数据库服务器上对远程任务运行的任务调度的数据库服务器230的数量和议程服务器210的数量两者是动态可扩展的。
议程服务器210每一个可以均以异步方式彼此独立地工作。该异步运行策略是直接结果并且可能仅仅由于所公开的实施例消除了并入在现有技术内的传统上使用的两阶段提交策略的需要。
结合时空数据组织方案的该动态转移配置使得整个计算机网络实施方案操作为大规模并行分布式n维球面关系数据库。此外,系统体系结构200还得到从相关联的议程服务器210接受任务并经由平台代理225在远程数据库服务器230之间协同对RPC的远程运行的监督器处理器模块215的动态可扩展异构网络。
因此,通过使用平台代理225,系统200能够为各种监督器处理器模块215提供平台特异性数据库客户端通信服务。例如,Oracle平台代理225D执行Oracle客户端通信,而MySQL平台代理225C执行MySQL客户端通信。
平台代理225是轻量级对等代理,其监听针对从监督器处理器模块215发送的以被中继到它们在由监督器处理器模块215指定的地址处服务的数据库平台的RPC的预分配的TCP/IP地址和端口。RPC运行的结果由平台代理在运行完成后被中继回到监督器处理器模块215。
监督器处理器模块215之后将接收到的结果发送到平台代理连同将目的地址发送到服务目的服务器的平台代理。
最终,在源数据库服务器上运行数据库查询,并且查询的结果被中继到任何数量的目的数据库服务器。文件代理将命令文件发送到源数据库服务器以供运行并将文件中继回到监督器处理器模块215。
当组合时,上述功能实现对所有远程数据库平台、代理服务器、监督器处理器模块以及平台代理进行编目录的能力。分布式数据库目录通过描述分布式数据库的拓扑结构、存储的程序、数据库服务器地址和平台类型、代理地址和平台类型、服务器登录证书、平台代理地址和平台类型以及分布式数据库内的每个实体的状态来增加任何中心关系数据库目录。
服务器对关系目录的扩展可以维持在DDB系统体系结构内的每个个体成员服务器内存储的数据的边界维数(数据可以被系统地聚类在一起)。
以这种方式,所公开的实施例可以提供分布式数据库系统体系结构,其在硬件故障方面是容错的并且在数据完整性方面也是容错的。另外,因为数据完整性使用时空索引策略来维持,所以有利地消除了传统上在DDB系统体系结构实施方案中采用的两阶段提交策略的需要。
因此,应当理解,个体议程服务器210可以通过连续轮询其相关联的RDBMS使用针对该RDBMS的合适的平台代理(在第三段中描述了平台代理)来接收其任务。
任务运行的表述可以以两端、左手端(LHS)源服务器和右手端(RHS)目的服务器列表的形式。因此,在一个实施方案中,议程服务器可以通过使用针对每个服务器的合适的平台代理执行作为所有LHS服务器上的存储的程序运行的RPC来开始运行过程。平台代理可以之后将来自每个LHS服务器的运行结果传递回到议程服务器,其之后使用针对每个RHS目的服务器的合适的平台代理再次执行每个RHS服务器上的RPC存储的程序运行。议程服务器可以之后将运行的成功或失败状态报告回到议程数据库并且随后将该议程数据库轮询到另一要运行的任务。
以这种方式,失败的运行可以在新运行时重复地尝试直到所有LHS和RHS运行成功。结果,议程服务器不需要维持针对运行任务的任何错误状态数据,因为该信息被提供在总体系统体系结构的议程数据库中。
如以上简单地讨论的,在一个可能的实施方案中,远程服务器可以与被定位在列车或机车或被监控的其他车辆上的机载服务器对应。因此,应当理解所公开的实施例可以管理由列车上的列车控制和操作员辅助系统组件生成的或耦合到列车上的列车控制和操作员辅助系统组件的数据,列车上的列车控制和操作员辅助系统组件包括例如积极列车控制(PTC)系统模块,其可以包括提供速度显示的硬件、软件、固件或其特定组合、列车上的至少一个机车上的速度控制单元、动态地通知速度控制单元改变轨道或信号状况的组件、用于强制执行沿着列车路线的固定速度限制的机载导航系统和轨道配置数据库、被配置为通知信令设备列车的存在从而与被配置为直接将移动授权分发给列车的中心化PTC系统通信的双向数据通信链路。
积极列车控制(PTC)是指被设计为防止列车与列车的碰撞、超速脱轨、由于列车的未授权的入侵而对在其授权界限内工作的铁路工人的伤亡或损伤以及防止在错误的位置中通过向左切换的列车移动的传统上已知的技术。尽管PTC系统基于自动化的水平和它们实施的功能、利用的系统体系结构以及它们能够呈现的列车控制的程度而在复杂度和精密度上广泛地变化,但是PTC系统一致的地方在于它们是基于处理器的信号和列车控制系统(参见联邦法规(CFR)部分236子部分H的题目49代码),其利用计算机和无线电数据链路两者来实现PTC功能,例如监控和控制列车移动以提供提高的安全性。
更具体地,PTC要求列车接收关于其位置以及在哪里允许其安全地行进(即,“移动授权”)的信息。列车上的机载设备强制执行这些移动授权由此防止不安全的移动。PTC系统使用全球定位系统(GPS)导航来跟踪列车移动。因此,PTC旨在提高列车分离或碰撞避免、线路速度强制执行、暂时速度限制并确保路边的铁路工人安全性。
图3示出了可以用于提供或包括机载列车设备的设备的示例,该机载列车设备包括在所公开的实施例的DDB系统体系结构中使用的机载服务器。因此,为了执行PTC操作,被提供用于执行机载服务器的操作的列车智能可以包括(但不限于)图3中示出的设备。无论实施方案如何,列车智能300可以包括可以耦合到存储器310(被实施为一个或多个传统上已知的且商用的可编程和/或只读或可再编程存储器设备)的一个或多个计算机处理单元305。存储器310可以用于存储与控制软件315以及任选地操作系统或环境320两者相关联的计算机指令或实施控制软件315以及任选地操作系统或环境320两者的计算机指令,操作系统或环境320用于执行包含在一个或多个计算机应用、软件代码包和/或各种调用的或包含的子例程中的操作。这些指令可以用于执行在以上描述的方法和确定中包括的指令。
此外,列车智能还可以包括一个或多个通信端口325,其实现根据所公开的实施例对消息和信令(例如,从路旁应答器接收到的信令)、数据和控制指令的接收和发送两者。另外,列车智能300可以包括人机接口330,其可以包括例如显示器,显示器使得操作员能够接收和审查由列车智能300利用或产生的数据、将指令或输入引导提供给控制软件315、访问在存储器310中包含的数据等。结果,人机接口330还可以包括其他传统上已知的特征,包括键盘、鼠标、触控板、各种按钮和开关等。
各种益处可以通过分析和访问由于使用PTC系统而生成的数据来实现;例如,通过PTC系统获得和分析的信息可以使得机载和非机载系统能够控制列车和组成机车增加燃油效率并执行机车诊断以改善维护。因为由PTC系统利用的数据被无线发送,所以其他应用也可以使用该数据。
因此,通过结合本文中公开的DDB系统体系结构和方法使用和访问图3中示出的设备来提供另外的实用性。
应当理解,在下面的描述中阐述在各元件之间的各种连接;然而,这些连接总体上可以是直接的或间接的、永久性的或暂时性的以及专用的或共享的,除非另行明确指示,并且本说明书不旨在在该方面为限制性的。
尽管已经结合上述具体实施例描述了本发明,但是明显的,许多备选、修改和变型对于本领域技术人员而言将是显而易见的。因此,如以上阐述的本发明的各种实施例旨在为说明性的而非限制性的。可以在不脱离本发明的精神和范围的情况下进行各种改变。
额外地,应当理解,结合各种发明的实施例的各种描述的部件描述的功能可以以使得本发明的体系结构在某种程度上与本文中明确公开的体系结构稍有不同的方式与彼此组合或分开。此外,应当理解,除非明确指示,不存在对以图示的顺序执行方法操作的基本要求;因此,本领域普通技术人员将意识到一些操作可以以一个或多个备选顺序和/或同时地来执行。
本发明的各种部件可以由各种不同的实体或个体、在各种不同的实体或个体的控制下或代表各种不同的实体或个体以备选组合来提供。
另外,应当理解,根据本发明的至少一个实施例,系统部件可以一起或单独地被实施,并且可以存在所公开的系统部件中的任何或全部中的一个或多个。另外,系统部件可以是专用系统,或者这样的功能可以被实施为经由软件实施方案被实施在通用设备上的虚拟系统。
因此,对于本领域技术人员将显而易见的是,所描述的说明性实施例仅仅是示例并且可以在如所附权利要求书限定的本发明的范围内进行各种修改。
Claims (21)
1.一种用于收集和传播数据的动态可扩展分布式异构平台关系数据库体系结构,所述数据库系统体系结构包括:
至少一个议程服务器,其从在RDBMS平台上实施的关系数据库议程获得运行任务,其中所述至少一个议程服务器管理复发的调度任务和一次性adhoc任务两者以及数据库查询;
在至少一个服务器上运行的至少一个监督器处理模块,所述监督器处理模块从至少一个相关联的议程服务器接收任务以供运行;
多个数据库服务器,其存储数据并在所述至少一个监督器处理模块的引导下执行操作;以及
多个平台代理,平台代理中的每一个均在所述至少一个议程服务器的引导下为所述至少一个监督器处理模块提供平台特异性数据库客户端通信服务,
其中,所述至少一个监督器处理模块将要运行在所述多个数据库服务器中的一个或多个上的远程程序调用发送到那些数据库服务器的对应的平台代理,其中,那些平台代理将所述远程程序调用的运行的结果传递回到所述监督器处理模块。
2.根据权利要求1所述的数据库系统体系结构,其中,所述系统体系结构在构成分布式数据库系统的数据库服务器的数目和分布式数据库系统的拓扑结构的方面上是可动态扩展的。
3.根据权利要求1所述的数据库系统体系结构,其中,所存储的数据在所述多个数据库服务器的多数据库服务器上被复制。
4.根据权利要求1所述的数据库系统体系结构,其中,使用时空索引来维护数据完整性以在时间和空间内的位置方面存储和操纵在所述多个数据库服务器中存储的数据,其中,所存储的数据表示在指定时间期间在指定位置处的数据是什么。
5.根据权利要求1所述的数据库系统体系结构,其中,运行拓扑结构由所述至少一个议程服务器确定,所述至少一个议程服务器安排在所述多个数据库服务器中的至少一个上的查询运行以利用每个查询运行创建不同的运行拓扑结构。
6.根据权利要求1所述的数据库系统体系结构,其中,时空数据存储方案被使用,所述时空数据存储方案利用包括对象标识符、时间、三维空间坐标对以及数据被输入到所述数据库系统结构中的最终时间说明的五维索引。
7.根据权利要求6所述的数据库系统体系结构,其中,所述时空数据存储方案基于所存储的数据的空间特性来创建径向基存储方案。
8.根据权利要求7所述的数据库系统体系结构,其中,所述多个数据库服务器具有创建自然数据复制的重叠空间存储,这与网格数据复制的不同在于被复制的数据不被分配给具体服务器,而是被分配给所述数据库系统体系结构内的空间。
9.根据权利要求1所述的数据库系统体系结构,其中,所述多个平台代理中的每一个与以下中的一个相关联:Qracle、Sybase、PostgreSQL、Informix、MySQL、InfiniDB、DB2、MariaDB、Percona和SQL*服务器平台。
10.根据权利要求1所述的数据库系统体系结构,其中,至少一个数据库服务器中的至少一个被提供在列车上并收集由列车上的列车控制和操作员辅助系统生成的数据。
11.一种用于提供用于收集和传播数据的动态可扩展分布式异构平台关系数据库体系结构的方法,所述数据库系统体系结构包括至少一个议程服务器、在至少一个服务器上运行的至少一个监督器处理模块、多个数据库服务器以及多个平台代理,所述方法包括:
所述至少一个议程服务器从在RDBMS平台上实施的关系数据库议程获得运行任务,其中,所述至少一个议程服务器管理复发的调度任务和一次性adhoc任务两者以及数据库查询;
所述至少一个监督器处理模块从至少一个相关联的议程服务器接收任务以供运行;
所述多个数据库服务器存储数据并在所述至少一个监督器处理模块的引导下执行操作,其中每一个在所述至少一个议程服务器的引导下为所述至少一个监督器处理模块提供平台特异性数据库客户端通信服务,
其中,所述至少一个监督器处理模块将要运行在所述多个数据库服务器中的一个或多个上的远程程序调用发送到那些数据库服务器的对应的平台代理,其中,那些平台代理将所述远程程序调用的运行的结果传递回到所述监督器处理模块。
12.根据权利要求11所述的方法,其中,所述系统体系结构在构成分布式数据库系统的数据库服务器的数目和分布式数据库系统的拓扑结构的方面上是可动态扩展的。
13.根据权利要求11所述的方法,其中,所存储的数据在所述多个数据库服务器的多数据库服务器被复制。
14.根据权利要求11所述的方法,其中,使用时空索引来维护数据完整性以在时间和空间内的位置方面存储和操纵在所述多个数据库服务器中存储的数据,其中,所存储的数据表示在指定时间期间在指定位置处的数据是什么。
15.根据权利要求11所述的方法,其中运行拓扑结构由所述至少一个议程服务器确定,所述至少一个议程服务器安排在所述多个数据库服务器中的至少一个上的查询运行以利用每个查询运行创建不同的运行拓扑结构。
16.根据权利要求11所述的方法,其中,时空数据存储方案被使用,所述时空数据存储方案利用包括对象标识符、时间、三维空间坐标对以及数据被输入到所述数据库系统服务器中的最终时间说明的五维索引。
17.根据权利要求16所述的方法,其中,所述时空数据存储方案基于所存储的数据的空间特性来创建径向基存储方案。
18.根据权利要求17所述的方法,其中,所述多个数据库服务器具有创建自然数据复制的重叠空间存储,这与网格数据复制的不同在于被复制的数据不被分配给具体服务器,而是被分配给所述数据库系统体系结构内的空间。
19.根据权利要求11所述的方法,其中,所述多个平台代理中的每一个与以下中的一个相关联:Qracle、Sybase、PostgreSQL、Informix、MySQL、InfiniDB、DB2、MariaDB、Percona和SQL*服务器平台。
20.根据权利要求11所述的方法,其中,至少一个数据库服务器中的至少一个被提供在列车上并收集由列车上的列车控制和操作员辅助系统生成的数据。
21.根据权利要求11所述的方法,还包括:在没有系统中断的情况下添加或移除一个或多个数据库服务器,其中所述系统体系结构的拓扑结构根据添加或删减而动态地改变。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2013/065672 WO2015057243A1 (en) | 2013-10-18 | 2013-10-18 | Dynamically scalable distributed heterogenous platform relational database |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105637499A true CN105637499A (zh) | 2016-06-01 |
CN105637499B CN105637499B (zh) | 2019-02-26 |
Family
ID=52828522
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380080277.3A Expired - Fee Related CN105637499B (zh) | 2013-10-18 | 2013-10-18 | 动态可扩展分布式异构平台关系型的数据库系统装置 |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP3058475A4 (zh) |
CN (1) | CN105637499B (zh) |
AU (1) | AU2013403300B2 (zh) |
MX (1) | MX368512B (zh) |
RU (1) | RU2639940C2 (zh) |
WO (1) | WO2015057243A1 (zh) |
ZA (1) | ZA201601851B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110288309A (zh) * | 2019-05-22 | 2019-09-27 | 平安科技(深圳)有限公司 | 数据交互方法、装置、系统、计算机设备以及存储介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9438705B2 (en) | 2013-12-16 | 2016-09-06 | International Business Machines Corporation | Communication and message-efficient protocol for computing the intersection between different sets of data |
WO2018170276A2 (en) * | 2017-03-15 | 2018-09-20 | Fauna, Inc. | Methods and systems for a database |
US11787453B2 (en) | 2019-09-05 | 2023-10-17 | Progress Rail Services Corporation | Maintenance of distributed train control systems using machine learning |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5596744A (en) * | 1993-05-20 | 1997-01-21 | Hughes Aircraft Company | Apparatus and method for providing users with transparent integrated access to heterogeneous database management systems |
WO1998038561A2 (en) * | 1997-02-27 | 1998-09-03 | Telcontar | A system and method of optimizing database queries in two or more dimensions |
US20040030739A1 (en) * | 2002-08-06 | 2004-02-12 | Homayoun Yousefi'zadeh | Database remote replication for multi-tier computer systems by homayoun yousefi'zadeh |
US20040215599A1 (en) * | 2001-07-06 | 2004-10-28 | Eric Apps | Method and system for the visual presentation of data mining models |
US7303132B2 (en) * | 1999-06-07 | 2007-12-04 | Meterologic Instruments, Inc. | X-radiation scanning system having an automatic object identification and attribute information acquisition and linking mechanism integrated therein |
CN102073540A (zh) * | 2010-12-15 | 2011-05-25 | 北京新媒传信科技有限公司 | 分布式事务提交方法和装置 |
US20110254664A1 (en) * | 2010-04-14 | 2011-10-20 | Mojix, Inc. | Systems and methods for detecting patterns in spatio-temporal data collected using an rfid system |
US8271430B2 (en) * | 2008-06-02 | 2012-09-18 | The Boeing Company | Methods and systems for metadata driven data capture for a temporal data warehouse |
US20120246190A1 (en) * | 2011-03-23 | 2012-09-27 | Manik Surtani | System and method for performing object relational mapping for a data grid |
CN103064875A (zh) * | 2012-10-30 | 2013-04-24 | 中国标准化研究院 | 一种服务化空间数据分布式查询方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6993534B2 (en) * | 2002-05-08 | 2006-01-31 | International Business Machines Corporation | Data store for knowledge-based data mining system |
WO2010037065A2 (en) * | 2008-09-26 | 2010-04-01 | Cmi Corporate Marketing D/B/A Prelude Innovations, Inc. | Scalable relational database replication |
RU2591169C2 (ru) * | 2010-03-18 | 2016-07-10 | НУОДиБи ИНК. | Система управления базой данных |
-
2013
- 2013-10-18 MX MX2016004354A patent/MX368512B/es active IP Right Grant
- 2013-10-18 CN CN201380080277.3A patent/CN105637499B/zh not_active Expired - Fee Related
- 2013-10-18 EP EP13895720.4A patent/EP3058475A4/en not_active Ceased
- 2013-10-18 WO PCT/US2013/065672 patent/WO2015057243A1/en active Application Filing
- 2013-10-18 AU AU2013403300A patent/AU2013403300B2/en not_active Ceased
- 2013-10-18 RU RU2016109473A patent/RU2639940C2/ru not_active IP Right Cessation
-
2016
- 2016-03-16 ZA ZA2016/01851A patent/ZA201601851B/en unknown
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5596744A (en) * | 1993-05-20 | 1997-01-21 | Hughes Aircraft Company | Apparatus and method for providing users with transparent integrated access to heterogeneous database management systems |
WO1998038561A2 (en) * | 1997-02-27 | 1998-09-03 | Telcontar | A system and method of optimizing database queries in two or more dimensions |
US7303132B2 (en) * | 1999-06-07 | 2007-12-04 | Meterologic Instruments, Inc. | X-radiation scanning system having an automatic object identification and attribute information acquisition and linking mechanism integrated therein |
US20040215599A1 (en) * | 2001-07-06 | 2004-10-28 | Eric Apps | Method and system for the visual presentation of data mining models |
US20040030739A1 (en) * | 2002-08-06 | 2004-02-12 | Homayoun Yousefi'zadeh | Database remote replication for multi-tier computer systems by homayoun yousefi'zadeh |
US8271430B2 (en) * | 2008-06-02 | 2012-09-18 | The Boeing Company | Methods and systems for metadata driven data capture for a temporal data warehouse |
US20110254664A1 (en) * | 2010-04-14 | 2011-10-20 | Mojix, Inc. | Systems and methods for detecting patterns in spatio-temporal data collected using an rfid system |
CN102073540A (zh) * | 2010-12-15 | 2011-05-25 | 北京新媒传信科技有限公司 | 分布式事务提交方法和装置 |
US20120246190A1 (en) * | 2011-03-23 | 2012-09-27 | Manik Surtani | System and method for performing object relational mapping for a data grid |
CN103064875A (zh) * | 2012-10-30 | 2013-04-24 | 中国标准化研究院 | 一种服务化空间数据分布式查询方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110288309A (zh) * | 2019-05-22 | 2019-09-27 | 平安科技(深圳)有限公司 | 数据交互方法、装置、系统、计算机设备以及存储介质 |
CN110288309B (zh) * | 2019-05-22 | 2023-11-28 | 平安科技(深圳)有限公司 | 数据交互方法、装置、系统、计算机设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3058475A4 (en) | 2017-05-31 |
AU2013403300A1 (en) | 2016-04-14 |
ZA201601851B (en) | 2017-05-31 |
MX2016004354A (es) | 2016-10-13 |
CN105637499B (zh) | 2019-02-26 |
RU2016109473A (ru) | 2017-11-23 |
WO2015057243A1 (en) | 2015-04-23 |
AU2013403300B2 (en) | 2017-07-13 |
RU2639940C2 (ru) | 2017-12-25 |
EP3058475A1 (en) | 2016-08-24 |
MX368512B (es) | 2019-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10210197B2 (en) | Dynamically scalable distributed heterogenous platform relational database | |
CN106502266B (zh) | 一种多机协同作业指挥控制系统 | |
CN101378334B (zh) | 基于双网冗余通用网络模型的通讯方法 | |
CN105637499A (zh) | 动态可扩展分布式异构平台关系数据库 | |
CN111885550B (zh) | 一种分布式自主移动机器人调度系统 | |
CN101216926A (zh) | 一种城市应急指挥作业系统及其实现方法 | |
Alam et al. | tnote: A social network of vehicles under internet of things | |
CN111400734A (zh) | 一种基于区块链的智能物流系统 | |
CN102073937A (zh) | 一种枢纽机场中转管理系统及方法 | |
CN104657467B (zh) | 一种实时内存数据库的带订阅/发布的数据推送框架 | |
CN108860223B (zh) | 一种数据处理系统及方法 | |
CN102103657A (zh) | 虚拟世界系统及实现虚拟世界的方法 | |
CN106796537A (zh) | 计算集群中的分布式组件 | |
CN108791364A (zh) | 一种调度集中控制系统、方法及其应用服务器 | |
CN104660448A (zh) | 分布式多层多域体系Multi-Agent协同故障诊断方法 | |
CN112383878A (zh) | 一种协同计算方法及电子装置 | |
CN110213359A (zh) | 一种基于d2d的车联网组网数据推送系统和方法 | |
CN108600235A (zh) | 一种用于进行数据交换的接口设备及方法 | |
CN102663959B (zh) | 基于地图标号处理的综合态势直观展示系统及实现方法 | |
CN110046851B (zh) | 基于Multi-Paxos的无人车物流任务分配方法 | |
CN106817246A (zh) | 配电网巡视处理方法及装置 | |
CN104915246A (zh) | 一种基于工作流的高可配分布式实时计算引擎及控制方法 | |
CN102664404B (zh) | 基于网格中间件的异步迭代潮流计算系统 | |
CN111614756B (zh) | 一种大规模网联车辆协同服务系统 | |
CN106850326A (zh) | 一种动车组司机操控信息实时分析方法及其系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190226 Termination date: 20201018 |