当前,移动应用浪潮正以迅猛的速度席卷着世界的每个角落。尤其,移动应用正越来越多地出现在企业关键业务的各个环节——办公、销售、物流、财务、客服、流程管理等等。但与此同时,众多的系统平台和移动设备、广泛的移动应用也给企业数据管理带来了全新的挑战。据Kelton Research近期发布的一份调查结果显示,在受访的IT经理中,90%的受访者计划在2011年实施全新的移动应用,其中接近一半的IT经理认为成功管理移动应用将成为他们的首要任务。面对移动应用的多样化、分散化给企业数据管理带来的巨大压力,企业迫切需要一个功能强大的、安全可靠的移动数据管理解决方案来帮其分忧。
事实上,作为企业移动化领域的公认领导者,Sybase推出的移动数据管理和同步解决方案——SQL Anywhere已经满足了企业移动数据管理的诸多要求。借助这一解决方案,移动员工可立刻通过智能电话或其它移动设备随时随地访问公司的后台数据,提高工作效率。
SQL Anywhere介绍
SQL Anywhere是Sybase公司推出的一款能够提供数据管理和企业数据交换技术的综合程序包,它可以帮助工作人员为服务器环境、桌面环境、移动环境以及远程办公环境快速开发由数据库驱动的应用程序,并能为开发人员提供处理复杂前端环境的技术、支持他们更轻松地架构应用程序的底层数据管理、同步、安全和远程支持。
2010年,SQL Anywhere两度创新——3月,Sybase推出具备先进的空间数据功能的全新版本,7月,Sybase推出SQL Anywhere® 12,该版本拥有新的、重要的增强功能,包括支持空间数据的存储和同步、支持iPhone设备和大型同步环境,以及全新的自我管理特性。优化的SQL Anywhere适用于那些对现场IT支持要求很少或甚至无要求、在传统数据中心环境之外运行的任务关键型数据库应用。这一版本的推出使得Sybase成为业界首家为iPhone、Blackberry和Windows Mobile智能手机设备提供数据库和同步支持的数据库供应商,也是首家在移动数据库和同步平台中提供空间数据支持的供应商。
对于在传统的数据中心之外运行的应用来说,SQL Anywhere是领先的数据管理和企业同步解决方案。从一开始,SQL Anywhere就被设计成具备企业级功能、开箱即用的高性能和强大同步能力的数据库解决方案,能实施成为网络、嵌入式以及移动环境中的任务关键型数据库。
传承了简单易用、自我管理和轻松嵌入的特质,最新版本的SQL Anywhere 12持续深化这些特质,并在开发人员生产力、高性能的开箱即用、可扩展性和监控和高级数据同步方面提供了关键的新特性,以及添加到MobiLink和UltraLite中的技术新功能。
SQL Anywhere 12四大关键新特性之一——提升开发者效率
最新版本的数据库和同步解决方案——SQL Anywhere 12新增了包括空间数据在内的诸多新功能和新选项,比如空间查看器、空间数据类型、方法、构造器和函数、空间向导等,这些功能使其在SQL Anywhere数据库、UltraLite数据库以及MobiLink同步技术中支持空间数据,大大地提升了开发人员的工作效率。
- 空间数据
空间数据是在定义的空间中描述物体位置、形状和方向的数据。SQL Anywhere 12支持对空间数据的存储和查询,应用程序开发人员可利用数据库服务器新增的空间数据功能使得空间信息与数据联系起来。
在SQL Anywhere中,空间数据是通过2D几何方式的点和曲线(线段、和曲线段)以及多边形来展现的。例如用来表示门店的表可以将门店的位置存储成点,或将派送区域存储为一个多边形。比如在SQL的空间类型中,ST_Point代表一个点、ST_Polygon用来表现任意多边形。通过这个模式,应用程序能在地图上显示所有门店的位置,或者查询派送地址。
空间数据在很多情况下都是相当有用的,比如高效的人员派遣和基于位置的库存追踪。开发人员来可利用这一功能实现完美的空间地理解决方案或通过支持新的地理信息功能来改进已有的应用程序。
- 空间查看器
在Interactive SQL中新增了“空间查看器”(Spatial Viewer),这一查看工具可以支持用户查看空间几何图形,实现在查看器的顶部执行查询,在查看器的底部呈现为图片的功能。当在Interactive SQL中查看结果数据时,用户还可以通过新增的“空间预览”选项页用可缩放的矢量图(SVG)方式实现对几何图形的预览。
- 空间数据类型、方法、构造器和函数
SQL Anywhere 12引入了新的空间数据的类型、方法和构造器,从而能够支持用户对空间数据的访问、建模和分析。在访问和操纵空间数据时,许多空间兼容的函数被模仿成可与别的产品兼容的普通SQL函数,这此函数成为SQL Anywhere中提供的空间方法和构造器。
- 空间向导
Sybase Central有两个用于支持空间数据功能的向导,即“创建空间参照系统”(The Create Spatial Reference System)向导和“创建度量单元”(The Create Unit Of Measure)向导。“创建空间参照系统”向导支持开发人员创建新的空间参照系统。“创建度量单元”向导支持开发人员使用空间数据创建新的度量单元。
- UltraLite性能的提升
作为一款紧缩版的关系型数据库,UltraLite拥有许多SQL Anywhere 所拥有的特性和功能。UltraLite可被作为SQL Anywhere独立嵌入式解决方案的一部分进行安装,从而帮助企业实现移动数据的管理。
UltraLite提供移动化企业数据的功能。在经过部署成为MobiLink客户端之后,即可实现企业移动数据的同步解决方案,用户通过这一方案能够及时、可靠地传送任务关键型的信息,并能够随时记录并访问他们需要的数据——即使在与企业网络没有直接连接的环境下也可完成。
目前,UltraLite已在Apple iPhone上实现了运行,其应用程序开发也完全支持运行在Mac OS X操作系统下的Xcode工具包,它为用户部署移动解决方案提供了更为广泛的设备选择空间。与SQL Anywhere一样,UltraLite也支持空间数据的存储和处理。结合MobiLink技术,用户就能将企业库中的空间数据同步至运行在智能手机上的UltraLite数据库中。
不仅如此,在加密安全方面,UltraLite数据库也有大幅提升,包括在64位Windows上支持FIPS 140-2认证加密。未来,UltraLite数据库的加密还将使用256位AES密码套件。
- 开发人员的其他效率提升
一直以来,SQL Anywhere持续致力于改进其所支持的技术,令开发人员从中受益。为了便于Oracle和MySQL的开发人员移植,SQL Anywhere 12还提供了对序列的支持,同时也可通过一条语句来创建或替换数据库对象,从而减少代码行数并提升开发周期。SQL Anywhere 12同样提供了对最新Microsoft Visual Stdio和.NET框架技术的支持,有了这一支持,应用程序开发人员能够立即使用Visual Studio 2010和.NET Framework 4.0,包括ADO.NET实体框架来实施SQL Anywhere数据库。
SQL Anywhere 12四大关键新特性之二——开箱即用的高性能
最新版本的数据库和同步解决方案——SQL Anywhere 12新增了服务器线程自动调优、列统计管理等诸多新特性,这些新特性不仅大幅提升了数据库的性能,还有效地加快了查询速度、优化了资源利用率。
- 服务器线程自动调优
在指定时间内,SQL Anywhere 12能够使用多线程来执行一系列的活动任务,即那些在数据库服务器内正通过线程或(或纤程)执行的任务。它有可能是正在执行访问计划操作符或执行一些其他有用的工作,也可能是被阻塞而等待资源(例如I/O操作,或某行上的锁)或是准备执行但未排程并需要等待可用线程(或纤程)的任务。
SQL Anywhere 12能够同时执行的活动任务数量取决于数据库服务器线程数量和计算机上的逻辑处理器数量。最大的线程数量也叫多元程序级别 (MPL),它能够在很大程度上影响查询的性能。只有对应用程序的负载情况进行实验,才能够决定最优化的MPL。SQL Anywhere 12的数据库服务器线程自动调优的特性恰好简化了这一过程,它能够按照需求对工作任务进行动态地增减,从而改善其吞吐量并智能地适应负载环境的改变。
- 列统计管理
为了加快查询执行并提高性能,目前,SQL Anywhere 12的数据库服务器不仅能够收集列统计信息,还能够查找其中的不精准信息并对其进行自动修正。这一功能通过优化器得以实现,并基于在数据库中存储的列统计信息来选择最佳的优化策略。
在考虑每个访问计划时,优化器需要对结果集的大小即行数进行预估,并通过预估的结果集的大小来估算每个操作符对磁盘的访问和CPU的成本,例如在计划中使用的Join方法、Group By方法或顺序扫描等等,也就是说,列统计是优化器用来估算谓词选择度的主要数值。因此,正确估算访问计划的成本至关重要,精确地对列统计值进行分析有助于维护数据库的高性能。
- 远程数据访问
作为包含了元数据的本地表,代理表可访问远程数据库服务器上的表,就如同访问本地表一样。它支持用户直接从各种关系型和非关系型的数据源中导入数据,也可以跨数据库进行数据查询。
SQL Anywhere 12通过多项对代理表性能的提升从而改善了远程数据访问的操作,最值得一提的是,通过在内存中增加了缓存,它不仅保证了更多数据的驻留,还改进了数据类型的转换,从而能更好地利用计算资源。
- HTTP服务器连接池
对于需要对数据库服务器进行多个、简短地连接的应用程序来说,连接池能够很好地提升应用程序的性能。当应用程序首次尝试连接数据库时,它首先会检查目前连接池已有的连接中是否存在与该用户指定的参数相同的连接,如果找到所匹配的连接,应用程序就会使用该连接,否则,将会创建一个新连接。在断开连接时,该连接返回至连接池中,在应用程序重新连接时可进行重用。
新增的连接池(即ConnectionPool,简称CPOOL)的连接参数可用来控制客户端连接池的行为。在应用程序使用同一连接串创建指定数目的连接时,连接就被缓存起来。在缺省的情况下,应用程序必须使用相同的连接串创建5个连接之后才能进行缓存。连接名每次都是唯一的,但是其他连接参数必须相同,这样缓存的连接才能被重用。
针对HTTP服务器自动连接池的性能提升能够支持其处理更大的HTTP流量,并能为web服务提供更高层级的并发度。新的选项还可支持用户指定通常的数据库连接阈值、闲置连接在连接池中保持的最长时间以及智能移除闲置数据库连接等等。
- 其他性能的提升
与此同时,SQL Anywhere 12还包含了更多的性能提升——即时物化视图不仅支持外连接,还可支持应用程序对大量数据进行更快速的查询分析。此外,SQL Anywhere在索引性能、大数据库验证和请求俳优等方面都进行了卓越的改进。由于SQL Anywhere 12改善了ORM生成的查询优化,使用对象关系映射(ORM)技术的程序员将会在其中获得更好地体验。
SQL Anywhere 12四大关键新特性之三——可扩展性与监控
最新版本的数据库和同步解决方案——SQL Anywhere 12针对处理大规模信息的系统数据可用性进行了大量改进,除了新增对SQL Anywhere数据库健康度和性能的监控功能以外,还新增了对MobiLink的监控。
- 只读横向扩展配置
只读横向扩展是SQL Anywhere 12的一项新配置,它能够支持将报表或其他仅需要对数据库进行读取的操作进行卸载,并可将负载分割到多个不同的数据库服务器上。利用这一功能,SQL Anywhere 12能够使应用程序获得更好的可扩展性。
SQL Anywhere 12的横向扩展系统由根节点(root node)和拷贝节点(copy node)组成,根节点之下拥有一个到多个子拷贝节点,根节点是唯一能接受读取和写入请求的数据库服务器,它可能是一个单独的数据库,也可能是数据库镜像系统。拷贝节点则是运行了数据库拷贝的数据库服务器,也可以其他拷贝节点的父节点,但它仅仅支持读取访问。
一旦启动了其他的拷贝节点,根数据库服务器就开始将事务日志页面发送给树中的拷贝节点以及其他被定义为子节点的节点,只要这些节点之间存在连接并已为接收日志页面做好准备。通常情况下,页面发送不需要等待响应,但是,根数据库服务器偶尔会请求应答,以确保拷贝节点收到的异步请求是否超过它所能处理的极限。
在拷贝节点接收事务日志页面时,这些页面被写入磁盘的同时还将被发送给拷贝节点的子节点。若父节点检测到子节点不可用,拷贝节点将会停止发送进程。若子节点重新启动,拷贝节点则将请求子节点中没有的事务日志页面,父节点会继续将页面推送给这些子节点。
- 数据库镜像配置
SQL Anywhere 12支持使用一个只读连接访问运行在镜像服务器上的数据库,配置了只读横向扩展的数据库镜像能确保根节点的可用性。通过这样的方法,只读横向扩展系统的根节点就由逻辑上的主服务器、镜像服务器和判定服务器组成,而不是一个单一的数据库服务器。一旦在镜像系统中启动了数据库服务器,其余的数据库服务器就能通过访问参与镜像的服务器来维护只读数据库的拷贝。
当前主服务器的子节点、当前镜像服务器的子节点或其他拷贝节点的子节点都可以被当作拷贝节点而被数据库镜像系统所使用,这些拷贝节点通过其父节点来获取事务日志页面。与镜像节点不同的是,由于拷贝节点的状态不会影响数据库服务器承载数据库的决定,所以它没有状态信息文件。
事实上,在数据库镜像上实施只读横向扩展配置,能够显著提升新的及已有的节点环境的高可用性。
- 新设计的监控用户接口
SQL Anywhere 12的监控器工具能够收集在其他计算机上运行的SQL Anywhere数据库和MobiLink服务器的表现和性能数据,而其它电脑可以通过web浏览器来访问监控器。这一工具能够支持管理员监控大量的服务器并对应警告。
不仅如此,最新版本的监控器工具还引入了许多新特性——首先,监控器增添了基于仪表盘的全新用户界面,仪表盘上包含了用来显示数据、警告和资源信息的窗口小部件(widget)。用户可以创建新的窗口小部件(widget),并可随意进行移动以及最大化和最小化的处理;第二,用户可以使用监控器来监控MobiLink服务器集群和中继服务器集群,同样也包括SQL Anywhere数据库和MobiLink服务器;第三,监控器实现了SQL Anywhere资源列表导入、备份警告功能,即可将SQL Anywhere的资源列表创建成为.csv文件并将该列表导入监控器中,并可对在指定时间未进行成功备份的某项SQL Anywhere资源发起备份警告;另外,管理员还可在监控器上执行未排程的维护、可关闭一个资源数据库连接、并可通过“消息日志”(Message Log)和“异常报告”(Exception Reports)来监控监视器,实现排错功能等等。
通过对任务关键型的服务器提供深入的健康信息,服务器监控器极大地改进了管理任务。
SQL Anywhere 12四大关键新特性之四——高级数据同步
SQL Anywhere 12在同步(MobiLink)方面的提升包括了性能改进、更轻松的同步本地数据库和远程数据库以及更好地支持服务器集群。
- 性能改进
最新版本的MobiLink支持动态内存缓冲,同步服务器自动增长其缓冲最高值可以达到可用内存地址的60%,并在系统的其他进程需要更多内存时对其进行释放,通过这项技术,当向内存缓冲输入的数量增加时,较大的缓冲可防止数据向磁盘交换。
在低内存的环境下,SQL Anywhere 12表现更加优秀。比如,当已有连接正在等待访问dbmlsync锁定的数据库资源时,数据库引擎可以放弃对于远程数据库的MobiLink客户端的连接,这就意味着其它连接无需等待同步的完成就能进一步开展工作。
- 集中管理远程数据库
通过使用SQL Anywhere 12,系统管理员可使用一个管理点同时管理多个包含了MobiLink同步的远程数据库及整个系统,从而简化了数据交换环境,并使其自动化、控制度更高。
集中管理远程数据库的同时还可执行以下任务:实现应用程序数据库与MobiLink进行同步时的集中控制、将模式改变推送至应用程序数据库、全面诊断特定应用程序数据库或同步系统的问题、上载日志文件等。
通过在统一数据库中控制并维护本地数据库的模式,IT人员能够充分体验到同步时的性能提升。另外,集中的管理点能支持管理员快速鉴别并解决在同步环境中遇到的问题。
- MobiLink 12管理的新图形化设计
为了支持对远程数据库的集中管理,版本12中重新设计了MobiLink插件,并可使Model和Admin这两种MobiLink模式在新插件中整合应用。现在,用户不仅能够使用MobiLink插件来创建同步项目,包括统一数据库、组、同步模型、远程任务以及网络共享,同时,旧有的同步模型也能被导入到同步项目中。另外,Sybase Central中提供的新的中继服务器(Relay Server)插件,还能支持配置后端集群和服务器。
- 服务器集群改进
MobiLink判定器确保在服务器集群中仅有一个MobiLink服务器作为主服务器运行。新的远程ID锁定逻辑用来防止相同的远程ID进行冗余同步。简化了服务器集群配置,因为MobiLink服务器不再需要显式指定在集群中运行。
- 安全性
MobiLink服务器和客户端现在可支持256位AES的RSA或ECC密码套件以及RFC 4492版本的ECC密码套件。
结语
目前,已有1000多万名用户从独立软件开发商所部署的应用中受益。这些用户依赖SQL Anywhere嵌入式数据库服务器来驱动其业务关键系统。SQL Anywhere 12新增的创新功能,正在满足多个垂直市场中解决方案提供商不断深化的需求。“20,000多位开发人员倾心于SQL Anywhere的嵌入式及最小化数据库管理带来的便捷性,这是他们的秘密武器。”IT Market Strategy首席分析师Merv Adrian如是评价。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
![TechTarget微信公众号二维码](/wp-content/uploads/res/images/spriteimg/ttweixin.jpg)
TechTarget
官方微博
![TechTarget中国官方微博二维码](/wp-content/uploads/res/images/spriteimg/ttweibo.jpg)
TechTarget中国
作者
相关推荐
-
OpenWorld18大会:Ellison宣布数据库的搜寻和破坏任务
在旧金山举行的甲骨文OpenWorld 2018大会中,甲骨文首席技术官(CTO)兼创始人Larry Elli […]
-
ObjectRocket着力发展Azure MongoDB服务
MongoDB吸引了微软公司的注意力,微软公司计划针对运行于该公司2017年发布的Azure Cosmos D […]
-
数据库和数据仓库的区别在哪儿?
目前,大部分数据仓库还是用数据库进行管理。数据库是整个数据仓库环境的核心,是数据存放的地方和提供对数据检索的支持。
-
如何使用服务来平衡Oracle RAC 数据库工作负载
为不同的应用程序配置不同的服务,DBA可以更有效地平衡集群工作负载,在Oracle RAC数据库环境下实现更好的应用程序性能。