Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment stocker des données dans MySql en utilisant cygnus ?

Tout d'abord, n'hésitez pas à supprimer les parties de configuration HDFS et CKAN. Vous éviterez les journaux inutiles liés à ces composants lors de l'exécution de Cygnus. Bien sûr, n'oubliez pas de supprimer toutes les références aux puits et aux canaux ; spécifiquement :

cygnusagent.sources = http-source
cygnusagent.sinks = mysql-sink
cygnusagent.channels = mysql-channel
...
cygnusagent.sources.http-source.channels = mysql-channel

Deuxièmement, la réponse à votre question se trouve dans la documentation :

Dans les tableaux, nous pouvons trouver deux options :

  • Lignes fixes à 8 champs, comme d'habitude :recvTimeTs, recvTime, entityId, entityType, attrName, attrType, attrValue et attrMd. Ces tables (et les bases de données) sont créées à l'exécution si la table n'existe pas avant l'insertion de la ligne. En ce qui concerne attrValue, dans sa forme la plus simple, cette valeur n'est qu'une chaîne, mais depuis Orion 0.11.0, il peut s'agir d'un objet Json ou d'un tableau Json. Concernant attrMd, il contient une chaîne de sérialisation du tableau de métadonnées pour l'attribut en Json (si l'attribut n'a pas de métadonnées, un tableau vide [] est inséré),
  • Deux colonnes par attribut de chaque entité (une pour la valeur et l'autre pour les métadonnées), plus une colonne supplémentaire sur l'heure de réception des données (recv_time). Ce type de tables (et les bases de données) doivent être provisionnées préalablement à l'exécution de Cygnus , car chaque entité peut avoir un nombre différent d'attributs, et les notifications doivent garantir qu'une valeur pour chaque attribut est notifiée.

Le comportement du connecteur concernant la représentation interne des données est régi par un paramètre de configuration, attr_persistence, dont les valeurs peuvent être ligne ou colonne.

Il y a peut-être un problème avec l'écriture, je pense que le dernier paragraphe doit se terminer par "... les valeurs entières peuvent être des lignes ou des colonnes, et dont le comportement correspond aux options décrites ci-dessus, respectivement " .

C'est à dire. si vous utilisez le mode colonne, alors la base de données et les tables doivent être provisionnées en avancé.

Il existe un question similaire où j'explique plus en détail un tel comportement.

HT !