
# 创建内存加速规则 - CreatingaMemoryAccelerationRule
#### 功能介绍
创建内存加速规则。
#### 接口约束
该接口支持GeminiDB Redis 主备版。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/GaussDBforNoSQL/doc?api=ShowPasswordlessConfig)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-nosql/nosql_05_0023.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                                        | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名                               | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | gaussdbfornosql:instance:createDBCacheRule | write | -           | -   | nosql:instance:createDBCacheRule | -      |
     
  
 
#### URI
POST /v3/{project_id}/dbcache/rule
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 租户在某一region下的project ID。获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-nosql/nosql_projectid.html)。 **约束限制：** 不涉及。 **取值范围：** 长度为32个字符，仅由英文字母和数字组成。 **默认取值：** 不涉及。 |
   
#### 请求参数
表2请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。 通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
   
表3请求Body参数 
| 参数                 | 是否必选 | 参数类型             | 描述                                                                                                                                                                                                                                                                                                                                                                                                                            |
|:---|:---|:---|:---|
| dbcache_mapping_id | 是    | String           | **参数解释：** 内存加速映射ID。获取方法请参见[查询内存加速映射列表和详情 - QueryingtheMemoryMappingListandDetails](https://support.huaweicloud.com/api-nosql/nosql_05_0068.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
| name               | 是    | String           | **参数解释：** 内存加速规则名称。 **约束限制：** 不超过256字符，需要确保在当前映射下唯一。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                            |
| source_db_schema   | 是    | String           | **参数解释：** 源端数据库。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                              |
| source_db_table    | 是    | String           | **参数解释：** 源端数据表。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                                   |
| storage_type       | 是    | String           | **参数解释：** 目标数据存储类型。 **约束限制：** 不涉及。 **取值范围：** hash：哈希存储类型。 **默认取值：** 不涉及。                                                                                                                            |
| target_database    | 是    | String           | **参数解释：** 目标数据库。 **约束限制：** 不涉及。 **取值范围：** 从0到999的字符串类型。 **默认取值：** 不涉及。                                                                                                                            |
| key_columns        | 是    | Array of strings | **参数解释：** 映射的key使用的column列表。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                      |
| value_columns      | 是    | Array of strings | **参数解释：** 映射的value使用的column列表。 **约束限制：** 不涉及。                                                                                                                                                                                                                                                                                  |
| ttl                | 否    | String           | **参数解释：** key的生存时间。单位:ms。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不传该值，默认取2592000000，表示30天。                                                                                                       |
| key_separator      | 是    | String           | **参数解释：** 映射的key分隔符。 **约束限制：** 只允许一个字符。 **取值范围：** 不涉及。 **默认取值：** 不涉及。         |
| value_separator    | 否    | String           | **参数解释：** 映射的value分隔符。 **约束限制：** 只允许一个字符。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                              |
| key_prefix         | 是    | String           | **参数解释：** 键前缀。 **约束限制：** 最长限制1024字符。需确保key_prefix和target_database在当前映射下唯一。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                             |
   
#### 响应参数
**状态码： 200**
表4响应Body参数 
| 参数 | 参数类型   | 描述                                                                                                                                  |
|:---|:---|:---|
| id | String | **参数解释：** 内存加速规则ID。 **取值范围：** 不涉及。 |
   
#### 请求示例
创建内存加速规则。
```
POST https://{endpoint}/v3/054e292c9880d4992f02c0196d3ea468/dbcache/rule 
 
{ 
  "dbcache_mapping_id" : "e6f8526c-8b9c-4811-9218-4d2d7c1ddde1", 
  "name" : "mysql_a1-to-redis_01", 
  "source_db_schema" : "test", 
  "source_db_table" : "students_info_t", 
  "storage_type" : "hash", 
  "target_database" : "0", 
  "key_columns" : [ "sno", "sname" ], 
  "value_columns" : [ "sno", "sname", "age" ], 
  "ttl" : "-1", 
  "key_separator" : ":", 
  "key_prefix" : "prefix1" 
}
```
#### 响应示例
**状态码： 200**
Success.
```
{ 
  "id" : "04efe8e2-9255-44ae-a98b-d87cae411890" 
}
```
#### 状态码
请参见[状态码](https://support.huaweicloud.com/api-nosql/nosql_status_code.html)。
#### 错误码
请参见[状态码](https://support.huaweicloud.com/api-nosql/nosql_status_code.html)。
