CN101692737A - 一种面向移动rfid的轻量级数据同步架构 - Google Patents
一种面向移动rfid的轻量级数据同步架构 Download PDFInfo
- Publication number
- CN101692737A CN101692737A CN 200910041747 CN200910041747A CN101692737A CN 101692737 A CN101692737 A CN 101692737A CN 200910041747 CN200910041747 CN 200910041747 CN 200910041747 A CN200910041747 A CN 200910041747A CN 101692737 A CN101692737 A CN 101692737A
- Authority
- CN
- China
- Prior art keywords
- affairs
- data
- transaction
- pond
- client
- 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
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 67
- 238000004891 communication Methods 0.000 claims abstract description 17
- 238000001514 detection method Methods 0.000 claims description 37
- 230000003139 buffering effect Effects 0.000 claims description 28
- 230000007246 mechanism Effects 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 9
- 230000004048 modification Effects 0.000 claims description 9
- 230000009471 action Effects 0.000 claims description 7
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 238000000034 method Methods 0.000 claims description 4
- 238000005538 encapsulation Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 239000011159 matrix material Substances 0.000 description 17
- 101000841325 Homo sapiens Urotensin-2 Proteins 0.000 description 6
- 102100029097 Urotensin-2 Human genes 0.000 description 6
- 102100027617 DNA/RNA-binding protein KIN17 Human genes 0.000 description 5
- 101001008941 Homo sapiens DNA/RNA-binding protein KIN17 Proteins 0.000 description 5
- 208000024609 Rothmund-Thomson syndrome type 2 Diseases 0.000 description 5
- 101100233693 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ITC1 gene Proteins 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011217 control strategy Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种面向移动RFID的轻量级数据同步架构,包括服务端同步逻辑模块(1)、事务池模块(2)、客户端同步逻辑模块(3)、数据缓冲模块(4),所述服务端同步逻辑模块(1)和事务池模块(2)相互连接并设置在移动RFID的服务端,所述客户端同步逻辑模块(3)和数据缓冲模块(4)相互连接并设置在移动RFID的客户端,所述服务端同步逻辑模块(1)和客户端同步逻辑模块(3)通过通讯逻辑模块(5)连接。
Description
技术领域
本发明属于RFID技术领域,特别是提供一种面向移动RFID的轻量级RFID数据同步框架。
技术背景
RFID(Radio Frequency Identification)Mobile middleware由于它的具有竞争力的商业价值,而颇受关注。由于可以自动识别和收集信息,mobile RFID systems广泛应用于各种领域。无线通讯技术的快速发展,促使移动RFID信息服务的功能性更加多样化,并且使更多移动计算应用成为现实。
随着RFID技术广泛应用于各个领域,一系列的移动RFID信息服务系统,比如仓库管理系统、医疗信息系统及移动超市协助系统等,已经被应用到对应的领域。
移动RFID设备本身的限制,比如低带宽、低电量及网络不稳定性,导致要设计高效可靠的移动计算方案,面临着很多的问题。其中最关键的就是各个移动客户端的数据更新事务和数据广播事务的高效性、一致性问题。而移动网络的带宽的限制和网络不稳定性,使该关键问题更加复杂化。
更新事务并发修改数据,会导致移动客户端获得不一致性数据。更新事务和数据广播如果能交叉执行,可以使数据广播更加高效、及时。但这些都必须要依赖并发控制协议。而传统的并发控制协议,比如两阶段封锁、乐观锁或矩阵锁,并不能应用到该系统中,因为他们要求维护较多锁及较繁琐的检测数据冲突机制。
近来,移动计算系统在面对数据广播和数据更新的并发控制策略并没有得到很大的突破。而传统的并发控制策略,由于其高负载,并不能应用到移动RFID系统中。比如二元加锁(two phase locking),广播事务或者更新事务必须要先获得某个数据项的锁,才能对该数据项进行操作。如附图1所示的二元加锁(two phaselocking),当更新事务1获得了data item2和data item3的锁后,正进行数据更新的时候,广播事务1因为申请data item2的锁而被挂起,来等待UT1来释放dataitem2锁。从而导致广播事务的延迟,降低移动客户端的交互性。因此这种繁琐的申请锁和锁冲突检测并不适合移动RFID系统。
而使用控制矩阵(control matrix),可以使客户端维护一份数据拷贝,对该数据的操作,记录在一个矩阵中,可以通过检测矩阵来维护数据的一致性。移动客户端向服务端请求数据的时候,服务端会将请求的多个数据项及对应的控制矩阵,发送给移动客户端;移动客户端可以通过检查该矩阵来判断,在其查询该数据的时候,是否有其他移动客户端对该数据进行修改。当然移动客户端也可以对当前拷贝的数据进行操作,并且将相关操作记录到该矩阵中,最后将该数据及对应的矩阵提交给服务端。
但是使用矩阵控制,会导致下面问题:
客户端与服务端对某些数据项都必须维护一个一致的矩阵,从而导致数据交互比较繁琐;每次数据交互都必须使用当前矩阵来进行冲突检测,从而导致冲突检查的频率比较高;当数据量比较大或数据单位比较小的时候,该矩阵就比较庞大,从而占据每次通讯较多带宽,从而导致带宽利用率降低。
现有技术所存在的不足,其原因主要在于数据更新和数据广播不一致。当多个移动客户端并发修改服务端的某些数据项时,如果没有任何并发修改策略加以控制,会导致脏数据的产生。当服务端对某些数据项正在进行广播的时候,如果某些移动客户端对这些数据项进行部分更新操作,可能会导致部分移动客户端获得不一致的数据。故而需要研发一套行之有效的机制来克服该问题。
发明内容
本发明的目的在于解决现有技术所存在的数据更新事务和数据广播事务不一致,效率较低的问题,提供一种面向移动RFID的轻量级数据同步架构
为了实现上述发明目的,采用的技术方案如下:
一种面向移动RFID的轻量级数据同步架构,包括服务端同步逻辑模块、事务池模块、客户端同步逻辑模块、数据缓冲模块,所述服务端同步逻辑模块和事务池模块相互连接并设置在移动RFID的服务端,所述客户端同步逻辑模块和数据缓冲模块相互连接并设置在移动RFID的客户端,所述服务端同步逻辑模块和客户端同步逻辑模块通过通讯逻辑模块连接。
本发明的技术方案包括如下几个要点:
1、数据项划分为共有数据、共享数据以及私有数据:服务端的所有数据当且仅当属于一种数据类型;公有数据权限:各个客户端只有查询权限,而服务端有所有操作的权限;私有数据权限:服务端只有查询权限,而该客户端端有所有操作的权限;共享数据权限:所有客户端都可以进行添加、删除、修改及查询操作。不同类型的数据采用不同的同步策略。
2、事务格式化。在服务端维护一个事务池,事务池负责解析、封装、存储各个移动客户端提交的事务,事务池的任务包括:提供一个唯一的事务标识给每个事务,解析标识事务操作的类型(添加、删除、修改),解析标识事务所操作的数据类型(公有、共享、私有),封装该事务操作的数据内容,和标识该事务是否被合理调度,以及存储不同事务操作类型的事务到更加具体的事务池进行存储。
3、通过事务簇cluster的划分,维护每个事务cluster的一致性,减轻检测事务冲突集的负载。服务端将指定事务cluster周期时间内收集到的事务归类为一cluster,并对这些事务检测事务冲突集,如果有冲突就对冲突数据进行重新广播。
4、数据同步。通过指定参数实现同步逻辑初始化后,移动RFID终端开始采集RFID标签数据并生成相关的事务,提交到服务端;服务端通过事务池封装、解析、存储事务,并针对不同类型的数据采用不同的事务调度算法。事务调度原则为优先处理优先级高的事务,如果优先级一样,就优先处理事务标识小的事务。事务执行后,将数据库的结果实时反应各个移动RFID终端进行反馈。
5、冲突检测与解决。由于公开数据池的事务是客户端查询服务端的公开数据,私有数据池是服务端查询各个客户端的私有是数据,因此在这两个数据池中的事务不存在应用数据同步而导致冲突。而提供了共享数据池中的事务冲突机制。
本发明提出了移动RFID中的轻量级数据同步的设计和部署方案:数据项划分为公有数据、共享数据及私有数据;对不同的数据类型采用不同的同步策略;维护了各种数据类型对应的读事务队列和更新事务队列,从而使这些事务的调度都是序列化的,可以有效地控制数据并发修改和数据重播。将事务按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)负责响应各个移动客户端的事务请求及协调事务调度。
服务端同步逻辑的主要模块包括同步管理器11(Sync Manager)、同步策略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;更新事务频率(Update Transaction Frequency,UTF)表示服务端调度Update Transaction的频率,单位是毫米ms。同步调度器(SyncScheduler)根据同步策略设置的参数调度对应的任务:冲突检测任务(ConflictDetection 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)和更新事务池(UpdateTransaction Pool);更新事务池的结构如图3所示,并且所有事务池的记录结构是一样的;客户端对服务端的公有数据只有查询的权限,因此公有数据池只包括模块读事务池;同理,服务端对客户端的私有数据只有查询的权限,因此公有数据池只包括模块读事务池。
3、客户端同步逻辑(Client Sync Logic)负责定义客户端的同步策略,维护客户端事务一致性。
客户端同步逻辑包括的模块有同步管理器(Sync Manager)、同步策略(SyncStrategy)及同步协议(Sync Protocol)。同步管理器负责发布同步策略中各个参数的配置接口及同步协议的扩充。同步策略定义了客户端同步策略,比如数据类型、事务优先级及事务原子操作等。同步协议(Sync Protocol)。同步管理器负责发布同步策略中各个参数的配置接口及同步为该客户端提供与其他各个移动客户端进行数据同步的协议,包括SyncXML、HotSync、Intellisync。
4、数据缓冲解析、存储客户端数据,并封装事务提交给服务端。
数据缓冲主要负责存储移动客户端向服务端请求的各个事务,然后由客户端通信模块(Client Communication Logic)将这些事务提交给服务端;另外存储服务端广播的数据及对客户端的事务请求。数据缓冲包括的模块有缓冲管理器(Buffer Manager)、公有数据缓冲(Public Data Buffer)、共享数据缓冲(Share DataBuffer)及私有数据缓冲(Private Data Buffer)。缓冲管理器解析各种数据类型,并将该数据存储到对应的缓冲中;同时也发布对各个数据缓冲操作的API。公有数据缓冲、共享数据缓冲及私有数据缓冲分别存储对应数据类型的数据。
附图3展示了面向移动RFID的轻量级数据同步框架中,服务端维护的事务池内部的结构。事务池负责解析、封装、存储各个移动客户端的事务。事务池主要模块包括事务池管理器(Transaction Pool Manager)、公有数据池(PublicData Pool)、共享数据池(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、调度事务。服务端同步逻辑将启动三个任务:更新事务任务(UpdateTransaction Task)、读事务任务(Read Transaction Task)及冲突检测任务(ConflictDetection Task)。更新事务任务和读事务任务按上述的事务调度原则,调度当前的所有事务。冲突检测任务负责检测当前事务集的冲突集。
e、执行事务。服务端同步逻辑(Server Sync Logic)将调度的事务,执行到数据库(Database)中。如果异常情况,将采取恰当的措施来保障相关数据的完整性、精确性及一致性。
f、反馈数据库结果。将执行数据库操作的状态及相关数据反馈给服务端同步逻辑。
g、反馈事务执行状态。服务端同步逻辑将各个事务执行的状态及重新广播事务(如果有事务冲突)存储到事务池中,通过服务端通信逻辑S广播给各个移动客户端。
h、传递事务结果。移动客户端将收到的事务结果解析存储到数据缓冲中,然后将该结果提交给客户端同步逻辑。
附图5展示了面向移动RFID的轻量级数据同步框架的数据冲突检测与解决机制的结构示意图。移动事务在服务端的生命周期主要包括三个阶段:初始化同步策略信息并存储到事务池;被事务调度器调度并设置调度结果;冲突检测任务(Conflict Detection Task)调度事务来检测事务是否冲突。该机制包括事务初始化、事务调度和冲突检测与解决。具体如下:
A、事务初始化。每个对Share Data操作的事务存储到共享数据池(ShareData 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 TransactionFrequency)时间就对更新事务池(Update Transaction Pool)进行监听,如果有事务需要调度,则执行事务调度算法。
C、冲突检测与解决。冲突检测任务(Conflict Detection Task)负责对当前TCID最小的不一致事务集(Inconsistent Transaction Cluster)进行检测事务冲突。当前任务冲突检测任务(Conflict Detection Task)和另外两个调度任务读事务任务(Read Transaction Task)、更新事务任务(Update Transaction Task),是并发执行的。为了更加快速地响应客户端的请求,所以在本框架中没有使用到任何锁机制。因此首先将当前要检测的不一致事务集里面的所有事务的TID、Is Scheduled、Is Consistent及Data Area做一份拷贝,然后开始事务冲突检测。
附图6展示了面向移动RFID的轻量级数据同步框架的事务调度算法流程。
读事务任务(Read Transaction Task)每隔RTF(读事务频率,Read TransactionFrequency)时间就对读事务池(Read Transaction Pool)进行监听,如果有事务需要调度,则执行下面事务调度算法;同理,更新事务任务(Update Transaction Task)每隔UTF(更新事务频率,Update Transaction Frequency)时间就对更新事务池(Update Transaction Pool)进行监听,如果有事务需要调度,则执行下面事务调度算法。
事务调度算法的具体步骤如下:
1)计算可调度事务集。获取当前事务池(Transaction Pool)中,所有IsScheduled是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);一个事务集(TransactionCluster)中只要有一个事务的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)、更新事务任务(UpdateTransaction Task),是并发执行的。为了更加快速地响应客户端的请求,所以在本框架中没有使用到任何锁机制。因此首先将当前要检测的不一致事务集(Inconsistent Transaction Cluster)里面的所有事务的TID、Is Scheduled、IsConsistent及数据域(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;如果UTS2是空,则表示当前所有事务已经检测过是一致的,则退出;否则转到下一步;
6.4、在ITC1中,将存储在读事务池(Read Transaction Pool)中的所有事务,组成事务集RTS1;如果RTS1是空,即没有任何读事务(Read Transaction),也就不会有任何冲突,则退出;否则转到下一步;
6.5、在事务集UTS2和事务集RTS1中检测冲突:
步骤6.5.1循环遍历事务集UTS2,假设UTS2中事务的个数是n;初始化k=0;
步骤6.5.2k++;如果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.5h++;如果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设置为True,跳到步骤6.5.2。
附图8展示了面向移动RFID的轻量级数据同步框架的交互性能分析。交互时间是移动RFID系统的重要性能因素。在不同的GTP(Generating TransactionPeriod,e.g.2000ms)里,多个事务提交的服务端。所有事务处理的处理的平均时间,作为这次事务处理的交互时间。横坐标表示事务产生的频率。纵坐标表示交互的时间周期。红色线表示使用控制矩阵(Control Matrix)的移动系统。蓝色线表示使用本发明的框架。
图9展示了面向移动RFID的轻量级数据同步框架的数据吞吐量性能分析。一个实用性的移动系统,数据的吞吐量不应由于一个新的框架的引入而产生显著变化。因此,数据吞吐量是一个移动通信系统的重要指标。横坐标表示事务产生的频率。纵坐标表示数据包的数量。红色线表示使用控制矩阵(Control Matrix)。蓝色线表示使用本发明的框架。
Claims (9)
1.一种面向移动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)调度事务,服务端同步逻辑模块(1)启动三个任务:更新事务任务、读事务任务及冲突检测任务,更新事务任务和读事务任务按设定的事务调度原则来调度当前的所有事务,冲突检测任务检测当前事务集的冲突集;
(e)执行事务,服务端同步逻辑模块(1)将调度的事务,执行到数据库中;
(f)反馈数据库结果,将执行数据库操作的状态及相关数据反馈给服务端同步逻辑模块(1);
(g)反馈事务执行状态,服务端同步逻辑模块(1)将各个事务执行的状态及重新广播事务存储到事务池(2)中,通过服务端通信逻辑模块(5)广播给各个移动客户端;
(h)传递事务结果,移动客户端将收到的事务结果解析存储到数据缓冲模块(4)中,然后将该结果提交给客户端同步逻辑模块(3)。
8.根据权利要求7所述的面向移动RFID的轻量级数据同步架构,其特征在于所述同步框架还设置有数据冲突检测与解决机制,具体包括如下三个步骤:
(A)事务初始化,将每个对共享数据进行操作的事务存储到共享数据池(23)中,事务在存储到对应的事务池之前,先设置事务标识和事务集标识两个参数,共享数据池(23)维护一个自动递增的事务标识符,为每个要存储到共享数据池(23)的事务赋一个唯一事务标识,共享数据池(23)维护一个自动递增的事务集标识,每隔事务集阀值就生成一个唯一的事务集标识,对该事务集阀值周期内的所有事务都赋予当前周期的事务集标识;
(B)事务调度,读事务任务每隔读事务频率就对读事务池进行监听,如果有事务需要调度,则执行优先权事务调度算法;同理,更新事务任务每隔更新事务频率就对更新事务池进行监听,如果有事务需要调度,则执行优先权事务调度算法;
(C)冲突检测与解决,冲突检测任务对当前事务集标识最小的不一致事务集进行检测事务冲突,当前任务冲突检测任务和另外两个调度任务:读事务任务、更新事务任务,并发执行。
9.根据权利要求8所述的面向移动RFID的轻量级数据同步架构,其特征在于所述同步框架还设置有事务簇划分,维护每个事务簇的一致性,减轻检测事务冲突集的负载,所述事务簇划分为服务端将指定事务簇周期时间内收集到的事务归类为一簇,并对这些事务检测事务冲突集,如果有冲突就对冲突数据进行重新广播。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910041747 CN101692737B (zh) | 2009-08-07 | 2009-08-07 | 一种面向移动rfid的轻量级数据同步系统及同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910041747 CN101692737B (zh) | 2009-08-07 | 2009-08-07 | 一种面向移动rfid的轻量级数据同步系统及同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101692737A true CN101692737A (zh) | 2010-04-07 |
CN101692737B CN101692737B (zh) | 2012-12-05 |
Family
ID=42081388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910041747 Expired - Fee Related CN101692737B (zh) | 2009-08-07 | 2009-08-07 | 一种面向移动rfid的轻量级数据同步系统及同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101692737B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102693434A (zh) * | 2011-03-22 | 2012-09-26 | 中兴通讯股份有限公司 | 射频识别设备接口层的通信装置及方法 |
CN103019809A (zh) * | 2011-09-28 | 2013-04-03 | 中国移动通信集团公司 | 业务处理装置和方法、及业务处理控制装置 |
CN105718572A (zh) * | 2016-01-21 | 2016-06-29 | 成都索贝数码科技股份有限公司 | 一种异构数据复合对象的事务一致性达成方法与系统 |
CN106503001A (zh) * | 2015-09-03 | 2017-03-15 | 阿里巴巴集团控股有限公司 | 分布式集群环境中的数据更新方法及装置 |
CN116070281A (zh) * | 2023-04-06 | 2023-05-05 | 睿至科技集团有限公司 | 一种云管平台的数据存储方法及其系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2369805A1 (en) * | 2002-01-31 | 2003-07-31 | Catena Networks Canada Inc. | Network synchronization architecture for a broadband loop carrier system (blc) |
CN101477635B (zh) * | 2008-12-12 | 2013-05-08 | 华南理工大学 | 一种基于轻量级ale的嵌入式rfid中间件 |
-
2009
- 2009-08-07 CN CN 200910041747 patent/CN101692737B/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102693434A (zh) * | 2011-03-22 | 2012-09-26 | 中兴通讯股份有限公司 | 射频识别设备接口层的通信装置及方法 |
CN102693434B (zh) * | 2011-03-22 | 2015-01-28 | 中兴通讯股份有限公司 | 射频识别设备接口层的通信装置及方法 |
CN103019809A (zh) * | 2011-09-28 | 2013-04-03 | 中国移动通信集团公司 | 业务处理装置和方法、及业务处理控制装置 |
CN103019809B (zh) * | 2011-09-28 | 2015-05-27 | 中国移动通信集团公司 | 业务处理装置和方法、及业务处理控制装置 |
CN106503001A (zh) * | 2015-09-03 | 2017-03-15 | 阿里巴巴集团控股有限公司 | 分布式集群环境中的数据更新方法及装置 |
CN106503001B (zh) * | 2015-09-03 | 2019-11-12 | 菜鸟智能物流控股有限公司 | 分布式集群环境中的数据更新方法及装置 |
CN105718572A (zh) * | 2016-01-21 | 2016-06-29 | 成都索贝数码科技股份有限公司 | 一种异构数据复合对象的事务一致性达成方法与系统 |
CN105718572B (zh) * | 2016-01-21 | 2017-03-15 | 成都索贝数码科技股份有限公司 | 一种异构数据复合对象的事务一致性达成方法与系统 |
CN116070281A (zh) * | 2023-04-06 | 2023-05-05 | 睿至科技集团有限公司 | 一种云管平台的数据存储方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101692737B (zh) | 2012-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103930875B (zh) | 用于加速业务数据处理的软件虚拟机 | |
CN102495910B (zh) | 实现异构系统数据定时同步的装置和方法 | |
CN103426072B (zh) | 一种高并发竞争库存的订单处理系统及其处理方法 | |
CN101981531B (zh) | 聚集循环调度以优化资源消耗 | |
CN106815338A (zh) | 一种大数据的实时存储、处理和查询系统 | |
CN102118261B (zh) | 一种数据采集的方法、数据采集装置及网管设备 | |
CN101477635B (zh) | 一种基于轻量级ale的嵌入式rfid中间件 | |
US10133797B1 (en) | Distributed heterogeneous system for data warehouse management | |
CN101692737B (zh) | 一种面向移动rfid的轻量级数据同步系统及同步方法 | |
CN105635283A (zh) | 一种云制造服务的组织管理和使用方法和系统 | |
CN104765641B (zh) | 一种作业调度方法及系统 | |
CN106899638A (zh) | 一种解决数据异构的融合物联网关系统和方法 | |
US10503636B2 (en) | Concurrent hierarchical dead actor collection in a distributed system | |
CN102158554A (zh) | 基于移动代理的物联网中间件开发方法 | |
CN104092767A (zh) | 一种增加消息队列模型的发布/订阅系统及其工作方法 | |
US20140115406A1 (en) | Delay-tolerant and loss-tolerant data transfer for mobile applications | |
WO2019047441A1 (zh) | 一种通信优化方法及系统 | |
CN103279390A (zh) | 一种面向小作业优化的并行处理系统 | |
CN102780768A (zh) | 一种大并发量请求的处理方法及处理系统 | |
CN108183918B (zh) | 一种aaa高并发认证方法及系统 | |
WO2016045367A1 (zh) | 一种多数据源数据融合的方法及装置 | |
CN117093367B (zh) | 一种业务数据的处理方法、装置及存储介质 | |
CN105430030A (zh) | 基于osgi技术的可平行扩展的应用服务器 | |
CN106375480A (zh) | 一种基于分布式系统的电能数据实时采集系统及方法 | |
Zhang et al. | Research on the overall architecture of Internet of Things middleware for intelligent industrial parks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121205 |
|
CF01 | Termination of patent right due to non-payment of annual fee |