设为首页 收藏本站
查看: 835|回复: 0

[经验分享] SQL Server 2016新特性StretchDB一瞥

[复制链接]

尚未签到

发表于 2016-11-1 07:13:41 | 显示全部楼层 |阅读模式
  Stretch数据库(简称StretchDB)是即将发布的SQLServer 2016中的新特性,它支持数据库一部分存在于内部环境,另一部分存在于Azure SQL数据库云服务中。企业使用StretchDB可以“延伸”其内部部署数据库到云端,比如“热”数据可以存储在本地部署的SQL Server实例中,而“冷”数据很显然可以存储到Azure中。
  是什么原因导致我们需要把一部分数据存储在本地,而另一部分存储到云端呢?企业级存储代价是非常昂贵的,所以我们把经常使用的数据放到本地高性能存储阵列 中是有意义的,而可以把很少访问的数据放到不太昂贵的存储中(如图1)。或许,组织迈向云端的第一步就是把备份数据放到云环境中,或者使用云服务作为灾备 策略的一部分(有AlwaysOnAvailability Group Replica支持)。
DSC0000.png

图1:热数据和冷数据被分别存储在本地SQL Server和Azure数据库中。

StretchDB正是解决是否要删除数据这种困境的利器
  一些组织喜欢删除那些很少使用的旧数据(如果有的话),但是可能会有一些法规或者业务需求不允许这么做。一些组织把旧数据以不同的格式或应用归档,但是访 问这种过时的冷门数据就很困难了。通常,业务负责人不想归档,因为业务需要或者法规需要希望一定量的历史数据保留。这种组织的默认行为是把这些数据永久保 留。SAN管理员总是在想办法增加存储容量和性能。他们的默认做法似乎鼓励删除或者把数据归档。数据库团队通常总是处于这两者之间的激战之中。
  StretchDB正是解决这种困境的利器。目前,组织可以在表一级别进行选择,或者启用“远程数据归档”选项;该设置是针对表一级别的,分区级别区分还 不行。目前两种方案都是针对StretchDB的第一次迭代(如图2)。第一个场景是数据库中已经有归档表,你可以延伸它。第二种情况是单个表混合存在热 数据和冷数据,数据的区分是组织基于制定日期或者某一列定义的(比如“归档”字段标识)。
DSC0001.png

图2:查询如何处理。

  这么做不只是把数据放到云端纯粹存储那么简单。如果是这样的话,数据不能查询返回,那么远端存储数据就不会带来太多价值了。有了StretchDB,通过Azure SQL数据库的计算资源就可以过滤数据,处理向云端的请求。
使用StretchDB不需要修改应用
  在本文发布的时候,单个Azure数据库的容量限制为500GB。这个容量限制在未来基本上是肯定要增长的,尽管未来也仍然会有一个上限。但是 StretchDB可以利用分片绕过容量限制。微软公司指出,这样可以扩展Azure后端,显式提供给用户使用,支持他们延伸尽可能多的数据,满足需要。 如果一个表做了延伸,资源管理器还可以部署实现最小化数据迁移,节约流量消耗。这一点对于网络成本已经达到峰值或者非峰值速率的情况很有用。
StretchDB功能特性
  StretchDB包括以下功能:
  

  • 冷数据永远在线可用
  • 显著降低存储总拥有成本TCO
  • 低成本计算
  • 可以利用现有应用访问冷数据
  • 更容易维护性能和索引
  • 更快的备份和恢复
  • 自动管理和保护冷数据
  在新版本SQL Server发布的时候,通常会有一些新特性会相对容易实施,而且不需要应用做修改。这本身就是一种特性。SQL Server会判断数据是本地访问还是远程访问,从而采取合适的处理。正如其他任何功能一样,这些新特性也需要有一些设置,但是操作的步骤已经最小化了。 在备份和恢复方案已经最小化了数据传输和备份存储的工作。DBA使用的维护脚本都不需要修改。查询也不需要修改,因为优化器足够智能,可以对访问云端的冷 数据相应做不同的执行计划。
  此时此刻,StretchDB仍然在开发中。目标是将局限性最小化,但是通常新特性的第一轮迭代将会有一些基本的限制,比如延伸表中会有一些数据类型可能不支持。
公司可以更有效地管理存储成本
  要注意的是,远端数据我们称为冷数据。一旦数据延伸到Azure后,如果数据需要删除或者修改,这就需要有管理功能了。数据的修改会影响备份和索引。很明 显,因为数据在远端,所有在访问冷数据时会有延时。查询处理器是足够智能的,他可以理解数据是在本地,还是远端,或者是两者兼而有之。
  StretchDB使组织可以更有效地管理存储成本,把热数据放在本地,而把冷数据放到云端。客户可以定义哪些表包含有冷数据,可以整个表处理,也可以按 条件过滤(比如按指定日期数据项或者按注入“归档”列之类的标识字段过滤)。StretchDB功能对用户和开发者都是透明的,不需要修改代码就可以利用 到改功能。即使脚本和维护任务也不需要修改,因为SQL Server足够智能,它自己可以知道哪些数据在本地,哪些数据在远端。StretchDB是在单个数据库内利用本地和远端资源混合策略的一个最好的例 子。(www.sdysb.com    全讯网)

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-293973-1-1.html 上篇帖子: Sql Server的一些特别解法 下篇帖子: 1-Others (SQL, ASP, ADO) (Server Scripting)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表