Различия в использовании эталонных данных в PipelineDB и AWS Kinesis Analytics

Я делаю сравнение AWS Kinesis Analytics с использованием PipelineDB «эталонных» данных в STREAM SQL.

http://docs.aws.amazon.com/kinesisanalytics/latest/dev/limits.html http://docs.pipelinedb.com/joins.html#joins

Вопрос 1: ПРИСОЕДИНЯЙТЕСЬ к нескольким справочным таблицам

AWS Kinesis Analytics - позволяет присоединиться только к ссылочным данным из одного источника. Это кажется действительно ограничительным! Если только я этого не понимаю. Я хотел бы иметь возможность ПРИСОЕДИНЯТЬСЯ к, скажем, ПОЛЬЗОВАТЕЛЯМ и справочным данным АДРЕС. Я не могу?

PipelineDB - говорит, что поддерживает JOIN, но в документации нет примеров JOIN для нескольких справочных таблиц. Поддерживает ли PipelineDB объединение нескольких справочных таблиц в своих ПОТОКАХ и / или НЕПРЕРЫВНЫХ ПРОСМОТРАХ?

Вопрос 2: Обновление справочных данных

AWS Kinesis Analytics - говорит, что вам нужно преодолеть некоторые препятствия (например, вызвать API AWS и т. Д.), Чтобы обновить справочные данные, хранящиеся в его ведре S3 для потока.

PipelineDB - Могут ли потоки просто получать последние справочные данные по мере их обновления с использованием стандартных обновлений SQL для справочных таблиц?

Может ли PipelineDB ПРИСОЕДИНЯТЬСЯ к обычным представлениям SQL, поэтому, по сути, представление SQL обновляется автоматически при каждом изменении базовых данных?


person Jason    schedule 13.07.2017    source источник


Ответы (1)


  1. PipelineDB позволяет вам JOIN работать с любым количеством таблиц, в том числе с другими непрерывными или обычными представлениями. Единственное, что вы не можете JOIN использовать с потоком, - это другой поток (не поток-поток JOINs).

  2. Какие бы «справочные данные» ни существовали в JOIN время, они будут использоваться для обновления непрерывного просмотра. Другими словами, обновление справочных данных постфактум не приведет к автоматическому изменению исторических данных в непрерывном представлении, но новые входящие строки будут отражать обновленные справочные данные.

Вот пример определения непрерывного представления, которое содержит несколько JOINs:

https://github.com/pipelinedb/pipelinedb/blob/master/src/test/regress/sql/stream_table_join.sql#L61.

person Derek Nelson    schedule 17.07.2017
comment
Идеально! Спасибо за разъяснения, Дерек. Есть ли пример, который вы могли бы опубликовать, показывая несколько СОЕДИНЕНИЙ с 2+ справочными таблицами? Я не смог найти ни одного в текущих документах или примерах. - person Jason; 17.07.2017
comment
Конечно, я добавил ссылку на тест с примером. Не стесняйтесь обращаться к нам (Gittr, вероятно, лучший), если вам нужна помощь в составлении вашего конкретного резюме, мы будем рады помочь. - person Derek Nelson; 17.07.2017