Ежедневное копирование базы данных AWS Aurora в другую базу данных AWS Aurora.

У нас есть база данных AWS Aurora, расположенная на экземпляре, в котором хранятся все наши производственные данные. Я хочу иметь возможность выполнять аналитику этих данных, не делая этого в нашей производственной среде, поэтому я хочу ежедневно копировать производственные данные в другую базу данных AWS Aurora в совершенно другом экземпляре. В этой «аналитической» базе данных я создам все необходимые представления и хранимые процедуры для агрегирования любых преобразованных данных, которые мне нужно сохранить.

Сначала я думал о создании реплики Aurora, но, конечно, она доступна только для чтения. Мне нужно найти способ сделать это вне производственной среды, и я чувствую, что это достаточно простая задача, но я просто не могу понять, как это сделать. Может быть, я не смог задать вопросы по написанию, поэтому я пришел сюда. Как я могу этого добиться?


person Grant Bartel    schedule 09.06.2017    source источник


Ответы (2)


Это простая репликация AWS.

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Replication.CrossRegion.html

Также, если вы предпочитаете использовать mysql или любую другую СУБД, используйте

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Overview.Replication.MySQLReplication.html

Это похоже на репликацию master-slave с небольшой разницей в сегментированных данных, поддерживаемых в Aurora.

person Naruto    schedule 09.06.2017
comment
Но это только для чтения, нет? Мне нужно иметь возможность реплицировать производственную базу данных, в то время как другая база данных содержит мою сохраненную аналитику в одном экземпляре (не в производственном экземпляре). - person Grant Bartel; 10.06.2017

Репликация является правильным (конечно, субъективным) решением, но вы не можете использовать управляемую реплику Aurora, то есть вы не можете использовать реплику Aurora в кластере.

Это, однако, не означает, что вы не можете создать свою собственную асинхронную реплику Aurora... которая будет вторым кластером Aurora, независимым мастером, доступным для записи, но использующим поток репликации (двоичные журналы, также называемые "binlogs"). ,") из главного кластера для синхронизации данных.

Одно предостережение: вы должны быть предельно осторожны, чтобы не записывать ни в одну из таблиц асинхронного кластера, которые реплицируются из рабочего мастера. Сделайте это, конечно, и репликация сломается. Главный кластер не будет затронут, но репликация кластера прекратится при обнаружении несогласованных данных. Но вы можете без проблем создавать дополнительные таблицы, представления и сохраненные программы.

Внутри кластера Aurora нет необходимости в репликации в традиционном смысле — реплики используют то же резервное хранилище, что и мастер («том кластера»). Здесь мы просто реплицируем от кластера к кластеру, идентично способ, которым будут реплицироваться два обычных сервера MySQL (конечно, только в одном направлении).

Настройка практически идентична настройке репликации в Aurora и из нее, в MySQL или из нее. Поскольку в этом решении используется собственная репликация MySQL, шаги аналогичны.

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.Overview.Replication.MySQLReplication.html

person Michael - sqlbot    schedule 10.06.2017