区域 API
本章介绍区域相关接口。
Create Region
增加一个区域或更新区域配置。创建区域时可对区域内数据存储位置进行配置,即指定集合空间的生成方式,生成方式分为指定模式和自动创建模式。不能够同时指定两种模式,更新区域配置是也不能修改模式,更新区域配置只能够修改自动创建模式下的集合空间生成规则。
请求语法
- POST /region/?Action=CreateRegion&RegionName={regionname} HTTP/1.1
- Host: ip:port
- Content-Length: length
- Date: date
- Authorization: authorization string
- <RegionConfiguration>
- <DataCSShardingType>year</DataCSShardingType>
- <DataCLShardingType>month</DataCLShardingType>
- <DataDomain>domain1</DataDomain>
- <MetaDomain>domain2</MetaDomain>
- </RegionConfiguration>
参数说明
—Action
固定为CreateRegion,表示该操作为创建一个区域。
—RegionName
指定区域名称。
请求元素
在请求消息体中使用XML形式指定区域的配置。
—RegionConfiguration
容器,包含区域配置内容。
—DataCSShardingType
对象数据集合空间的生成规则,按照设定的时间生成指定的集合空间。
类型:String
有效值:year|quarter|month
默认值:year
—DataCLShardingType
对象数据集合的生成规则,按照设定的时间生成指定的集合。
类型:String
有效值:year/quarter/month
默认值:quarter
—DataCSRange
对象数据集合的生成规则,在设定时间段内能够生成的集合空间数量。
类型:Int
—DataDomain
对象数据集合空间所属域,域必须已在SequoiaDB中定义,如果不填写域名称,则对象数据集合空间建立在系统域上。
类型:String
—DataLobPageSize
对象数据集合空间的LobPageSize。
有效值:0,4096,8192,16384,32768,65536,131072,262144,524288之一,0即为默认值262144。
默认值:262144
—DataReplSize
对象集合的ReplSize,写操作同步的副本数。
有效值:-1, 0, 1-7
默认值:-1.
—MetaDomain
元数据集合空间所属域,域必须已在SequoiaDB中定义,若不填写,则元数据集合空间建在系统域上。
类型:String
—DataLocation
指定模式:对象数据的集合空间.集合名称,如 CS.CL
类型:String
—MetaLocation
指定模式:元数据的集合空间.集合名称,如 CS.CL
类型:String
—MetaHisLocation
指定模式:历史元数据的集合空间.集合名称,如 CS.CL
类型:String
样例
创建区域的请求,指定对象数据集合空间和元数据集合空间的域,指定对象数据集合空间和对象数据集合的生成规则。
- POST /region/?Action=CreateRegion&RegionName=region1 HTTP/1.1
- Host: ip:port
- Content-Length: length
- Date: date
- Authorization: authorization string
- <RegionConfiguration>
- <DataCSShardingType>year</DataCSShardingType>
- <DataCLShardingType>month</DataCLShardingType>
- <DataDomain>domain1</DataDomain>
- <MetaDomain>domain2</MetaDomain>
- </RegionConfiguration>
响应
- HTTP/1.1 200 OK
- Date: date
- Content-Length: 0
GetRegion
获取一个区域的配置。
请求语法
- POST /region/?Action=GetRegion&RegionName={regionname} HTTP/1.1
- Host: ip:port
- Date: date
- Authorization: authorization string
参数说明
—Action
固定为GetRegion,表示该操作为删除一个区域。
—RegionName
指定区域名称。
样例
查询一个区域的配置信息。
- POST /region/?Action=GetRegion&RegionName=region1 HTTP/1.1
- Host: ip:port
- Date: Wed, 12 Oct 2009 17:50:00 GMT
- Authorization: authorization string
响应
- <RegionConfiguration>
- <Name>region1</Name>
- <DataCSShardingType>year</DataCSShardingType>
- <DataCLShardingType>month</DataCLShardingType>
- <DataCSRange>1</DataCSRange>
- <DataDomain>domain1</DataDomain>
- <MetaDomain>domain2</MetaDomain>
- <DataLobPageSize>262144</DataLobPageSize>
- <DataReplSize>-1</DataReplSize>
- <DataLocation/>
- <MetaLocation/>
- <MetaHisLocation/>
- <Buckets>
- <Bucket>bucketname1</Bucket>
- <Bucket>bucketname2</Bucket>
- </Buckets>
- </RegionConfiguration>
DeleteRegion
删除一个区域。
请求语法
- POST /region/?Action=DeleteRegion&RegionName={regionname} HTTP/1.1
- Host: ip:port
- Date: date
- Authorization: authorization string
参数说明
—Action
固定为DeleteRegion,表示该操作为删除一个区域。
—RegionName
指定区域名称。
样例
删除一个区域的请求
- POST /region/?Action=DeleteRegion&RegionName=region1 HTTP/1.1
- Host: ip:port
- Date: date
- Authorization: authorization string
响应
- HTTP/1.1 204 No Content
- Date: date
ListRegions
查询区域列表,可以查询当前系统中所有区域名称。
请求语法
- POST /region/?Action=ListRegions HTTP/1.1
- Host: ip:port
- Date: date
- Authorization: authorization string
参数说明
—Action
固定为ListRegions,表示该操作为查询区域列表。
结果解析
查询结果以XML形式在响应消息头中显示。
—ListAllRegionsResult
容器,包含一个到多个Region。
—Region
区域名称。
样例
查询区域列表的响应。
- <ListAllRegionsResult>
- <Region>region1</Region>
- <Region>region1</Region>
- <Region>region1</Region>
- </ListAllRegionsResult>
HeadRegion
查询区域是否存在
请求语法
- POST /region/?Action=HeadRegion&RegionName={regionname} HTTP/1.1
- Host: ip:port
- Date: date
- Authorization: authorization string
样例
- HTTP/1.1 200 OK
- Date: date