Voici quelques éléments que j'ai remarqués lors des activités de développement à l'aide de l'API Aurora Severless Data. Quant à l'API de données, elle vient de sortir dans la région de Tokyo l'année dernière (2019), il y a donc peu d'informations en japonais. Nous espérons que cet article sera utile à ceux qui l'utiliseront à l'avenir.
--Région: ap-nord-est-1 --Rôle: sans serveur --Moteur: Aurora PostgreSQL
La capacité minimale du moteur PostgreSQL est de 2ACU. "Amazon Aurora Serverless prend désormais en charge une capacité d'unité et de nouvelles options de mise à l'échelle" Après avoir entendu l'annonce, j'ai pensé qu'il pouvait être réglé à partir de 1 ACU quel que soit le moteur sélectionné.
Vous pouvez désormais définir la capacité minimale d'un cluster de base de données Aurora sans serveur compatible MySQL sur 1 unité de capacité Aurora (ACU).
C'est-à-dire: innocent:
Si vous lisez le document officiel de ExecuteStatement Action, il semble que la syntaxe de la requête prend en charge le type ARRAY à première vue. Cependant, il y avait la note suivante.
:information_source: Note Array parameters are not supported.
J'étais curieux, alors j'ai essayé ExecuteStatement pour passer une valeur de type ARRAY de boto3 à l'espace réservé, mais j'ai eu une erreur "Les paramètres du tableau ne sont pas pris en charge". Après enquête, il est également ouvert en tant que Problèmes sur GitHub **, les ingénieurs AWS ont commenté comme suit Par conséquent, nous pensons que nous prendrons en charge le type ARRAY à l'avenir **.
The SDK team has already things set up, its up-to the service team the time they take to implement it. Will update if they implement the feature.
Ce sera une correspondance de contournement, mais il est possible de passer la valeur à l'espace réservé de type ARRAY en écrivant ce qui suit **.
tags = ['tag1', 'tag2']
rds_client = boto3.client('rds-data')
parameters = {
'secretArn': 'your_secret_arn',
'resourceArn': 'your_resource_arn',
'sql': INSERT INTO sample_tbl (id, tags) VALUES (:id, :tags::text[]),
'parameters': [
{'name':'id', 'value':{'stringValue': '001'},
{'name':'tags', 'value':{'stringValue': '{' + ','.join(tags) + '}'}}
],
'database': 'your_database_name',
}
response = rds_client.execute_statement(**parameters)
Selon la documentation officielle de l'action BeginTransaction (https://docs.aws.amazon.com/rdsdataservice/latest/APIReference/API_BeginTransaction.html), ** la transaction expire en 3 minutes si l'ID de transaction émis n'est pas utilisé. Faire**. S'il expire avant d'être validé, il reviendra automatiquement. De plus, ** une fois utilisée, la transaction est valable jusqu'à 24 heures **, elle sera automatiquement résiliée après 24 heures et la restauration sera exécutée.
:warning: Important A transaction can run for a maximum of 24 hours. A transaction is terminated and rolled back automatically after 24 hours. A transaction times out if no calls use its transaction ID in three minutes. If a transaction times out before it's committed, it's rolled back automatically.
Recommended Posts