Несколько зависимых операторов create на одном процессоре

#apache-nifi

#apache-nifi

Вопрос:

У меня есть 6 таблиц, которые я хочу создать одну за другой — каждая последующая таблица зависит от предыдущей.

Я попытался поместить все 6 SQL -скриптов в однопроцессорный PutSQL в Apache Nifi, но процессор вышел из строя при попытке создать table_2 с ошибкой table_1 does not exist .

Я предполагаю, что изменения не будут зафиксированы в Redshift, пока не будет завершен весь скрипт. Я попытался обойти это, активировав Database Session AutoCommit , но я все равно получаю тот же результат.

Должен ли я создавать 6 отдельных PutSQL процессоров или есть способ поместить несколько операторов SQL в один PutSQL процессор, и после каждого изменения будут зафиксированы в базе данных?

Комментарии:

1. Я не эксперт Apache Nifi и, надеюсь, смогу дать вам более прямую информацию. Я знаю Redshift, и если бы я атаковал это, я бы хотел знать xid и pid запросов, создающих table_1 и table_2. xid — это идентификатор транзакции (блок фиксации), а pid — идентификатор процесса (идентификатор соединения). Я бы предположил, что эти операторы поступают не из одного соединения, поскольку автоматическая фиксация не помогла. Эту информацию о запросах можно найти в таблице stl_query .

Ответ №1:

Быстрый ответ: мне нужно создать 6 отдельных процессоров PutSQL из-за ограничений между Nifi и AWS-Redshift.