Za prvé, klidně odeberte části konfigurace HDFS a CKAN. Při spuštění Cygnusu se vyhnete zbytečným protokolům souvisejícím s těmito komponentami. Samozřejmě nezapomeňte vymazat všechny odkazy na umyvadla a kanály; konkrétně:
cygnusagent.sources = http-source
cygnusagent.sinks = mysql-sink
cygnusagent.channels = mysql-channel
...
cygnusagent.sources.http-source.channels = mysql-channel
Za druhé, odpověď na vaši otázku lze nalézt v dokumentaci:
V tabulkách můžeme najít dvě možnosti:
- Opraveno řádků s 8 poli, jako obvykle:recvTimeTs, recvTime, entityId, entityType, attrName, attrType, attrValue a attrMd. Tyto tabulky (a databáze) jsou vytvořeny v době provádění, pokud tabulka dříve před vkládáním řádku neexistovala. Pokud jde o attrValue, ve své nejjednodušší podobě je tato hodnota pouze řetězec, ale od verze Orion 0.11.0 to může být objekt Json nebo pole Json. Pokud jde o attrMd, obsahuje řetězecovou serializaci pole metadat pro atribut v Json (pokud atribut nemá metadata, vloží se prázdné pole []),
- Dva sloupce pro každý atribut entity (jeden pro hodnotu a druhý pro metadata) plus další sloupec o době příjmu dat (recv_time). Tento druh tabulek (a databází) musí být před spuštěním Cygnusu zřízen , protože každá entita může mít různý počet atributů a oznámení musí zajistit, aby byla oznámena hodnota každého atributu.
Chování konektoru ohledně vnitřní reprezentace dat je řízeno konfiguračním parametrem attr_persistence, jehož hodnoty mohou být řádek nebo sloupec.
Možná je problém v psaní, myslím, že poslední odstavec musí končit jako "... celé hodnoty mohou být řádkové nebo sloupcové, a jejichž chování odpovídá výše popsaným možnostem, resp "." .
Tj. pokud používáte sloupcový režim, musí být databáze a tabulky zřízeny v pokročilém režimu.
Existuje podobná otázka kde takové chování vysvětluji podrobněji.
HTH!