写点什么

MIX 09:Nigel Ellis 谈 Azure SQL Data Services

  • 2009-04-08
  • 本文字数:1395 字

    阅读完需:约 5 分钟

微软架构师 Nigel Ellis 在 MIX 09 上详细展示了 Azure SQL Data Service(几周前在开发团队的博客上已经对此发布了声明)新的关系模型。在该演示中,他说随着持久化媒体集成的不断发展,数据平台已经变得越来越复杂了。基本上,数据平台是由地点、类型和服务构成的。他说到:

当前的数据平台可以处理多种数据类型:内存、多维、XML 及文件。除了基本的 CRUD 服务外,它们还提供了缓存、分析、防御、加载、备份、挖掘、集成、同步、报表及搜索等功能,同时数据的应用范围也更加广泛,这导致我们需要在更多的地方去管理数据:移动设备、桌面、服务器及超级服务器等等。

Nigel 还注意到很多数据管理都是基于策略(policy)的且有明确的意图。

Azure SQL Services 主要由以下内容构成:

  • 一个数据库即服务
  • 一些服务:数据同步、参考数据管理、商业智能及报表
  • 与本地 SQL Server 2008 的数据集成

最近 SDS 小组增加了一个熟悉的 SQL Server 关系模型,它基于现有的 SQL Server APIs 与工具。然而就可用性与可伸缩性来说,SDS 的主要目标在于云,因为我们可以从任何平台访问 SDS,如 PHP、Ruby 及 Java。Nigel 演示了如何使用 PHP WordPress(通过 ODBC 驱动调用 SDS)构建一个博客站点。

SDS 小组在 MIX 09 上宣布支持完全信任的代码与本地代码。

之前基于 REST 与 ACE 的 SDS API 现在已经完全被 TDS 和 TSQL 所取代,但你仍然可以使用计算云资源(Compute Cloud Resource)中的Astoria 连接后端的SDS 来公开REST 接口,你还可以使用ADO.NET+EF 或是新的连接到SDS 的SQL 客户端程序库。在高连接的情况下TDS 运转良好。

接下来,Nigel 又谈到了服务供应模型(Service Provisioning Model):每个账户都有一个先后次序,同时拥有一个或多个虚拟服务器。

每个服务器都拥有一个或多个数据库(包含了一个虚拟主机)。每个数据库是有大小限制的,目前为5-10 Gb,同时每个数据库拥有一个或多个登录帐号(SQL 用户)。其认证授权机制与SQL Server 2008 一样。事实上,Nigel 强调的是:你现在就可以开始面向SDS 的开发之旅了,只需使用SQL Server Express 2008 即可。

SDS 底层管理着请求路由、安全和隔离。它还提供了一种可伸缩、高可用的技术,包括:

  • 自动复制与失败恢复
  • “fabric”保证了高可用性——如果某台服务器宕掉了,它会将请求从该服务器转到其它服务器上
  • 供应(数据库、账户、角色等等)、度量及排序
  • 负载平衡:如果某台服务器负载过大,我们可以复制一份并让某个次级服务器成为主服务器,同时还可以将某份复制移动到其他服务器上去

Nigel 详述了 SDS 的兼容性目标:

  • 支持常见的应用模式
  • 基于逻辑 / 策略的管理
  • 从服务器到云的模式(反之亦然)
  • 考虑多种租赁
  • 节流与负载平衡
  • 限制数据库大小、及事务间隔

他相信第一版会满足 Web 和部门应用 95% 以上的需求。

就 SQL 兼容性来说,SDS 第一版中将会支持:

  • 表、索引及视图
  • 存储过程
  • 触发器
  • 约束
  • 表变量、会话与临时表

然而第一版将不会包含下面这些特性

  • 分布式事务
  • 分布式查询
  • CLR
  • Service Broker
  • 空间能力
  • 物理服务器或目录 DDL 与视图

其安全模型与本地模型完全兼容,但限制于标准的 SQL 认证与登录上。他们会在未来支持 AD 联盟、WLID 等以作为备选的认证协议。

Nigel 还谈到了未来的路线图

  • 分区数据库
  • 地理位置与地理冗余
  • 分布式查询
  • 安全的 w/AD、WLID 等等
  • 支持多级硬件和软件隔离

目前可以通过邀请的方式获取其 CTP。

查看英文原文: MIX 09: Nigel Ellis on Azure SQL Data Services

2009-04-08 00:511297
用户头像

发布了 88 篇内容, 共 268.9 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

MAC地址与IP地址

急需上岸的小谢

10月月更

TCP 复位攻击原理和实战复现

急需上岸的小谢

10月月更

架构实战营 - 模块二作业

Geek_92ba6f

架构设计 微信朋友圈

【算法】剑指offer-调整数组顺序&&数组出现超过一半的数字

芒果酱

c++ 算法 10月月更

Kafka消费客户端协调器讲解(GroupCoordinator)

石臻臻的杂货铺

kafka 10月月更

极客时间—架构实战营—第九期—模块二作业

阿梁

Vue整合HighCharts和ECharts实现数据可视化

闫同学

Vue 前端 10月月更

【从0到1学算法】6.Select Sort算法

Geek_65222d

10月月更

cstdio的源码学习分析10-格式化输入输出函数fprintf---宏定义/辅助函数分析04

桑榆

源码刨析 10月月更 C++

当前Serverless的六大局限性

阿泽🧸

Serverless 10月月更

Java多线程 Callable和Future

Yeats_Liao

后端 Java core 10月月更

训练实战营模块二

Geek_408c99

架构实战营模块2-微信朋友圈高性能架构

冷夫冲

架构 架构训练营 架构实战营

CorelDRAW 2019,软件应用项目(二)

张立梵

设计师 CorelDRAW 2022 10月月更

企业级大数据技术框架

穿过生命散发芬芳

大数据技术 10月月更

02微信高能性复杂度分析

神奇的叶叔叔

【Go实现】实践GoF的23种设计模式:代理模式

元闰子

Go 设计模式 代理模式

Smart Finance:熊市下,GameFi P2E热潮仍能得到延续

鳄鱼视界

Vue 2x 中使用 render 和 jsx 的最佳实践 (2)

默默的成长

Vue 前端 10月月更

面试突击90:过滤器和拦截器有什么区别?

王磊

八大排序 (上)

lovevivi

c 数据结构 10月月更

模块二作业

Diana S

#架构实战营

分支规范和git提交规范

默默的成长

git 前端 10月月更

低代码探索:freemarker的模板和表达式

程序员架构进阶

低代码平台 模板引擎 10月月更 freemarker

Java多线程 线程池Executor框架

Yeats_Liao

后端 Java core 10月月更

Kafka监控与指标之UnderReplicatedPartitions

石臻臻的杂货铺

Kafk 10月月更

微信朋友圈的高性能复杂度分析

小虎

架构训练营

前端JS规范

默默的成长

Vue 前端 10月月更

一文搞懂CAN FD总线协议帧格式

不脱发的程序猿

汽车电子 CAN FD 一文搞懂CAN FD总线

八大排序(下)

lovevivi

c 数据结构 10月月更

MIX 09:Nigel Ellis谈Azure SQL Data Services_Java_Jean-Jacques Dubray_InfoQ精选文章