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 级数据仓库,可方便 ...
随机推荐
- EasyUI combobox动态增加选择项
有需求需要动态的为combobox增加可选项,后来解决方案如下 html如下 <select id="workerList"></select> js 如下 ...
- Linux常用命令,学的时候自己记的常用的保存下来方便以后使用 o(∩_∩)o 哈哈
service httpd restart 重启Apache service mysqld restart 重启mysql [-][rwx][r-x][r--] 1 234 567 890 421 4 ...
- C#+MVC+EF+LayUI框架的应用(附带源码和教程)
内容: 1.该框架主要用到的技术有MVC,EF,Layer,以及Razor语法和数据库有关的操作. 2.框架二次开发(增加,删除,修改,建库,以及维护查询等) 3.框架公用库更新要求与规范 4.本框架 ...
- Major OSL changes to catch up
flat_map optimization for runtime specialization: https://github.com/imageworks/OpenShadingLanguage/ ...
- 算法 UVA 11292
***从今天开始自学算法. ***代码是用c++,所以顺便再自学一下c++ 例题1 勇者斗恶龙(The Dragon of Loowater, UVa 11292) 你的王国里有一条n个头的恶龙,你 ...
- BOI2007 Mokia | cdq分治求二维点数模板
题目链接:戳我 也没什么,其实主要就是为了存一个求二维坐标上矩形内点的个数的模板.为了之后咕咕咕地复习使用 不过需要注意的一点是,树状数组传x的时候可千万不要传0了!要不然会一直死循环的...qwqw ...
- 【程序】必看干货:Photon多人游戏开发教程
PUN介绍 http://vibrantlink.com/ 入门 Photon Unity Networking(首字母缩写PUN)是一个Unity多人游戏插件包.它提供了身份验证选项.匹配,以及快速 ...
- [CTSC2010]星际旅行
https://www.luogu.org/problemnew/show/P4189 题解 模拟费用流. 首先有一个非常好的条件,每个点的限制次数都大于等于这个点的度数. 然后我们可以从\(0\)开 ...
- PLSQL基本操作手册
第1章 用PLSQL连接Oracle数据库 PLSQL只能用来连接Oracle数据库(不象PB还可以连接JDBC.ODBC),所以必须首先安装并配置Oracle客户端. §1.1 初次登录PLSQL ...
- window phone8.1 hello,world(补交作业)
第一步,我们需要创建一个简单的hello,world程序来帮助我们了解大致的方向. 下面是这个小例子的步骤: 1.打开vs,点击 文件-新建-项目:如图: