Добавить новый столбец в существующую таблицу Pentaho - PullRequest
0 голосов
/ 18 мая 2019

У меня есть входные данные таблицы, и мне нужно добавить в них вычисления, то есть добавить новый столбец. Я пробовал:

  1. , чтобы выполнить расчет, а затем отправить обратно. Очевидно, это приклеило новые данные к старым данным.

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

  3. , чтобы использовать поиск потока, а затем передать обратно. Конечно, это также прикрепило данные поверх существующих данных.
  4. чтобы использовать поиск потока, где я извлекаю данные из таблицы, выполняю вычисления, одновременно извлекаю данные из той же таблицы и выполняю поиск на основе уникальной комбинации даты и идентификатора. И используйте шаг «Обновить».

Поскольку он работает некоторое время, я уверен, что это не вариант, но я исчерпал свои варианты.

Ответы [ 3 ]

1 голос
/ 21 мая 2019

Похоже, вам нужно обновить таблицу, откуда пришли ваши данные, с помощью этого нового поля.Используйте шаг обновления с полями A и B в качестве ключей.

0 голосов
/ 21 мая 2019

Я бы сказал, что ваша проблема не только в реализации Pentaho, есть кое-что, что вы можете сделать, прежде чем достичь Data Staging в Pentaho.

  1. 'Workin Hard' правильно, когда он говорит, что вы не должны использовать одну и ту же таблицу, а вместо этого оставить ввод без изменений, и просто загрузить / вставить новые значения в новую таблицу, не обязательно новая таблица ВСЕ, но вместо того, чтобы обрезать оригинал, вы усекаете промежуточную таблицу (выходную таблицу).

  2. Сколько «новых столбцов» вам понадобится? Будет ли каждая итерация этого прогона создавать новый столбец в выводе? Или у вас всегда будет столбец «C», который всегда будет A + B или какой-то другой расчет? Извините, но это не ясно. Если дело обстоит позже, вам не нужен Pentaho для преобразований, обновляя столбец «C» с помощью математики или функции с учетом A + B, это можно сделать непосредственно в большинстве реляционных СУБД с помощью простого предложения UPDATE. Да, это можно сделать в Пентахо, но вы тратите много времени и времени на обработку.

0 голосов
/ 20 мая 2019

фактически, как только вы подключаете надежду, результат 1-го шага автоматически переносится на следующий шаг. Допустим, у вас есть шаг ввода таблицы, а затем вы добавляете калькулятор, где вы создаете 3-й столбец. после написания логики щелкните правой кнопкой мыши на шаге калькулятора и нажмите на предварительный просмотр, вы получите результат со всеми 3 столбцами

...