объединение таблиц из ec2 с помощью клея aws - PullRequest
0 голосов
/ 20 июня 2019

У меня есть две базы данных mysql, каждая на своем экземпляре ec2. Каждая база данных имеет таблицу «отчет» в схеме «продукт». Я использую сканер, чтобы получить схемы таблиц в каталоге данных клея aws в базе данных с именем db1. Затем я использую клей aws для копирования таблиц из экземпляров ec2 в корзину s3. Затем я опрашиваю таблицы с помощью красного смещения. Я получаю внешнюю схему для красного смещения от сканера aws, используя скрипт ниже в редакторе запросов. Я хотел бы объединить две таблицы в одну таблицу и добавить столбец «источник» с флагом, чтобы указать исходную таблицу, из которой получена каждая запись. Кто-нибудь знает, возможно ли это сделать с помощью клея aws во время процесса etl? Или вы можете предложить другое решение? Я знаю, что могу просто объединить их с sql в redshift, но моя конечная цель - создать конвейер etl, который сделает это до того, как перейдет в красное смещение.

сценарий:

create external schema schema1 from data catalog 
database ‘db1’ 
iam_role 'arn:aws:iam::228276743211:role/madeup’
region 'us-west-2';

1 Ответ

0 голосов
/ 20 июня 2019

Вы можете создать представление, объединяющее 2 таблицы, используя Athena, тогда это представление будет доступно в Redshift Spectrum.

CREATE OR REPLACE VIEW db1.combined_view AS
SELECT col1,cole2,col3 from db1.mysql_table_1
union all 
SELECT col1,cole2,col3 from db1.mysql_table_2
;

Запустите выше, используя Athena (не Redshift)

...