2017-07-20 3 views
1

Je veux mettre le flux SQL dans Kafka pour être consommé par Flink pour CEP. Est-ce un bon moyen?Flux dynamique SQL pour Apache Flink CEP

Je sais que la définition de modèle dynamique n'est pas autorisée sur Flink et j'ai besoin d'appliquer des règles qu'ils peuvent modifier sur un flux d'événements non borné.

Pour donner un exemple;

Une interface utilisateur permet aux utilisateurs de définir des règles pour leurs périphériques. Imaginez qu'il existe un service d'observation (comme le hub AWS IoT) qui conserve l'état du périphérique physique et que je pense que ce serait un bon moyen de placer les règles spécifiques de chaque périphérique dans les ombres et lorsque les données du capteur sont reçues , il peut émettre des données avec ses règles ajoutées pour être consommées par Flink en tant que moteur de règles (via kafka). Donc, je veux que Flink effectue mes données de capteurs entrants (avec ses règles) qui pourraient être différentes pour tous les appareils.

+1

C'est ce que vous demandez. Vous devez donner plus de détails sur votre cas d'utilisation. De plus, le flux SQL de Flink n'est pas encore intégré à sa bibliothèque CEP. C'est un travail en cours. –

+0

Veuillez mettre à jour votre question au lieu d'ajouter des commentaires. Je vous remercie –

Répondre

0

Ce que j'ai compris de votre question, c'est que vous voulez traiter différents flux avec des règles différentes. Si tel est le cas, vous devriez envoyer des flux de ces appareils à des sujets Kafka. Ensuite, démarrez plusieurs instances de CEP dans Flink.

StreamExecutionEnvironment envrionment1 = StreamExecutionEnvironment.createLocalEnvironment(1); 
... 
StreamExecutionEnvironment envrionmentn = StreamExecutionEnvironment.createLocalEnvironment(1); 

Chaque instance doit souscrire aux sujets Kafka (chacun représentant un appareil) et ajouter des motifs diff dans chaque Flink instance.