В идеале вы можете предоставить дополнительную информацию (таблицу базы данных) в качестве дополнительного ввода для Flink, а затем просто использовать объединение. Это возможно только в том случае, если информацию можно получить с помощью разъема Flink. Преимущество состоит в том, что если вы сделаете это правильно, даже обновления таблицы будут соответствующим образом отражены в выходных данных. Вам также не нужно заботиться о размере результата, так как он будет автоматически обрабатываться Flink.
В качестве альтернативы вы можете использовать asyncIO
, который, в частности, предназначен для взаимодействия с внешние системы. Недостатком asyncIO
является то, что в настоящее время все результаты всех активных запросов должны помещаться в основную память. Но это должно быть жизнеспособно для 10_000 строк, особенно если учесть, что соответствующие события происходят довольно редко.