La ressource ALIYUN::OTS::Table permet de créer une table selon un schéma spécifié.
Syntaxe
{
"Type": "ALIYUN::OTS::Table",
"Properties": {
"ReservedThroughput": Map,
"MaxVersions": Integer,
"TableName": String,
"SecondaryIndices": List,
"DeviationCellVersionInSec": Integer,
"TimeToLive": Integer,
"InstanceName": String,
"PrimaryKey": List,
"Columns": List
}
}
Propriétés
| Propriété | Type | Obligatoire | Modifiable | Description | Contrainte |
| ReservedThroughput | Map | Non | Oui | Paramètres initiaux du débit réservé en lecture/écriture pour la table. | Le débit réservé en lecture/écriture d'une table ne peut pas dépasser 5 000 unités par seconde. Pour plus d'informations, consultez les propriétés ReservedThroughput. |
| MaxVersions | Integer | Non | Oui | Nombre maximal de versions de données conservées dans la table. | Valeurs valides : 1 à 2147483647. Valeur par défaut : 1. |
| TableName | String | Oui | Non | Nom de la table. | Aucune |
| SecondaryIndices | List | Non | Non | Liste des index secondaires de la table (un ou plusieurs). | Pour plus d'informations, consultez les propriétés SecondaryIndices. |
| DeviationCellVersionInSec | Integer | Non | Oui | Décalage maximal autorisé entre un numéro de version personnalisé et l'horodatage système actuel. | Ce paramètre empêche l'écriture de données dont le numéro de version personnalisé sort de la plage valide. Par exemple, si l'horodatage système actuel est 10000 et que DeviationCellVersionInSec est défini sur 1000, la plage de versions valides est [10000 - 1000, 10000 + 1000). Valeurs valides : 1 à 9223372036854775807. Valeur par défaut : 86400. |
| TimeToLive | Integer | Non | Oui | Durée de conservation des données stockées dans la table. | Valeur maximale : 2147483647. Valeur par défaut : 1. Unité : secondes. Une valeur de -1 indique que les données n'expirent jamais. |
| InstanceName | String | Oui | Non | Nom de l'instance hébergeant la table. | Aucune |
| PrimaryKey | List | Oui | Non | Colonnes de clé primaire de la table. | Valeurs valides : 1 à 4. Pour plus d'informations, consultez les propriétés PrimaryKey. |
| Columns | List | Non | Non | Liste des colonnes d'attribut de la table (une ou plusieurs). | Pour plus d'informations, consultez les propriétés Columns. |
Syntaxe de ReservedThroughput
"ReservedThroughput": {
"Read": Integer,
"Write": Integer
}
Propriétés de ReservedThroughput
| Propriété | Type | Obligatoire | Modifiable | Description | Contrainte |
| Read | Integer | Oui | Oui | Nombre d'unités de capacité (CU) consommées en lecture ou débit réservé en lecture de la table. | Valeur par défaut : 0. |
| Write | Integer | Oui | Oui | Nombre d'unités de capacité (CU) consommées en écriture ou débit réservé en écriture de la table. | Valeur par défaut : 0. |
Syntaxe de SecondaryIndices
"SecondaryIndices": [
{
"IndexName": String,
"IndexType": String,
"Columns": List,
"PrimaryKeys": List
}
]
Propriétés de SecondaryIndices
| Propriété | Type | Obligatoire | Modifiable | Description | Contrainte |
| IndexName | String | Oui | Non | Nom de l'index. | Aucune |
| IndexType | String | Non | Non | Type de l'index. | Valeurs valides :
|
| Columns | List | Oui | Non | Liste des colonnes de l'index (une ou plusieurs). | Exemple :Remarque Cette propriété diffère des propriétés Columns, qui désignent la liste des colonnes d'attribut de la table. |
| PrimaryKeys | List | Oui | Non | Liste des clés primaires de l'index (une ou plusieurs). | Aucune |
Syntaxe de PrimaryKey
"PrimaryKey": [
{
"Type": String,
"Name": String
}
]
Propriétés de PrimaryKey
| Propriété | Type | Obligatoire | Modifiable | Description | Contrainte |
| Type | String | Oui | Non | Type de la clé primaire. | Valeurs valides :
|
| Name | String | Oui | Non | Nom de la clé primaire. | Aucune |
Syntaxe de Columns
"Columns": [
{
"Type": String,
"Name": String
}
]
Propriétés de Columns
| Propriété | Type | Obligatoire | Modifiable | Description | Contrainte |
| Type | String | Oui | Non | Type de la colonne. | Aucune |
| Name | String | Oui | Non | Nom de la colonne. | Aucune |
Paramètres de réponse
Fn::GetAtt
TableName : nom de la table.
Exemples
-
Format
YAMLROSTemplateFormatVersion: '2015-09-01' Parameters: {} Resources: Table: Type: ALIYUN::OTS::Table Properties: TableName: TestTable InstanceName: mytest PrimaryKey: - Type: INTEGER Name: id -
Format
JSON{ "ROSTemplateFormatVersion": "2015-09-01", "Parameters": { }, "Resources": { "Table": { "Type": "ALIYUN::OTS::Table", "Properties": { "TableName": "TestTable", "InstanceName": "mytest", "PrimaryKey": [ { "Type": "INTEGER", "Name": "id" } ] } } } }