SQL Anywhere Studio MobiLink之一

简介

北卡罗莱纳运输部(NC DOT)曾面临当今典型移动计算中数据同步的很多挑战。本文概要地介绍了NC DOT Mobile Inspector 应用、桥梁技术检查组内部和中心办公室及时交换信息的需求以及在本应用中实现数据库同步的SQL Anywhere Studio MobiLink技术。

NC DOT 应用简介

2004年春天,我来到了北卡罗来纳州的罗利市。在此之前,我从未在桥梁和高架桥上花过太多心思。我不知道定期检查桥梁安全的必要性,当然对“桥梁检查员”这个职务也知之甚少。就我所知,这些头带安全帽、身穿安全背心的人的工作就是清理公路上被撞死的动物。

我开始处理移动检查(Mobile Inspector)应用程序同步组件的工作时,这些认知很快发生了变化。北卡罗来纳州大约有19 000座桥和涵洞桥需要定期检查,负责检查工作的现场检查员约为60人,包含4个水下作业小组。这些检查员非常繁忙,在返回办公室准备检查报告前要在现场做记录及拍照,检查报告用于确定哪些桥梁在以后的一段时间内状况良好,哪些桥梁需要立即维修。

照片2 –现场检查员Shane Dunlow正在使用平板笔记本(Tablet PC)的Mobile Inspector应用程序记录凸缘的尺寸。

Mobile Inspector用于收集检查员所测量的尺寸和观测的资料,还要存储数码照片。Mobile Inspector的设计意图是把数据录入从办公室转到现场,在节省成本的同时满足联邦政府通过电子手段获取桥梁检查数据的要求。为此,音控、手写识别和自定义速记工具成为Mobile Inspector 应用的几大特色。

在现场,每位检查员都使用运行Windows 2000操作系统的平板电脑。假如是传统的两层结构——客户端/服务器布局——或甚至是两层分布式层次结构,所有平板电脑都要直接与中心数据库通信或同步。然而,出于安全性的考虑,平板电脑只有在办公室才能与中心数据库连接。也就是说,在每次现场检查前,数据要被复制到小组负责人的平板电脑上,并在检查报告完成后复制回中央数据库。还必须在小组负责人的平板电脑和小组成员的平板电脑间来回复制数据,在检查大型桥梁时,往往要通过无线连接进行多次这种现场操作。

图1.显示了如何将Mobile Inspector 应用所涉及的电脑按三个层次布置,中心数据库置于顶层、小组负责人平板电脑置于中间层、而小组成员的平板电脑置于底层。小组负责人通过有线局域网与中心数据库通信、通过无线局域网与小组成员通信。同步服务器软件同时在中心数据库电脑和小组负责人的平板电脑上运行,这些服务器分别与小组负责人和小组成员的平板电脑上的同步客户端软件通信。

图1. 三级分布式层次结构:

应用程序本身使用关系数据库管理系统(RDBMS)在平板电脑上系统存储数据——包括数码照片。使用RDBMS有充分的理由:它保证数据完整性并提供可还原性,同时功能强大且简单易用。这是它的优点。而缺点是从一个中心数据库向包含多个远程数据库的三层分布式层次结构移动数据是一项艰巨的任务。特别是因为不可能把一个数据库管理员(DBA)外派到每个检查小组中,所以无论北卡罗莱纳州外河岸的天气怎样,即使在无线连接不稳定的情况下也要确保同步过程稳定可靠。

NC DOT使用Oracle 9i作为中心数据库,把Adaptive Server Anywhere(ASA)作为平板电脑上的远程数据库,并应用MobiLink同步软件处理Oracle和ASA之间的传输以及ASA和ASA之间的传输。ASA和MobiLink均为iAnywhere Solutions 公司的SQL Anywhere Studio 9的一部分,随之一起发行。

同步的基本概念

MobiLink软件由客户端组件和服务器组件构成。远程客户端先连接到本地数据库、收集前一次同步后发生变化的所有行并将这些行上传到MobiLink服务器,从而启动同步会话。然后服务器把上传的变更应用到中央数据库,选择要下载的行并把这些行发送给客户端。最后,MobiLink客户端将已下载的变更应用到本地数据库并向服务器返回确认信息。

在任何环境中,故障处理都是同步的一个重要部分,特别是在频繁失去连接或意外断开连接的移动环境下。使用MobiLink时,故障在上传和下载数据库事务的级别得到处理。假如上传失败,全部已上传的变更将回滚,整个过程停止。还原包括重新运行同步过程,从零开始重构建上传流并重复整个过程——就像该过程从未中断一样。

下载期间的故障处理采用类似的方法:下载回滚并应用相同的还原技术:“再试一次”。然而,此时仅重复下载,因为之前的上传已成功并提交。这一切都是由MobiLink 自动完成的。

时间: 2024-10-28 14:52:36

SQL Anywhere Studio MobiLink之一的相关文章

SQL Anywhere Studio MobiLink之三

分布式数据挑战 彼此没有固定联系的分布式数据库无法提供任何全系统锁定的机制.特别是没有任何机制可阻止您插入在两个不同远程数据库中具有相同主键的两行,从而在将这些行上传到统一数据库时造成主键冲突. 解决方案之一是使用由一个普通自动增量列加上数据库标识符组成的复合主键来解决不同数据库的自动增量值重叠问题.多列主键使外键定义过于复杂,令应用程序开发人员非常头疼,因此全局惟一标识符(GUID)有时被视为单列替代方案.GUID是具有形如"6F9619FF-8B86-D011-B42D-00C04FC964

SQL Anywhere Studio MobiLink之二

实现业务规则的重要性 MobiLink的一个主要优点是具有利用其事件驱动的架构定制同步过程的能力.您能够提供自定义脚本为任何特殊事件指定相应处理方法.MobiLink 提供了非常精细的控制:比如说,在涉及100个表的同步过程中,差不多有数千个不同的事件可用.当然,大多数事件无需脚本,采用默认操作即可:在本案例中,为以下事件编写了自定义脚本: 事件名称 脚本用途 upload_insert 为每一个表指定如何处理每一个已上传的插入 upload_update 为每一个表指定如何处理每一个已上传的更

SQL Anywhere Studio的主要特点及组件

SQL Anywhere Studio 是一个用于服务器.桌面.移动.嵌入式和远程办公环境的数据管理和同步解决方案.SQL Anywhere 的主要特点--小如指印.企业级特性.出色的高性能.方便易用--已成为成千上万家公司的首选,它们的应用没有运行在数据中心. 以下是 SQL Anywhere 的几个组件: 1.Adaptive Server Anywhere:它是一个既能适应手持设备又合适企业级别安装的数据库管理系统.Adaptive Server Anywhere 拥有出色的高性能,简单易

解析SQL Anywhere Studio与.NET 集成

开发人员能使用.NET 提供的大多数服务将 SQL Anywhere Studio 的功能增加到应用中. 1.通过.NET 访问数据:SQL Anywhere 实现了 ADO .NET 命名空间,提供访问关系型数据的接口. 2.SQL Anywhere 也提供 web 服务.可被 Microsoft .NET 和其他通过因特网协议分布访问基于 XML 数据机制的企业集成平台调用. 3.让数据随处可得:SQL Anywhere 提供的 MobiLink 数据同步让数据在偶尔连接网络的环境中"永远可

SQL Anywhere Studio数据库管理和复制

可以使用 SQL Anywhere Studio 给整个组织中的工作组.移动和嵌入式数据库系统发送信息. SQL Anywhere Studio 包含以下组件. 关系数据库系统 Adaptive Server Anywhere 产品核心的关系数据库是基于事务的SQL 数据库,适用于个人和工作组. Adaptive Server Anywhere 可以在多种操作系统上运行,包括各种 Windows 和 UNIX 操作系统以及 Novell NetWare 操作系统.运行该数据库的硬件包括多 CPU

SQL Anywhere Studio产品中的应用程序

本文介绍在 SQL Anywhere Studio 产品中与 Adaptive Server Anywhere 一起提供的一些数据库应用程序.这些应用程序可帮助您设计.建立和管理数据库. 您安装哪些组件取决于以下几个方面:正使用的操作系统,在安装软件时所做的选择,以及是独立接收了 Adaptive Server Anywhere 产品还是将 Adaptive Server Anywhere 作为其它产品的一部分安装. 例如,如果您收到的 Adaptive Server Anywhere 是其它产

大神求救sql management studio数据库中导入多个xls

问题描述 大神求救sql management studio数据库中导入多个xls 数据库中有多个表,如何将一个xls文件中的多个表导入数据库中对应的表中 用的是sql management studio 解决方案 只能用程序读取一个个表,然后来导入.

sql server-用VISUAL STUDIO与SQL SERVER做一个系统

问题描述 用VISUAL STUDIO与SQL SERVER做一个系统 用VISUAL STUDIO与SQL SERVER做一个系统,要求有三张表,有查.插.删.改的功能 解决方案 参考http://www.cnblogs.com/csonezp/archive/2012/12/27/2835472.htmlhttp://download.csdn.net/detail/lingtao129/5110574http://wenku.baidu.com/link?url=mmq0W7vkMKN3l

SQL Server Management Studio不能安装SQLServer 2008 R2的问题

环境 SQLServer 2008 R2 + Visual Studio 2010 + SQLManagementStudio_x86_CHS 问题描 述 编程开发难免会用到SQLServer或者VS2010,虽然现在很少做C/C++/C#的开发了.以前我安装SQLServer 2008 R2和Visual Studio 2010的顺序是这样的,先安装SQLServer 2008 R2,然后安装Visual Studio 2010, 这样是不会出现任何问题的.寒假心血来潮,偏偏我又是个叛逆心理很