一种面向移动rfid的轻量级数据同步架构的制作方法

文档序号:7946418阅读:192来源:国知局
专利名称:一种面向移动rfid的轻量级数据同步架构的制作方法
技术领域
本发明属于RFID技术领域,特别是提供一种面向移动RFID的轻量级RFID数 据同步框架。
背景技术
RFID(Radio Frequency Identification)Mobile middleware由于它的具有竞争力的商 业价值,而颇受关注。由于可以自动识别和收集信息,mobile RFID systems广泛应用于 各种领域。无线通讯技术的快速发展,促使移动RFID信息服务的功能性更加多样化,并 且使更多移动计算应用成为现实。 随着RFID技术广泛应用于各个领域, 一系列的移动RFID信息服务系统,比如 仓库管理系统、医疗信息系统及移动超市协助系统等,已经被应用到对应的领域。
移动RFID设备本身的限制,比如低带宽、低电量及网络不稳定性,导致要设计 高效可靠的移动计算方案,面临着很多的问题。其中最关键的就是各个移动客户端的数 据更新事务和数据广播事务的高效性、 一致性问题。而移动网络的带宽的限制和网络不 稳定性,使该关键问题更加复杂化。 更新事务并发修改数据,会导致移动客户端获得不一致性数据。更新事务和数 据广播如果能交叉执行,可以使数据广播更加高效、及时。但这些都必须要依赖并发控 制协议。而传统的并发控制协议,比如两阶段封锁、乐观锁或矩阵锁,并不能应用到该 系统中,因为他们要求维护较多锁及较繁琐的检测数据冲突机制。 近来,移动计算系统在面对数据广播和数据更新的并发控制策略并没有得到很 大的突破。而传统的并发控制策略,由于其高负载,并不能应用到移动RFID系统中。比 如二元加锁(two phase locking),广播事务或者更新事务必须要先获得某个数据项的锁, 才能对该数据项进行操作。如附图1所示的二元加锁(two phase locking),当更新事务1 获得了 data item2和data item3的锁后,正进行数据更新的时候,广播事务1因为申请data item2的锁而被挂起,来等待UTl来释放dataitem2锁。从而导致广播事务的延迟,降低 移动客户端的交互性。因此这种繁琐的申请锁和锁冲突检测并不适合移动RFID系统。
而使用控制矩阵(control matrix),可以使客户端维护一份数据拷贝,对该数据的 操作,记录在一个矩阵中,可以通过检测矩阵来维护数据的一致性。移动客户端向服务 端请求数据的时候,服务端会将请求的多个数据项及对应的控制矩阵,发送给移动客户 端;移动客户端可以通过检查该矩阵来判断,在其查询该数据的时候,是否有其他移动 客户端对该数据进行修改。当然移动客户端也可以对当前拷贝的数据进行操作,并且将 相关操作记录到该矩阵中,最后将该数据及对应的矩阵提交给服务端。
但是使用矩阵控制,会导致下面问题 客户端与服务端对某些数据项都必须维护一个一致的矩阵,从而导致数据交互 比较繁琐;每次数据交互都必须使用当前矩阵来进行冲突检测,从而导致冲突检查的频 率比较高;当数据量比较大或数据单位比较小的时候,该矩阵就比较庞大,从而占据每
4次通讯较多带宽,从而导致带宽利用率降低。 现有技术所存在的不足,其原因主要在于数据更新和数据广播不一致。当多个 移动客户端并发修改服务端的某些数据项时,如果没有任何并发修改策略加以控制,会 导致脏数据的产生。当服务端对某些数据项正在进行广播的时候,如果某些移动客户端 对这些数据项进行部分更新操作,可能会导致部分移动客户端获得不一致的数据。故而 需要研发一套行之有效的机制来克服该问题。

发明内容
本发明的目的在于解决现有技术所存在的数据更新事务和数据广播事务不一 致,效率较低的问题,提供一种面向移动RFID的轻量级数据同步架构
为了实现上述发明目的,采用的技术方案如下 —种面向移动RFID的轻量级数据同步架构,包括服务端同步逻辑模块、事务池 模块、客户端同步逻辑模块、数据缓冲模块,所述服务端同步逻辑模块和事务池模块相 互连接并设置在移动RFID的服务端,所述客户端同步逻辑模块和数据缓冲模块相互连接 并设置在移动RFID的客户端,所述服务端同步逻辑模块和客户端同步逻辑模块通过通讯 逻辑模块连接。 本发明的技术方案包括如下几个要点 1、数据项划分为共有数据、共享数据以及私有数据服务端的所有数据当且仅 当属于一种数据类型;公有数据权限各个客户端只有查询权限,而服务端有所有操作 的权限;私有数据权限服务端只有查询权限,而该客户端端有所有操作的权限;共享 数据权限所有客户端都可以进行添加、删除、修改及查询操作。不同类型的数据采用 不同的同步策略。 2、事务格式化。在服务端维护一个事务池,事务池负责解析、封装、存储各个 移动客户端提交的事务,事务池的任务包括提供一个唯一的事务标识给每个事务,解 析标识事务操作的类型(添加、删除、修改),解析标识事务所操作的数据类型(公有、共 享、私有),封装该事务操作的数据内容,和标识该事务是否被合理调度,以及存储不同 事务操作类型的事务到更加具体的事务池进行存储。 3、通过事务簇cluster的划分,维护每个事务cluster的一致性,减轻检测事务冲 突集的负载。服务端将指定事务cluster周期时间内收集到的事务归类为一 cluster,并对 这些事务检测事务冲突集,如果有冲突就对冲突数据进行重新广播。
4、数据同步。通过指定参数实现同步逻辑初始化后,移动RFID终端开始采集 RFID标签数据并生成相关的事务,提交到服务端;服务端通过事务池封装、解析、存储 事务,并针对不同类型的数据采用不同的事务调度算法。事务调度原则为优先处理优先 级高的事务,如果优先级一样,就优先处理事务标识小的事务。事务执行后,将数据库 的结果实时反应各个移动RFID终端进行反馈。 5、冲突检测与解决。由于公开数据池的事务是客户端查询服务端的公开数据, 私有数据池是服务端查询各个客户端的私有是数据,因此在这两个数据池中的事务不存 在应用数据同步而导致冲突。而提供了共享数据池中的事务冲突机制。
本发明提出了移动RFID中的轻量级数据同步的设计和部署方案数据项划分为
5公有数据、共享数据及私有数据;对不同的数据类型采用不同的同步策略;维护了各种 数据类型对应的读事务队列和更新事务队列,从而使这些事务的调度都是序列化的,可 以有效地控制数据并发修改和数据重播。将事务按cluster划分,只维护每个事务cluster 一致性,从而降低检测事务冲突负载,增强系统的灵活性,并且没有使用任何锁机制来 增强系统的交互性。


图1为现有二元加锁(two phase locking)的结构示意图; 图2本发明的框架逻辑示意图; 图3为事务池(Transaction Pool)数据结构示意图 图4为本发明的数据同步处理模型示意图; 图5本发明的数据冲突检测与解决机制结构示意图; 图6为本发明的事务调度算法流程示意图; 图7为本发明的事务冲突检测算法流程示意图; 图8为本发明的交互性能分析示意图; 图9本发明的数据吞吐量性能分析示意图。
具体实施例方式
下面结合附图对本发明的具体实施做进一步的详细描述。 附图2展示了面向移动RFID的轻量级数据同步框架,该框架包括的模块有服 务端同步逻辑1 (Server Sync Logic),事务池2(Transaction Pool),客户端同步逻辑3(Client Sync Logic),数据缓冲4(Data Buffer)。
每个模块具体如下 1、服务端同步逻辑(Server Sync Logic)负责响应各个移动客户端的事务请求及协 调事务调度。 服务端同步逻辑的主要模块包括同步管理器ll(SyncManager)、同步策略 12(Sync Strategy)及同步调度器13(Sync Scheduler)。 同步管理器(Sync Manager)负责发布同步策略(Sync Strategy)中各个参数的配置 接口及同步调度器(Sync Scheduler)的功能API。 同步策略定义了服务端同步策略的模型数据类型包括公有(PUBLIC)、共享 (SHARE)及私有(PRIVATE),服务端的所有数据当且仅当属于一种数据类型;公有数据 权限各个客户端只有查询权限,而服务端有所有操作的权限;私有数据权限服务端 只有查询权限,而该客户端端有所有操作的权限;共享数据权限所有客户端都可以进 行添加、删除、修改及查询操作。事务集阀值(Transaction Cluster Threshold, TCT)表示服务端将事务归为一 cluster 的周期,单位是毫米ms,比如是1000ms,则将服务端1000ms内收到的事务归类为一 cluster ;冲突检测频率(Conflict Detection Frequency, CDF)表示服务端调度冲突检测 (Conflict Detection)的频率,单位是毫米ms ;读事务频率(Read Transaction Frequency, RTF)表示服务端调度读事务(Read Transaction)的频率,单位是毫米ms ;更新事务频
6率(Update Transaction Frequency, UTF)表示服务端调度Update Transaction的频率, 单位是毫米ms。同步调度器(Sync Scheduler)根据同步策略设置的参数调度对应的任 务冲突检测任务(Conflict Detection Task)每隔TCT就将该周期收到的所有事务归为一 集群(cluster),并只对这些事务检测事务冲突集,如果有冲突就对冲突数据进行重新广 播;事务调度原则为优先处理优先级高的事务,如果优先级一样,就优先处理事务标识 (Transaction Identifier, TID)小的事务;根据上面事务调度原则,更新事务任务(Update Transaction Task)和读事务任务(Read Transaction Task)负责循环调度对应周期内的所有事 务。 2、事务池(Transaction Pool)负责解析、封装、存储各个移动客户端的事务。
事务池负责解析、封装、存储各个移动客户端的事务。事务池主要模块包括事 务池管理器(Transaction Pool Manager)、公有数据池(Public Data Pool)、共享数据池(Share Data Pool)及私有数据池(Private Data Pool)。 事务池管理器主要负责为客户端的事务请求提供一个唯一的事务标识(TID), 并且解析其数据类型和操作类型(Action Type),接着封装到对应事务池中;移动客户端 可以对共享数据进行添加、删除、修改及查询操作,因此定义更新事务包括添加、删 除及修改这三种类型;所以共享数据池(Share Data Pool)包括的模块有读事务池(Read Transaction Pool)和更新事务池(Update Transaction Pool);更新事务池的结构如图3所示, 并且所有事务池的记录结构是一样的;客户端对服务端的公有数据只有查询的权限,因
此公有数据池只包括模块读事务池;同理,服务端对客户端的私有数据只有查询的权
限,因此公有数据池只包括模块读事务池。 3、客户端同步逻辑(Client Sync Logic)负责定义客户端的同步策略,维护客户端 事务一致性。 客户端同步逻辑包括的模块有同步管理器(SyncManager)、同步策略(Sync Strategy)及同步协议(Sync Protocol)。同步管理器负责发布同步策略中各个参数的配置 接口及同步协议的扩充。同步策略定义了客户端同步策略,比如数据类型、事务优先级 及事务原子操作等。同步协议(Sync Protocol)。同步管理器负责发布同步策略中各个参 数的配置接口及同步为该客户端提供与其他各个移动客户端进行数据同步的协议,包括 SyncXML 、 HotSync、 Intellisync 。 4、数据缓冲解析、存储客户端数据,并封装事务提交给服务端。
数据缓冲主要负责存储移动客户端向服务端请求的各个事务,然后由客户端通 信模块(Client Communication Logic)将这些事务提交给服务端;另外存储服务端广播的数 据及对客户端的事务请求。数据缓冲包括的模块有缓冲管理器(Buffer Manager)、公有数 据缓冲(Public Data Buffer)、共享数据缓冲(Share Data Buffer)及私有数据缓冲(Private Data Buffer)。缓冲管理器解析各种数据类型,并将该数据存储到对应的缓冲中;同时也发布 对各个数据缓冲操作的API。公有数据缓冲、共享数据缓冲及私有数据缓冲分别存储对 应数据类型的数据。 附图3展示了面向移动RFID的轻量级数据同步框架中,服务端维护的事务池 内部的结构。事务池负责解析、封装、存储各个移动客户端的事务。事务池主要模 块包括事务池管理器(Transaction Pool Manager)、公有数据池(Public Data Pool)、共享
7数据池(Share Data Pool)及私有数据池(Private Data Pool)。 事务池管理器(Transaction Pool Manager)主要负责为客户端的事务请求提供一个唯一的TID,并且解析其数据类 型和操作类型(Action Type),接着封装到对应事务池(Transaction Pool)中;移动客户端 可以对共享数据进行添加、删除、修改及查询操作,因此定义更新事务包括添加、删 除及修改这三种类型;所以共享数据池(Share Data Pool)包括的模块有读事务池(Read TransactionPool)和更新事务池(Update Transaction Pool);所有Transaction Pool的记录结构 是一样的。TID表示服务端为事务分配的唯一标识号;AOID表示原子事务执行的标识; TCID表示该事务所处的事务cluster的标识;Is Schuduled表示该事务是否已经被调度;Is Consistent表示该事务操作在事务cluster中体现一致性;Data Type表示事务操作的数据类 型;Action Type表示事务的操作类型;Data Area表示事务操作的数据域。
附图4展示了面向移动RFID的轻量级数据同步框架的RFID数据同步处理流 程。该模型需要满足以下条件事务冲突的概率比较低,该情况广泛出现在移动RFID 系统,比如仓储管理系统;所有移动客户端的数据请求是无序的,即客户端接收数据是 没有任何顺序关系的;所有事务操作是对服务端的数据库;只保证事务集(Transaction Cluster)内所有事务的一致性。
本发明的具体工作流程具体如下 a、同步逻辑的初始化。服务端同步逻辑(Server Sync Logic)配置同步策略的 各个参数;定义服务端数据库中所有数据的类型;初始化事务池和启动服务端通信逻辑 (Server Communication Logic)。 客户端同步逻辑(Client Sync Logic)初始化同步策略(Sync Strategy)和启动相关同步协议(Sync Protocol);初始化数据缓冲(Data Buffer)和启动客户 端通信逻辑(Client Communication Logic)。 b、采集数据和事务生成。嵌入式RFID中间件(Embedded RFID Middleware)在 手持RFID阅读器中负责采集数据。应用业务逻辑(Application Business Logic)对采集的 标签数据,根据响应的业务逻辑Business logic生成事务,提交给客户端同步逻辑(Client Sync Logic)。 C、提交事务。客户端同步逻辑将收到的事务,根据本地同步策略,封装成规范 的移动事务,存储到数据缓冲中;并且通过通信逻辑将该移动事务提交到服务端的事务 池中。事务池将对该移动事务进行解析、封装及存储。 d、调度事务。服务端同步逻辑将启动三个任务更新事务任务(Update Transaction Task)、读事务任务(Read Transaction Task)及冲突检测任务(Conflict Detection Task)。更新事务任务和读事务任务按上述的事务调度原则,调度当前的所有事务。冲突 检测任务负责检测当前事务集的冲突集。 e、执行事务。服务端同步逻辑(Server Sync Logic)将调度的事务,执行到数据 库(Database)中。如果异常情况,将采取恰当的措施来保障相关数据的完整性、精确性 及一致性。 f、反馈数据库结果。将执行数据库操作的状态及相关数据反馈给服务端同步逻 辑。 g、反馈事务执行状态。服务端同步逻辑将各个事务执行的状态及重新广播事务 (如果有事务冲突)存储到事务池中,通过服务端通信逻辑S广播给各个移动客户端。
h、传递事务结果。移动客户端将收到的事务结果解析存储到数据缓冲中,然后 将该结果提交给客户端同步逻辑。 附图5展示了面向移动RFID的轻量级数据同步框架的数据冲突检测与解决机制 的结构示意图。移动事务在服务端的生命周期主要包括三个阶段初始化同步策略信息 并存储到事务池;被事务调度器调度并设置调度结果;冲突检测任务(Conflict Detection Task)调度事务来检测事务是否冲突。该机制包括事务初始化、事务调度和冲突检测与解 决。具体如下 A、事务初始化。每个对Share Data操作的事务存储到共享数据池(Share Data Pool)中的数据格式,都如图2事务池(Transaction Pool)结构所示。事务在存储到对应 的事务池之前,必须先设置下面两个参数事务标识(TID, Transaction Identifier)、事务 集标识(TCID, Transaction Cluster Identifier)。 共享数据池维护一个自动递增的事务标识 符,为每个要存储到共享数据池的事务赋一个唯一TID。共享数据池维护一个自动递增 的事务集标识(TCID,每隔事务集阀值(TCT)就生成一个唯一的TCID,对该TCT周期内 的所有事务都赋予当前周期的TCID。 B、模块4.2事务调度。读事务任务(Read Transaction Task)每隔RTF(读事务频 率,Read Transaction Frequency)时间就对读事务池(Read Transaction Pool)进行监听,如 果有事务需要调度,则执行下面事务调度算法;同理,更新事务任务(Update Transaction Task)每隔UTF(更新事务频率,Update Transaction Frequency)时间就对更新事务池(Update Transaction Pool)进行监听,如果有事务需要调度,则执行事务调度算法。
C、冲突检测与解决。冲突检测任务(Conflict Detection Task)负责对当前TCID 最小的不一致事务集(Inconsistent Transaction Cluster)进行检测事务冲突。当前任务冲突检 测任务(Conflict Detection Task)和另外两个调度任务读事务任务(Read Transaction Task)、 更新事务任务(Update Transaction Task),是并发执行的。为了更加快速地响应客户端的 请求,所以在本框架中没有使用到任何锁机制。因此首先将当前要检测的不一致事务集 里面的所有事务的TID、 IsScheduled、 Is Consistent及Data Area做一份拷贝,然后开始事 务冲突检测。 附图6展示了面向移动RFID的轻量级数据同步框架的事务调度算法流程。
读事务任务(Read Transaction Task)每隔RTF(读事务频率,Read Transaction Frequency)时间就对读事务池(Read Transaction Pool)进行监听,如果有事务需要调度,则 执行下面事务调度算法;同理,更新事务任务(Update Transaction Task)每隔UTF(更新事 务频率,Update Transaction Frequency)时间就对更新事务池(Update Transaction Pool)进行 监听,如果有事务需要调度,则执行下面事务调度算法。
事务调度算法的具体步骤如下 l)计算可调度事务集。获取当前事务池(Transaction Pool)中,所有Is Scheduled 是False的事务,组成一个事务集TS1;如果TS是空,则表示事务调度完成,退出该算 法,否则跳到2;); 2)计算可运行事务集提交运行。 步骤5.2.1、在事务集TS1中,将TCID最小的事务组成一个事务集TS2 ;
步骤5.2.2、在事务集TS2中,将Priority最大的事务组成一个事务集TS3 ;
步骤5.2.3、在事务集TS3中,获得TID最小的事务的AOID,称为AOID1 ;并
且在事务集TS3中,将AOID是AOID1的所有事务,组成一个事务集TS4 ; 步骤5.2.4、对TS4中的所有事务,按TID从小到大的顺序,将事务提交给服务
端的数据库运行,运行结束后将当前的事务的Is Scheduled设置为True ; 3)事务调度控制 步骤5.3.1、在事务集TS1、 TS2、 TS3中,删除事务集TS4中所有的事务;清
空事务集TS4;如果TS3不为空,则跳到模块步骤5.2.3,否则转到下一步; 步骤5.3.2、如果TS2不为空,则跳到步骤5.2.2,否则转到下一步; 步骤5.3.3、如果TS1不为空,则跳到步骤5.2.1,否则表示事务调度完成,退出
该算法。 附图7展示了面向移动RFID的轻量级数据同步框架的事务冲突检测算法流程示 意图。 本发明只维护一个事务集(Transaction Cluster)中的所有事务的一致性,也就是使 事务集阀值(Transaction Cluster Threshold, TCT)周期内的所有事务保持一致性。由于维 护了更新事务(Update Transaction)队列,顺序调度各个更新事务,因此防止了并发修改的 冲突的情况。所以处理读事务(Read Transaction)和更新事务(Update Transaction)的冲突 问题。这里提出三个定义将共享数据池(Share Data Pool)中所有事务集表示(TCID) — 样的事务组成一个集群,称该集群是当前TCID对应的事务集(Transaction Cluster); —个 事务集(Transaction Cluster)中只要有一个事务的Is Consistent是False,则该事务集称为不 一至文事务集(Inconsistent Transaction Cluster);如果该事务集中所有的事务的Is Consistent 是True ,则该事务集称 一 致事务集(Consistent Transaction Cluster)。 读事务池(Read Transaction Pool)中的所有事务的Is Consistent永是True,更新事务池(Update Transaction Pool)中的所有事务的Is Consistent默认是False。 冲突检测任务(Conflict Detection Task)负责对当前TCID最小的不一致事务集 (Inconsistent Transaction Cluster)进行检测事务冲突。当前冲突检测任务和另外两个调度任 务读事务任务(Read Transaction Task)、更新事务任务(Update Transaction Task),是并发 执行的。为了更加快速地响应客户端的请求,所以在本框架中没有使用到任何锁机制。 因此首先将当前要检测的不一致事务集(Inconsistent Transaction Cluster)里面的所有事务的 TID、 Is Scheduled、 Is Consistent及数据域(Data Area)做一份拷贝,然后开始事务冲突检 事务冲突检测算法的详细步骤如下 6.1、遍历共享数据池(Share Data Pool)中的读事务池(Read Transaction Pool) 和更新事务池(Update Transaction Pool),查找当前事务集(TCID)最小的不 一 致事务集 (Inconsistent Transaction Cluster),称为ITC1 ;如果ITC1是空,则冲突检测算法完成,退 出,否则转到下一步;6.2、在ITC1中,将存储在更新事务池(Update Transaction Pool)中的所有Is Scheduled是True的事务,组成事务集UTS1;如果UTS1是空,则表示更新事务(Update Transaction)还没被调度,所以没有冲突,则退出;否则转到下一步;
6.3、在UTS1中,将所有Is Consistent是False的事务,组成事务集UTS2 ;如果
10UTS2是空,则表示当前所有事务已经检测过是一致的,则退出;否则转到下一步; 6.4、在ITC1中,将存储在读事务池(Read Transaction Pool)中的所有事务,组成 事务集RTS1;如果RTS1是空,即没有任何读事务(Read Transaction),也就不会有任何 冲突,则退出;否则转到下一步; 6.5、在事务集UTS2和事务集RTS1中检测冲突 步骤6.5.1循环遍历事务集UTS2,假设UTS2中事务的个数是n ;初始化k = 0 ; 步骤6.5.21^++;如果k〉n,则冲突检测完成,退出;否则,获取UTS2中的第 k个事务,称为UTK; 步骤6.5.3获取事务UTK的数据域(Data Area),称为DataK ;在RTS1中,将数 据域是DataK的所有事务,组成事务集RTS2 ;如果RTS2是空,则当前更新事务没有冲 突,跳到步骤5.7;否则,转到下一步; 步骤6.5.4循环遍历事务集RTS2,假设RTS2中事务的个数是m ;初始化h = 0 ; 步骤6.5.511++;如果h〉m,则表示当前事务的冲突集解决完毕,跳到步骤 5.7 ;否则,获取RTS2中的第h个事务,称为RTh ; 步骤6.5.6将数据DataK重新发送给请求事务RTh的移动客户端,并将事务RTh 的Is Scheduled设置为是True ;跳到步骤6.5.4 ; 步骤6.5.6将事务UTK的Is Consistent设置为Trae,跳到步骤6.5.2。
附图8展示了面向移动RFID的轻量级数据同步框架的交互性能分析。交互 时间是移动RFID系统的重要性能因素。在不同的GTP(Generating Transaction Period, e.g.2000ms)里,多个事务提交的服务端。所有事务处理的处理的平均时间,作为这次事 务处理的交互时间。横坐标表示事务产生的频率。纵坐标表示交互的时间周期。红色 线表示使用控制矩阵(Control Matrix)的移动系统。蓝色线表示使用本发明的框架。
图9展示了面向移动RFID的轻量级数据同步框架的数据吞吐量性能分析。一 个实用性的移动系统,数据的吞吐量不应由于一个新的框架的引入而产生显著变化。因 此,数据吞吐量是一个移动通信系统的重要指标。横坐标表示事务产生的频率。纵坐标 表示数据包的数量。红色线表示使用控制矩阵(Control Matrix)。蓝色线表示使用本发明 的框架。
权利要求
一种面向移动RFID的轻量级数据同步架构,其特征在于包括服务端同步逻辑模块(1)、事务池模块(2)、客户端同步逻辑模块(3)、数据缓冲模块(4),所述服务端同步逻辑模块(1)和事务池模块(2)相互连接并设置在移动RFID的服务端,所述客户端同步逻辑模块(3)和数据缓冲模块(4)相互连接并设置在移动RFID的客户端,所述服务端同步逻辑模块(1)和客户端同步逻辑模块(3)通过通讯逻辑模块(5)连接。
2. 根据权利要求1所述的面向移动RFID的轻量级数据同步架构,其特征在于所述服 务端同步逻辑模块(1)包括同步管理器子模块(11)、同步策略子模块(12)及同步调度器子 模块(13),所述同步管理器子模块(11)实现发布同步策略子模块(12)中各个参数的配置接 口及同步调度器子模块(13)的应用程序编程接口。
3. 根据权利要求2所述的面向移动RFID的轻量级数据同步架构,其特征在于所述 同步策略子模块(12)定义了服务端同步策略的模型数据类型包括公有、共享及私有三 种,服务端的任意一个数据单元当且仅当属于一种数据类型以及每种数据类型的如下访 问权限公有数据权限各个客户端只有查询权限,而服务端拥有所有操作的权限; 私有数据权限服务端只有查询权限,而客户端拥有所有操作的权限; 共享数据权限所有客户端都可以进行添加、删除、修改及查询操作。
4. 根据权利要求1或2或3所述的面向移动RFID的轻量级数据同步架构,其特征在 于所述事务池模块(2)实现解析、封装、存储各个移动客户端的事务;事务池模块(2)包括事务池管理器(21)、公有数据池(22)、共享数据池(23)及私有数 据池(24);所述事务池管理器(21)为客户端的事务请求提供一个唯一的事务标识,并且解析其 数据类型和操作类型,接着封装到对应的公有数据池(22)、或共享数据池(23)、或私有数 据池(24)事务池中。
5. 根据权利要求4所述的面向移动RFID的轻量级数据同步架构,其特征在于所述客 户端同步逻辑模块(3)定义客户端的同步策略,维护客户端事务一致性;客户端同步逻辑模块(3)包括同步管理器(31)、同步策略(32)及同步协议(33),所述 同步管理器(31)实现发布同步策略(32)中各个参数的配置接口及同步协议(33)的扩充。
6. 根据权利要求5所述的面向移动RFID的轻量级数据同步架构,其特征在于所述数 据缓冲模块(4)解析、存储客户端数据,并封装事务提交给服务端;所述数据缓冲模块(4)包括有缓冲管理器(41)、公有数据缓冲(42)、共享数据缓冲 (43)及私有数据缓冲(44);所述缓冲管理器(41)解析各种数据类型,并将该数据存储到对应的公有数据缓冲 (42)、或共享数据缓冲(43)、或私有数据缓冲(44)。
7. 根据权利要求6所述的面向移动RFID的轻量级数据同步架构,其特征在于所述同 步架构的具体操作过程包括如下步骤(a)同步逻辑的初始化,包括服务端同步逻辑模块(1)配置同步策略(12)的各个参 数,定义服务端数据库中所有数据的类型,初始化事务池模块(2)和启动服务端通信逻辑 (5);客户端同步逻辑模块(3)初始化同步策略(32)和启动相关同步协议(33),初始化数据 缓冲模块(4)和启动客户端通信逻辑(5);(b) 采集数据和事务生成;(c) 提交事务,客户端同步逻辑模块(3)将收到的事务,根据同步策略(32),封装成规 范的移动事务,存储到数据缓冲模块(4)中,并且通过通信逻辑(5)将该移动事务提交到 服务端的事务池(2)中,事务池(2)对该移动事务进行解析、封装及存储;(d) 调度事务,服务端同步逻辑模块(l)启动三个任务更新事务任务、读事务任务 及冲突检测任务,更新事务任务和读事务任务按设定的事务调度原则来调度当前的所有 事务,冲突检测任务检测当前事务集的冲突集;(e) 执行事务,服务端同步逻辑模块(l)将调度的事务,执行到数据库中;(f) 反馈数据库结果,将执行数据库操作的状态及相关数据反馈给服务端同步逻辑模 块(l);(g) 反馈事务执行状态,服务端同步逻辑模块(l)将各个事务执行的状态及重新广播事 务存储到事务池(2)中,通过服务端通信逻辑模块(5)广播给各个移动客户端;(h) 传递事务结果,移动客户端将收到的事务结果解析存储到数据缓冲模块(4)中,然 后将该结果提交给客户端同步逻辑模块(3)。
8. 根据权利要求7所述的面向移动RFID的轻量级数据同步架构,其特征在于所述同 步框架还设置有数据冲突检测与解决机制,具体包括如下三个步骤(A) 事务初始化,将每个对共享数据进行操作的事务存储到共享数据池(23)中,事务 在存储到对应的事务池之前,先设置事务标识和事务集标识两个参数,共享数据池(23) 维护一个自动递增的事务标识符,为每个要存储到共享数据池(23)的事务赋一个唯一事 务标识,共享数据池(23)维护一个自动递增的事务集标识,每隔事务集阀值就生成一个 唯一的事务集标识,对该事务集阀值周期内的所有事务都赋予当前周期的事务集标识;(B) 事务调度,读事务任务每隔读事务频率就对读事务池进行监听,如果有事务需要 调度,则执行优先权事务调度算法;同理,更新事务任务每隔更新事务频率就对更新事 务池进行监听,如果有事务需要调度,则执行优先权事务调度算法;(C) 冲突检测与解决,冲突检测任务对当前事务集标识最小的不一致事务集进行检测 事务冲突,当前任务冲突检测任务和另外两个调度任务读事务任务、更新事务任务, 并发执行。
9. 根据权利要求8所述的面向移动RFID的轻量级数据同步架构,其特征在于所述同 步框架还设置有事务簇划分,维护每个事务簇的一致性,减轻检测事务冲突集的负载, 所述事务簇划分为服务端将指定事务簇周期时间内收集到的事务归类为一簇,并对这些 事务检测事务冲突集,如果有冲突就对冲突数据进行重新广播。
全文摘要
本发明提供了一种面向移动RFID的轻量级数据同步架构,包括服务端同步逻辑模块(1)、事务池模块(2)、客户端同步逻辑模块(3)、数据缓冲模块(4),所述服务端同步逻辑模块(1)和事务池模块(2)相互连接并设置在移动RFID的服务端,所述客户端同步逻辑模块(3)和数据缓冲模块(4)相互连接并设置在移动RFID的客户端,所述服务端同步逻辑模块(1)和客户端同步逻辑模块(3)通过通讯逻辑模块(5)连接。
文档编号H04W56/00GK101692737SQ20091004174
公开日2010年4月7日 申请日期2009年8月7日 优先权日2009年8月7日
发明者刘发贵, 刘泽浩, 揭育柱, 阮永雄 申请人:华南理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1