Azure SQL Federation(联合)
说Federation(联合)之前,先说下,表的垂直分割 和 水平分割
-------------------------------------------------------------------水平分割-----------------------------------------------------
具个例子吧:比如,每个人都有身份证号上面有你的信息,那么肯定有个一张表存放这些信息,中国13亿人的身份证信息,不可能全部放在一张表中,
如果放在一张表中,查询会比较慢,现在怎么办了????
我们可以把表分成9张,分别为 table1 ,table2,table3,table4,table5......
如果增加一条数据,可以根据ID不同,而插入不同的表,
例如: ID%10:表示ID取10的余数= 0~9,插入的时候 insert into 表名+ID%10的值()
如果ID%10=2,那么插入: insert into table2()
查询也是样的:
如果传过来一个ID,获取ID后 ,ID%10=2
select* from tabl2 where id=id
-------------------------------------------------------------------垂直分割-----------------------------------------------------
有些表的数据并是很多,单字段却很长,表占用空间很大,执行检索时需要大量的I/0,可能会影响性能。
这个时候就需要把大的字段放在另一张表中,并且和原表是一对一的关系。
这个就不画图了,相信聪明的你一定懂的。
现在再介绍一下数据库:可扩展性模型,有两种扩展模型:向上扩展 和 向外扩展
向上扩展:就是一个数据库位于一台服务器,这种情况下很难处理较大的负载,如果你需要向上扩展你就要加 CPU RAM,当服务容量不够时你就需要引入跟好的机器,
但是机器种有一个灵界点。应此向上扩展很难处理较大的负载。
向外扩展:选择跟多数据库,跨多个独立节点分散那些数据库,这种模式跟经济,向外扩展典型就是水平分区了,即多个独立节点分割数据库,
这就是Azure SQL Federation 发挥优势的地方。
举例:
比如你在网上卖月饼,中秋来了,这意味这你需要买跟好的硬件,才能应对,但是中秋过来怎么办,就出现,过度供应了,
比如: Azure SQL Federation 就不会出现这些情况,应为他是弹性的,按需扩展,收缩,根据使用付费,这是联合的基本原理。
------------------------------------------怎么创建联合了----------------------------------------------------------------------------
这些是联合理论:
Federation
我们熟悉的 Table View Proc 这些对象都包含在一个数据库界限之内。
联合与任何其他对象一样使用Create Federation 语句 Federation_Name
但区别在于 一个联合是一个特殊对象,该对象扩展到数据库界限以外,因为随着扩展,他
需要知道我们
要扩展到不同联合成员。
Federation Root
联合跟是一个中央存储库 用于存储与向外扩展数据分布有关的信息
他只是一个数据库,
联合跟包括联合对象,我们可以创建联合对象
Federation Member(联合成员)
联合成员是存放数据部分的物理容器,联合成员是实际物理数据库,他们由
Sql Server管理,但他们不再Sql Server Management Studio 中数据库列表中
Federation Key
联合键用于定义数据分发
是客户ID,产品ID,订单ID
联合键定义如何分发和分割数据
现在联合键是 int bigint guid varbinary
Atomic Unit
原子单元代表一个联合的单一实例
例如:客户会有相关的记录:比如
客服地址,客服电话,客服订单
因此一个联合表具有同一联合键值对所有行代表一个原子单元
例如:如果我有一个客户ID是10 所有相关记录:比如
客户电话,客户地址,客户订单,都在一个原子单元中,因为
他们与客户表中的值为10的客户的ID相关,所用这些相关的记录
构成一个原子单元
Architecture Cont.(联合表和引用表)
联合表是我们要在其上进行分区的表
例如:客户电话,客户地址.........
我们要调用这些联合表
引用表是不进行分区的表
我们不会分割其中的数据 但引用表是静态的表
其中的数据不会有太大改变:比如状态 或 邮编
他们是非联合的表
担当我们分割数据并创建跟多联合成员时,
这些表复制到每个联合成员中,
他们不是联合的,因此我们不分割其数据,
但整个表复制到每个联合成员中
》1.创建数据库服务器
》2.用本数据库连接:连接字符串在这里
》3.创建一个数据库
注意;在master下面创建
3》在“可用数据库”中,选择你在上一过程中创建的联合根
Azure SQL Federation(联合)的更多相关文章
- [转]Azure 表存储和 Windows Azure SQL Database - 比较与对照
本文转自:https://msdn.microsoft.com/library/azure/jj553018 更新时间: 2014年10月 作者:Valery Mizonov 和 Seth Manhe ...
- PowerShell 操作 Azure SQL Active Geo-Replication 实战
<Azure SQL Database Active Geo-Replication简介>一文中,我们比较全面的介绍了 Azure SQL Database Active Geo-Repl ...
- 迁移 SQL Server 数据库到 Azure SQL 实战
最近有个维护的项目需要把 SQL Server 2012 的数据库迁移到 Azure SQL 上去,迁移过程可谓一波三折,故在此分享这次迁移中碰到的点点滴滴,希望对朋友们有所帮助. 文章来源:葡萄城产 ...
- Azure SQL Database (19) Stretch Database 概览
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- Azure SQL Database (20) 使用SQL Server 2016 Upgrade Advisor
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- Azure SQL Database (21) 将整张表都迁移到Azure Stretch Database里
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- Azure SQL Database (22) 迁移部分数据到Azure Stretch Database
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- Azure SQL Database Active Geo-Replication简介
笔者在<迁移SQL Server 数据库到 Azure SQL 实战>一文中,介绍了如何把一个本地版的 SQL Server 数据库迁移到 Azure SQL Database.迁移虽然顺 ...
- Azure SQL Data Warehouse
Azure SQL Data Warehouse & AWS Redshift Amazon Redshift Amazon Redshift 是一种快速.完全托管的 PB 级数据仓库,可方便 ...
随机推荐
- [LeetCode 题解]: Valid Parentheses
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the inpu ...
- vector容器(一)
一. Vector简要描述 vector是C++标准模版库STL提出的一种顺序存储结构,之所以称之为“容器”,是因为vector是一个模板类,它允许我们重复利用已有的实现构造自己的特定类型下的数据结构 ...
- Replication--数据库镜像阻塞复制日志读取器的解决的办法
问题描述:在同一数据库上使用镜像和复制,为保证镜像切换后,复制还能继续,因此当镜像断开或暂停时,复制日志读取器会被阻塞直到日志被同步到镜像从服务器端(无论异步还是同步).日志状态显示:复制的事务正等待 ...
- Windows store app[Part 2]:全新的File System与Uri不匹配的问题
在Win 8 App的安全沙箱内,除了使用文件选取器FileOpenPicker外,没有其他办法调用某个盘符的数据. 全新的Storage命名空间,借鉴了IOS与Android的设计. 下面引用一个图 ...
- WEB应用从服务器主动推送的方法
1.短轮询 2.长轮询 3.iframe 4.sse 5.Web Scoket
- IE6 IE7 IE8 FF兼容符号
2.区别IE8.IE9 一般来说,我们写的结构比较好的时候,IE8/9下是没区别的.所以可能很少人关注只有IE8或只有IE9才识别的css hack. 因为IE8及以下版本是不支持CSS3的,但是我们 ...
- Linux centos 7安装
Linux 安装 本章节我们将为大家介绍Linux的安装. 本章节以 centos6.4 为例. centos 下载地址: 可以去官网下载最新版本:https://www.centos.org/dow ...
- UIButton的探秘
原文链接 sizeToFit()和sizeThatFits(_:) sizeToFit()会调用sizeThatFits(_:)方法,将现在的frame作为参数.然后根据函数返回的结果更新view. ...
- java学习笔记_多态
多态:父类的变量可以引用子类的对象 引用: Student s1 = stu; s1.setScore(200); 1.一个对象可以有多个引用,可以有多个变量操作同一个对象 2.当一个对象没有任何 ...
- P4304 [TJOI2013]攻击装置 最小割
$ \color{#0066ff}{ 题目描述 }$ 给定一个01矩阵,其中你可以在0的位置放置攻击装置. 每一个攻击装置(x,y)都可以按照"日"字攻击其周围的8个位置(x-1, ...