首页 > 语言 > 关键词  > SQL最新资讯  > 正文

SQL Server保障数据一致性的法宝

2008-12-26 15:24 · 稿源:IT专家网

快照复制是在数据库之间对数据以及数据库对象进行复制并进行同步,以确保多个数据库之间一致性的一个法宝。简单的说,快照复制就是实现把一个数据库服务器上的数据通过网络传输到一个或多个地理位置不同的数据库服务器的过程。其实,对于快照复制,我们可以做一个形象的比喻。就是在一个数据库管理员设定的时刻,对某个数据库进行“拍照”,然后把这个照片传送给其他数据库的一个过程。如此的话,就可以保证各个数据库之间数据的同步。

通常情况下,快照复制有如下特点。

一是从快照这个名词中,我们也可以看出,照片是一个静态的过程,即只反映数据库某个时刻的状态,而不会反映数据库的一个变化过程。快照复制知识对数据库某个设定的时间的数据进行复制,而不会对一段时间内的数据更改进行连续监视。这跟其另一个兄弟“事务复制”有本质的区别。若把快照复制比喻成完全备份的话,则事务复制就是一个差异备份。

二是快照复制所需要的资源比较大。快照复制是对整个数据库进行复制,而不管其是否发生了变化。无疑,这复制的时间、传输的时间都会比较长,其耗费的服务器与网络资源也会比较多。所以,快照复制的成本是比较高的。但是,在某些特定的情况下,快照复制反而可以提高效率。如对于不经常更改当数据,或者不要求保持高同步性的数据的情况下,利用快照复制来协调多个数据库之间的数据一致性反而使比较合理的选择。

快照复制虽然是一门比较先进的技术,但是,并不是在所有应用场景中,其都可以起到很好的效果。若使用不当,快照复制技术反而会拖数据库管理员的后腿。根据笔者的经验,一般在以下情况下,最好采用快照复制。

一是当数据更改量大但是不经常发生时,可以采用快照复制。如笔者有一个客户,在全国各地都有服装门市店,各个店面的销售价格基本一致。由于经济危机的影响,在年底为了尽可能的收回现金,决定在12月24日到1月3日之间下调各个门市店的销售价格。由于他们的销售系统都是全国联网的。价格的下调需要总部的系统来完成。此时,就可以采用快照技术,让这个价格表跟各个地方的数据库同步。在价格更改完成后,复制完成的数据库快照。一般来说,某个表的数据主要是静态数据,不经常更改。当数据在一个时间发生更改时,将一个全新的数据库快照发布到服务器上,其效果会更好。

二是在某些决策支持系统中,采用快照复制技术的比较多。因为决策支持系统,他们只需要查询数据,而很少对数据进行更改。同时,往往对数据库的及时性要求也不高。如一个销售决策系统,他们可能只需要到上个月月底的销售数据,而不需要到当天的销售数据。在这种情况下,采用快照复制技术,比起其他的数据同步技术,如事务复制技术,效果会更加的好。通常情况下,在某个时期,如果允许有过时的数据副本,也就是说,对数据的及时性要求不怎么高的系统,可以考虑采用快照技术。

三是复制数据比较少的情况下,可以采用快照复制技术。因为快照复制是一次复制整个数据库,如果数据量比较大的话,则每次复制、传输的时间都会比较长。此时,采用事务复制会比较合理。其实,这跟完全备份与差异备份类似。当数据库容量比较小时,采用完全备份反而比差异备份更加实际。因为维护起来方便。

四是可以利用快照复制来实现对SQL Server数据库的异地备份。SQL Server服务器本身没有异地备份功能。往往是先在本地进行备份,然后把备份文件拷贝到其他主机上。有了快照复制的话,可以解决这个问题。即先建立一个分发服务器,然后每天晚上在空余的时候,对发布服务器进行快照复制,传输给分发服务器。如此的话,分发服务器的内容就跟发布服务器上的内容保持一致。再对分发服务器执行备份,就可以完成异地备份的策略了。

所以,通常情况下,如果企业的应用场景符合上面四种情况的话,采用快照复制的效果会比较好。反之,则就需要考虑采用事务复制等其他的数据同步技术。

在使用快照复制技术的时候,笔者还有几个善意的提醒。

一是快照复制技术可以在一定程度上实现网络数据库的功能。SQL Server数据库到现在的版本为止,都不支持数据库横向的扩展。也就是说,不主张采用多个服务器来分担主服务器的负担。微软一直强调的是服务器的纵向拓展,如增加服务器的CPU数、增加内存等等,来改善服务器的性能。使用快照复制技术可以使得数据的分布过程实现自动化,让多个服务器之间自动实现数据的同步,以适应企业不同程度的需要。当企业扩展时,可以增加额外的数据库服务器,来减轻主服务器的工作负荷并提高数据的使用效率。这也就在一定程度上实现了多服务器(网络数据库)的功能。不过这个功能有个限制,请看下面一个注意点。

二是快照复制技术基本上是单向的。也就是说,只可以从主服务器上对数据进行快照复制,然后传递给其他的数据库服务器。其他的数据库服务器只能够被动的接收主服务器过来的快照。而不能够把自己服务器的数据的变化情况反馈给主服务器。这就跟我们通常所说的网络服务器有一个本质的区别。网络服务器的话,各个子服务器上更改的数据,可以在相互的服务器上进行同步。所以,若要利用快照服务器来实现网络服务器的功能,以减轻主服务器的负荷,这里往往有一个部署上的技巧。就是对于子服务器来说,只接受查询的功能。也就是说,把一些报表生成、数据查询的任务交给子服务器来做。而把数据更新等任务则仍然交给主服务器来完成。

三是对一些数据突然变更的情况,可以采用强制复制与强制订阅。如在发布服务器上(发布服务器是快照复制中对于主服务器的专业称呼)数据发生了变更,则不管数据库管理员设置的时间有没有到,可以强制对发布服务器执行快照复制。并且把它传输到分发服务器上,强制采用更新后的数据。这就是强制订阅。强制订阅通常用在发生数据更改时必须立即发送更改到订阅服务器的这种类型的应用中。如在08年1月1日早上1点某个超市要对所有的商品价格进行调价。此时,调价完成后,就必须采用强制订阅业务,同步其他的一些价格查询服务器上的数据。当客户在查询机上查询价格的时候,查到的是其调整后的价格。这就是强制订阅的一种典型应用。但是,若数据变更比较频繁,则采用这种强制订阅的话,很可能造成系统或者网络的瘫痪。数据库管理员在这一点上要引起重视。

四是从2005以后的版本中,包括刚推出的2008版本,引入了对Internet技术的支持。通过复制,可以把数据发布到Internet上,提高了数据库中数据的使用效率。不过在Internet上复制数据时,要注意几个问题。一是要保证发布服务器和分发服务器在网络防火墙的同一端,而不能够位于防火墙的两侧,负责的话,数据复制将不会成功。二是要保证发布服务器和分发服务器有直接的连接,而并发只有互联网这一种连接方式。三是目前它支持TCP/IP协议。只有这个协议正常运行,才可以进行互联网上的复制。同时要注意的问题就是互联网的带宽问题。带宽的多少,直接影响着数据复制的效率问题。

总之,快照复制的出现,为SQL Server各个数据库之间数据的同步提供了一种捷径,是保障SQL Server数据一致性的法宝。

举报

  • 相关推荐
  • 小度首发智能硬件MCP Server,开启物理世界智能交互新时代

    小度科技正式推出MCP Server开放平台,支持开发者通过自然语言控制1800余家厂商的智能设备。该平台提供两大核心服务:小度音箱MCP Server支持设备控制、语音播报等功能;小度IoT MCP Server开放全屋设备控制、场景联动等能力。平台大幅降低开发门槛,开发者仅需简单配置即可调用API。小度已与美的、格力等1800余家厂商合作,覆盖智能音箱、智能屏等全场景设备,并打造超200万间智慧酒店客房。未来小度将持续深化MCP协议与生成式AI融合,推动智能家居向"万物AI互联"时代迈进。

  • 国内MCP服务合集平台去哪看?MCP server资源平台推荐

    ​在当今人工智能技术飞速发展的时代,AI模型与外部工具和服务的交互能力正逐渐成为推动技术进步的关键因素。今天,我们聚焦于一个新兴的、极具潜力的平台——AIbase,它为全球的AI开发者和研究人员提供了一个前所未有的MCP(Model Context Protocol,模型上下文协议)服务器集合平台,助力AI技术的进一步发展。 AIbase平台致力于整合全球优质的MCP服务器资源,为开发者提供�

  • MCP协议资源服务去哪找?国内MCP server资源网站推荐

    ​在人工智能技术飞速发展的今天,AI模型与外部工具和服务的交互需求日益增长。为了满足这一需求,一个名为 AIbase 的全球MCP服务器集合平台(https://mcp.aibase.cn/)应运而生,为开发者和企业提供了前所未有的便利和强大的功能支持。

  • 隐私为先,安心体验:探索保障Galaxy AI个性化体验的安全技术

    三星Galaxy AI通过个人数据引擎(PDE)实现个性化体验,该技术随Galaxy S25系列首次亮相。配合Knox+++增强加密保护(KEEP)技术,在设备端安全处理用户数据,确保隐私安全。KEEP为敏感数据创建独立加密空间,支持即时简报等功能,不影响使用流畅性。安全文件夹功能提供额外保护层,用户可自定义加密方式。这套系统构建了新一代移动智能安全标准,在提供个性化服务的同时保障数据本地处理,不上传不外泄,实现体验与隐私的双重提升。

  • AI日报:12306 MCP Server上线;百度推AI搜索助手Tizzy.ai;ChatGPT录音模式面向Plus用户开放

    【AI日报】今日AI领域重要动态:1)百度推出无广告智能搜索助手Tizzy.ai,整合影视资源与深度思考功能;2)12306开源火车票查询引擎上线,采用FastAPI架构实现秒级响应;3)ChatGPT向Plus用户全面开放录音功能,支持实时记录与内容总结;4)开源SaaS模板FireGEO助力快速构建现代化Web应用;5)国产工具ReadMeX可一键生成高质量GitHub文档;6)百度AI助手新增视频通话功能,支持方言识别;7)Jacky

  • MCP server资源网站去哪找?国内MCP服务合集平台有哪些?

    在人工智能飞速发展的今天,AI模型与外部世界的交互变得愈发重要。一个好的工具不仅能提升开发效率,还能激发更多的创意。今天,我要给大家介绍一个宝藏平台——AIbase(<https://mcp.aibase.cn/>),一个专注于MCP(Model Context Protocol)服务的全球集合平台,它正在悄然改变AI应用开发的格局。 平台精心挑选了全球最受欢迎的MCP服务进行推荐。这些服务经过了市场的检验,具�

  • 首届央国企数智化与转型战略成果发布会在京召开,TencentOS Server展示应用成果

    6月26日,首届央国企数智化转型战略成果发布会在京举行,发布《央国企数智化发展研究报告》等重要成果。腾讯云受邀参会,其自研操作系统TencentOS Server凭借"西游四件套"等创新技术方案获得关注。该系统已实现超1000万套部署,支撑金融、政务等行业国产化需求,具备三大优势:1)性能提升方面,CPU利用率提升15-45%,整机能耗降低5-10%;2)技术创新方面,独创qGPU虚拟化技术可降低60%硬件成本;3)生态适配方面,已完成与国产主流硬件的互认证。目前该系统已助力农业银行等金融机构实现5%-25%性能提升,并成为金融、党政领域首选方案。作为国内三家具备Linux研发能力的厂商之一,腾讯云将持续打磨技术,支撑企业数字化转型需求。

  • 全球免疫细胞治疗火热,存储免疫细胞成前瞻性健康保障

    随着免疫细胞治疗快速发展,健康管理已进入免疫细胞时代。人们不再满足于日常保健,而是前瞻性地选择储存免疫细胞,为未来健康提供保障。全球数据显示,免疫细胞储存被视为长期健康投资,中国家庭在博雅干细胞库储存免疫细胞的趋势显著增长。免疫细胞治疗通过体外培养扩增后回输体内,可增强免疫功能,在癌症、自身免疫疾病等领域展现潜力。截至2024年底,中国已登记489项细胞治疗临床试验,占全球47%,位居世界第二。政府出台系列鼓励政策,加速技术从实验室走向临床。展望未来,免疫细胞治疗有望在更多疾病领域发挥独特优势,而免疫细胞储存作为基础将迎来更广阔前景,成为连接现在与未来的健康桥梁。

  • AI驱动全域进化,金仓数据库以“融合”重构数据基座

    7月15日,电科金仓在京举办"融合进化+智领未来"主题产品发布会,推出多款AI时代数据库产品:KES V92025融合数据库具备多语法体系兼容、多集群架构等特性,性能提升30%;KEMCC统一管控平台实现跨云环境数据库管理;云数据库AI版集成高性能硬件与AI大模型;KFS Ultra智能数据集成平台支持百种数据源。中国人民大学教授王珊指出,数据库与AI深度结合已成释放数据价值关�

  • 微算法科技(NASDAQ:MLGO)研发可信共识算法TCA,解决区块链微服务中的数据一致性与安全挑战

    微算法科技(NASDAQ:MLGO)开发了TCA(可信共识算法),该算法结合可信执行环境(TEE)和有向无环图(DAG)技术,旨在解决区块链微服务架构中的数据一致性和安全性问题。TCA通过引入安全隔离的执行空间确保数据传输完整性,利用DAG结构提高数据处理效率,降低共识延迟和能耗。该技术可广泛应用于金融、供应链管理和物联网领域,实现高效安全的分布式系统。未来随着技术进步,TCA性能将进一步提升,成为构建分布式系统的重要工具。