I tried looking online but I couldn't find anything. We are trying to see if Amazon Aurora supports Updatable Views. We are not using Amazon Aurora yet but the plan is to use it in future.
Thanks,
Sridhar.
Because Amazon Aurora implements the Postgres and Mysql engines directly, you can expect all the features of the engine and version that you use on Aurora to work the same way. Updatable views are available in the current database engine versions for both of these engines in Amazon Aurora, and require the same configuration regarding rules and grants as you'd find on a non-Aurora environment.
Postgres engine versions: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.Updates.20180305.html
Mysql engine versions: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraMySQL.Updates.html
Related
I do not see option to have a cluster with two writers in serverless v2 for both
Amazon Aurora MySQL-Compatible Edition
Amazon Aurora PostgreSQL-Compatible Edition
Now UI propose us to create a read replica for faster failover.
But is it possible to have a ready stand by writer? So in case if there is an upgrade or something and I can not get connection opened for a writer, I can just immediately switch to another writer.
Is it possible to have it like this or maybe I missed/misunderstood something?
Documentation for creation of multi master db is outdated
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-multi-master.html#aurora-multi-master-creating
Correct, multi-master for Aurora is tied to the MySQL 5.6-compatible edition. It isn't available for MySQL 5.7-compatible, MySQL 8.0-compatible, or PostgreSQL-compatible editions. Serverless v2 requires relatively recent versions of the MySQL and PostgreSQL engines, so multi-master definitely isn't available there.
Let's consider the possibilities for the single-writer case, because that's what's available in the versions that are compatible with Serverless v2 and aren't approaching EOL.
If there's an unplanned outage for the writer, Aurora automatically promotes a reader to take its place (failover).
More on failover generally here:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.AuroraHighAvailability.html#Concepts.AuroraHighAvailability.Instances
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.AuroraHighAvailability.html#Aurora.Managing.FaultTolerance
Aurora PostgreSQL has some features and settings to minimize failover time:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/AuroraPostgreSQL.BestPractices.FastFailover.html
If you want to e.g. switch the writer to a higher-capacity instance class, traditionally the way to do that was to make that change on a reader and then promote that to be the new writer by doing a manual failover. Serverless v2 does such capacity changes automatically without a reboot, and it preserves open connections too. So this former reason for reboots/outages isn't applicable in Serverless v2.
In Aurora MySQL 2.10 and higher, you can reboot the writer and the reader instances are still available for queries while the writer is rebooting: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_RebootCluster.html
From the documentation:
Currently, multi-master clusters require Aurora MySQL version 1, which is compatible with MySQL 5.6. When specifying the DB engine version in the AWS Management Console, AWS CLI, or RDS API, choose 5.6.10a
Here is the link for reference: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-multi-master.html
I'm googling about having a cluster of mariadb at AWS and make it work with auto scaling feature, but I didn't find the option "Add autoscaling replica" that appears in some tutorials. Since all tutorial samples that I have seen are using Aurora with MySql, I'm wondering if it's possible do this with mariadb. I would like to simply migrate to mysql but I need the RETURNING clause and some Uuid functions of mariadb-10.5, so I'm stucked to mariadb.
AWS RDS Autoscaling is only available for Aurora. Aurora currently has PostgreSQL and MySQL compatibility.
I'm facing the following situation:
I have to do a logical replication of my Cloud SQL PostgreSQL instance to an external PostgreSQL database and vice-versa. More specifically, the CloudSQL and the external instance will contain some master and slave tables that must be replicated between each database. However, PostgreSQL logical and external replication are currently not supported by the GCP.
Since it is not supported, I've searched for an alternative, and I noticed that Debezium + Kafka can be used with CloudSQL MySQL to capture database changes and do logical replication. I asked the same question on the Debezium google group (link below)
https://groups.google.com/forum/#!topic/debezium/yS61un46x8k
And they've answered to me:
"Debezium requires a specific logical decoding plug-in (either ProtoBufs or wal2json) installed within the source Postgres, I'm not sure whether you have that flexibility with your cloud SQL provider (but e.g. on Amazon RDS, wal2json is installed by default)."
Can anybody answer me if one of these plugins are available or can be installed within Cloud SQL PostgreSQL? If not, are there any alternative approach for logical replication while it is not supported by the platform? Thanks in advance.
Cloud SQL Postgres does not support logical replication right now. You also have no way to use Debezium + Kafka because of missing logical replication.
I have to migrate from Cloud SQL Postgres to on-premises Postgres.
Took them a long time, but is supported now
https://cloud.google.com/sql/docs/postgres/replication/configure-logical-replication
I would like to know the possible use cases of Amazon RDS ?
How can we leverage the features and services of amazon RDS?
What is the master slave relationship in RDS? how can we implement this??
You should start here to learn more about Amazon RDS: http://aws.amazon.com/documentation/rds/
You can use RDS in the same use cases you would use the supported relational databases, currently MySQL, Postgres, Oracle and SQL Server, but without installing and managing it yourself.
The master-slave replication feature is called "Multi-AZ" and you can enable when creating your database instances.
I know AWS RDS-postgresql supports postgis extension.
Does AWS Redshift support postgis extension?
As per this answer was written (June 2016), AWS Redshift itself still does not support PostGIS extensions.
The official documentation have not much changed. In an AWS blog post, it said implicitly:
You can use the dblink extension to connect to Amazon Redshift and leverage PostgreSQL functionality. .... There are likely many other uses for the dblink extension with Amazon Redshift, such as PostGIS or LDAP support in PostgreSQL (Amazon EC2 only), ....
From the above AWS blog post, we can combine Amazon Redshift and RDS/self-hosted PostgreSQL database to make a PostGIS queries by using dblink.
If your data is in latitude-longitude pairs (EPSG-4326/WGS84) format, you can convert your data to single-dimension data using GeoHash or S2 Geometry Library hash. Personally, I prefer S2 Geometry Library because it has more precision levels and functionalities. After that, you can make some query over that hash column. And of course, you can combine the result to PostGIS database.
According to AWS docs,
Amazon Redshift is based on PostgreSQL 8.0.2. Amazon Redshift and PostgreSQL have a number of very important differences that you must be aware of as you design and develop your data warehouse applications.
(http://docs.aws.amazon.com/redshift/latest/dg/c_redshift-and-postgres-sql.html)
It is not supporting the basic types that PostGIS depends upon
(https://forums.aws.amazon.com/message.jspa?messageID=425664#)
Therefore, the answer is no.