Azure Table深入理解
2016-05-04 14:14
561 查看
> 1、同一个Table中的相同Partition Key是否存在同一个文件中?
Azure Table为如下所示的三层结构。Stream层是最终数据存放的位置,Partition层对Stream层的数据进行分区(Partition)管理。
在Stream层,数据以Extent为单位进行复制。每个Extent由Block组成,单个Extent和Block的大小均有上限。一个Stream为一组指向Extent的指针,当一个Extent写满之后,会新建一个Extent继续写数据。在Partition层,同个Table中相同PartitionKey的元素表现为一个Partition,存在一个Stream中。
在Stream层写入时,数据会同时写入一个主EN(Extent Node)和两个副EN;读取时,会根据情况选择主副EN中的一个进行负载均衡。
在Partition层,Partition Server(PS)管理一组RangePartition,一个RangePartion内可能会有多个Partition。如果某个RangePartition繁忙,Partition
Manager(PM)会把该RangePartition内的Partition进行分割,交给空闲的PS管理。反之对于访问量低的RangePartition会进行合并。这种分割和合并其实仅改变Stream中的指针,对Extent不做任何操作,所以速度很快。除了永久存储(Stream层),经常使用的数据也会保存在Partition层的Cache中以提高速度。
> 2、同一个存储账号的不同Table可否并行查询?查询时相互是否有影响?
同个存储账号的不同Table可以并行查询,并行查询会按查询内容占用相应PS和EN的资源,不会有其他影响。
> 3、同一个Table中,若一个查询涉及到了多个PartitionKey,底层是否会帮忙并行查询,然后将结果整合后统一返回?
当一个查询涉及多个PartitionKey时,各个PartitionKey的请求会交给相应PS处理,结果会一起返回给前端。
转载请注明:康瑞部落 » Azure
Table深入理解
Azure Table为如下所示的三层结构。Stream层是最终数据存放的位置,Partition层对Stream层的数据进行分区(Partition)管理。
在Stream层,数据以Extent为单位进行复制。每个Extent由Block组成,单个Extent和Block的大小均有上限。一个Stream为一组指向Extent的指针,当一个Extent写满之后,会新建一个Extent继续写数据。在Partition层,同个Table中相同PartitionKey的元素表现为一个Partition,存在一个Stream中。
在Stream层写入时,数据会同时写入一个主EN(Extent Node)和两个副EN;读取时,会根据情况选择主副EN中的一个进行负载均衡。
在Partition层,Partition Server(PS)管理一组RangePartition,一个RangePartion内可能会有多个Partition。如果某个RangePartition繁忙,Partition
Manager(PM)会把该RangePartition内的Partition进行分割,交给空闲的PS管理。反之对于访问量低的RangePartition会进行合并。这种分割和合并其实仅改变Stream中的指针,对Extent不做任何操作,所以速度很快。除了永久存储(Stream层),经常使用的数据也会保存在Partition层的Cache中以提高速度。
> 2、同一个存储账号的不同Table可否并行查询?查询时相互是否有影响?
同个存储账号的不同Table可以并行查询,并行查询会按查询内容占用相应PS和EN的资源,不会有其他影响。
> 3、同一个Table中,若一个查询涉及到了多个PartitionKey,底层是否会帮忙并行查询,然后将结果整合后统一返回?
当一个查询涉及多个PartitionKey时,各个PartitionKey的请求会交给相应PS处理,结果会一起返回给前端。
转载请注明:康瑞部落 » Azure
Table深入理解
相关文章推荐
- 简单易懂云计算(转自天涯感谢原楼主iamsatisfied)
- 2011云计算知识库:盘点千奇百怪的云名称
- 如何解决在Azure上部署Sqlserver网络访问不了
- Windows Azure VM上配置FTP服务器
- 3ff8 《sharepoint 2010云计算解决方案》使用SQL Azure 的BI 解决方案
- IaaS, PaaS, SaaS 解释
- 在Google使用Borg进行大规模集群的管理 3-4
- 在Google使用Borg进行大规模集群的管理 5-6
- 在Google使用Borg进行大规模集群的管理 7-8
- 未来的容器云技术栈会怎么样?在容器技术大会上的演讲
- 仿OpenStack开发云计算管理软件”--第1周:熟悉开发环境
- Hadoop2.4.1伪分布式的搭建
- Hadoop上路_14-Hadoop2.3.0的分布式集群搭建
- debian 安装rdesktop 1.8.2
- azure中实例级公共IP地址
- azure centos 7给客户配置LAMP环境
- CentOS 7安装FTP 服务器vsftpd
- azure linux创建自定义镜像