博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Azure SQL Database (19) Stretch Database 概览
阅读量:6619 次
发布时间:2019-06-25

本文共 3209 字,大约阅读时间需要 10 分钟。

 《》

 

   

     

     

      

 

  Stretch Databse使用场景:

  笔者有一个快消品用户,每天产生几百万笔订单数据。这些订单数据保存在一个运算能力非常强大的数据中心物理机里。

  对于这些订单数据来说,分为两类:

  1.热数据:最近1个月产生的订单数据。

  对于热数据来说,企业需要对这些数据进行统计分析,方便进行查询。

 

  2.冷数据:过去1-3年产生的订单数据。

  在传统IDC运维中,经常会对冷数据进行备份归档,比如采用磁带库等。

  但是归档的数据其实是离线状态的,也就是说,如果我们需要对这些冷数据进行查询的时候,还需要从磁带库中将数据恢复到数据库里,再进行查询。

  在这种情况下,我们就可以使用Azure SQL Stretch Database功能,将数据表中的某些数据行(或者所有数据行),迁移到Azure SQL Database里

  

  采用Azure SQL Database Stretch Database的优势有以下几点:

  1.降低冷数据的查询成本

  Stretch Databse支持把传统SQL Server数据库的温数据和冷数据,迁移到云端数据库中。

  不同于传统的磁带库备份,你的数据库备份内容都是一直在线的,可以对云上的冷数据执行读取操作。

  相比传统IDC保存这些冷数据来说,使用云上的Stretch Database成本更低。

 

  2.无需修改查询语句和应用

  使用Stretch Database的时候,不需要修改查询语句和应用。

  当我们执行查询语句的时候,本地的SQL Server自己会决定是在本地执行查询语句,还是在云端执行查询语句。用户无需了解数据是保存在本地和云端。

    

 

  3.降低本地数据运维成本

  因为大部分的温数据和冷数据都保存在云端,我们在本地数据中心,不需要购买大量的存储以保留这些历史数据。

 

  4.保证数据安全

  本地SQL Server支持的安全特性,比如Row Level Security (RLS)和其他安全安全特性,在云端Stretch Database也同时支持。

 

  在以下场景中,我们需要使用Azure Stretch Database:

  (1)需要对历史数据保存很长一段时间

  (2)有时需要对历史数据进行查询

  (3)前端应用需要访问这些历史数据,且前端应用不会进行重构

  (4)减少购买存储的费用

 

  

  哪些数据库支持Azure Stretch Database?

  我们建议用户使用SQL Server 2016数据库,来启动Stretch功能。

  另外,我们建议下载,来定义哪些数据表可以迁移到Stretch Database。

  

   

  Stretch Database限制:

  

 

  约束:

  需要迁移的数据,如果包含Unique约束和Primary Key约束,则这些约束不会被启用

  Uniqueness is not enforced for UNIQUE constraints and PRIMARY KEY constraints in the Azure table that contains the migrated data.

 

  DML操作:

  1.可以迁移到云端(但未迁移)的SQL数据(表Table或者试图View),或者已经迁移到Stretch Database云端的SQL数据,无法执行UPDATE和DELETE操作。

  2.不可以在linked server上对已经stretch的表执行插入操作

  You can't INSERT rows into a Stretch-enabled table on a linked server.

 

  索引:

  1.无法对已经Stretch的表创建索引

  2.对本地SQL Server的过滤操作,不会传播到Azure SQL Stretch Table

  Filters on SQL Server indexes are not propagated to the remote table

 

  对Table的限制:

  1.Table不能超过1023列或多于998个索引

  2.不能包含FileStream数据

  3.不支持Change Tracking或者Change Data Capture

  4.内存优化的表

 

  不支持的数据类型:

  1.text, ntext and image

  2.timestamp

  3.sql_variant

  4.XML

  5.CLR data types including geometry, geography, hierarchyid, and CLR user-defined types

 

  不支持的列的类型:

  1.Default constraints and check constraints

  2.外键表所在的主键表

  Foreign key constraints that reference the table. In a parent-child relationship (for example, Order and Order_Detail), you can enable Stretch for the child table (Order_Detail) but not for the parent table (Order).

 

  不支持的索引:

  • Full text indexes

  • XML indexes

  • Spatial indexes

  • Indexed views that reference the table

  

  

 

  Stretch Database 性能指标

  Stretch Database提供不同级别的性能指标,命名为DSU (Database Stretch Unit)。一般来说,DSU越高,则Stretch性能越好。

  Stretch Database已经正式发布。即日起至2016年9月1日,用户可享受预览版折扣价 ( 即按标准价格的 50% 计费 )。9 月 1 日起将恢复按标准价格计费。

性能级别DSU 预览版折扣价格(人民币) 标准价格(人民币)
100 11.26 / 小时 22.51 / 小时
200 22.52 / 小时 45.02 / 小时
300 33.78 / 小时 67.53 / 小时
400 45.04 / 小时 90.04 / 小时
500 56.3 / 小时 112.55 / 小时
600 67.56 / 小时 135.06 / 小时
1000 112.6 / 小时 225.1 / 小时
1200 135.12 / 小时 270.12 / 小时
1500 168.9 / 小时 337.65 / 小时
2000 337.8 / 小时 450.2 / 小时
3000   675.3 / 小时
6000   1350.6 / 小时

 

  除了不同的DSU对应不同的价格以外,Stretch Database还收取数据库的存储容量费用:

  数据存储收费基准为¥1.441/GB/小时。数据存储包括 Stretch Database 和备份快照的大小。所有 Stretch Database 都有 7 天的增量备份快照。

  注意:存储事务不收费。您只需为存储的数据支付费用,无需支付存储事务的费用。

  

 

  参考资料:

本文转自Lei Zhang博客园博客,原文链接:http://www.cnblogs.com/threestone/p/5822962.html,如需转载请自行联系原作者

你可能感兴趣的文章
阿里蒋晓伟谈流计算和批处理引擎Blink,以及Flink和Spark的异同与优势
查看>>
快速掌握Redis——第二招:安装
查看>>
从Jetty、Tomcat和Mina中提炼NIO构架网络服务器的经典模式(一)
查看>>
Windows 10之 隐藏“此电脑”窗口的6个额外文件夹
查看>>
15.1异常处理
查看>>
HAProxy负载均衡web服务
查看>>
初学者学习Linux之NFS
查看>>
Rabbitmq学习(一) Rabbitmq初探
查看>>
8月第一周B2B类网站排名:阿里巴巴持续领先
查看>>
IDC评述网:12月下旬国内域名注册商净增量Top10
查看>>
5月第一周全球域名解析商Top15:万网升至第7名
查看>>
架构优化 - 应用,MQ Broker,业务处理分层
查看>>
3月第3周网络安全报告:被篡改.COM网站占74.3%
查看>>
Spring Security之用户名+密码登录
查看>>
java JSplitPane设置比例
查看>>
批量操作Windows域用户
查看>>
shell脚本 接受用户参数 记录一下
查看>>
健脾祛湿的中成药有哪些?
查看>>
IIS下支持下载.exe文件
查看>>
CXF WebService Hello World
查看>>