sql >> Databasteknik >  >> RDS >> Mysql

Hur lagrar man data i MySql med cygnus?

Först och främst, ta gärna bort HDFS- och CKAN-konfigurationsdelarna. Du slipper onödiga loggar relaterade till dessa komponenter när du kör Cygnus. Kom naturligtvis ihåg att radera alla referenser till diskbänkar och kanaler; specifikt:

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

För det andra, svaret på din fråga finns i dokumentationen:

Inom tabeller kan vi hitta två alternativ:

  • Fixade 8-fältsrader, som vanligt:​​recvTimeTs, recvTime, entityId, entityType, attrName, attrType, attrValue och attrMd. Dessa tabeller (och databaserna) skapas vid körningstidpunkten om tabellen inte existerade tidigare för radinfogningen. Angående attrValue, i sin enklaste form, är detta värde bara en sträng, men eftersom Orion 0.11.0 kan det vara Json-objekt eller Json-array. Angående attrMd innehåller den en strängserialisering av metadatamatrisen för attributet i Json (om attributet inte har metadata infogas en tom array []),
  • Två kolumner per varje entitets attribut (en för värdet och en annan för metadata), plus en tilläggskolumn om mottagningstiden för datan (recv_time). Den här typen av tabeller (och databaserna) måste tillhandahållas tidigare för körning av Cygnus , eftersom varje enhet kan ha olika antal attribut, och aviseringarna måste säkerställa att ett värde för varje attribut meddelas.

Anslutningens beteende när det gäller den interna representationen av data styrs av en konfigurationsparameter, attr_persistence, vars värden kan vara rad eller kolumn.

Kanske finns det ett problem med skrivningen, jag tror att det sista stycket måste enda som "... hela värden kan vara rad eller kolumn, och vars beteende motsvarar alternativen som beskrivs ovan, respektive " .

d.v.s. om du använder kolumnläget måste databasen och tabellerna tillhandahållas på förhand.

Det finns en liknande fråga där jag förklarar mer i detalj ett sådant beteende.

HTH!




  1. Python-problem:Det gick inte att hitta vcvarsall.bat

  2. Hur kontrollerar man om MySQL-tabellen är UTF-8 och har storageEngine InnoDB?

  3. SQLite VAKUUM

  4. Hur hanterar du databaser i utveckling, test och produktion?