Przede wszystkim możesz usunąć części konfiguracyjne HDFS i CKAN. Podczas uruchamiania Cygnusa unikniesz niepotrzebnych dzienników związanych z tymi komponentami. Oczywiście pamiętaj, aby usunąć wszystkie odniesienia do umywalek i kanałów; konkretnie:
cygnusagent.sources = http-source
cygnusagent.sinks = mysql-sink
cygnusagent.channels = mysql-channel
...
cygnusagent.sources.http-source.channels = mysql-channel
Po drugie, odpowiedź na Twoje pytanie można znaleźć w dokumentacji:
W obrębie tabel możemy znaleźć dwie opcje:
- Poprawione 8-polowe wiersze, jak zwykle:recvTimeTs, recvTime, entityId, entityType, attrName, attrType, attrValue i attrMd. Te tabele (i bazy danych) są tworzone w czasie wykonywania, jeśli tabela nie istnieje przed wstawieniem wiersza. Jeśli chodzi o attrValue, w najprostszej formie ta wartość jest tylko ciągiem, ale od wersji Orion 0.11.0 może to być obiekt Json lub tablica Json. Jeśli chodzi o attrMd, zawiera serializację ciągów tablicy metadanych dla atrybutu w Json (jeśli atrybut nie ma metadanych, wstawiana jest pusta tablica []),
- Dwie kolumny na atrybut każdej jednostki (jedna dla wartości, a druga dla metadanych) oraz dodatkowa kolumna dotycząca czasu odbioru danych (recv_time). Tego rodzaju tabele (i bazy danych) muszą być udostępnione przed wykonaniem Łabędzia , ponieważ każda jednostka może mieć inną liczbę atrybutów, a powiadomienia muszą zapewniać powiadomienie o wartości dla każdego atrybutu.
Zachowanie łącznika w odniesieniu do wewnętrznej reprezentacji danych jest regulowane przez parametr konfiguracyjny attr_persistence, którego wartościami mogą być wiersze lub kolumny.
Może jest problem z pisaniem, myślę, że ostatni akapit musi kończyć się jako "...całe wartości mogą być wierszami lub kolumnami, i których zachowanie odpowiada odpowiednio opcjom opisanym powyżej .
Tj. jeśli używasz trybu kolumnowego, baza danych i tabele muszą być obsługiwane w trybie zaawansowanym.
Istnieje podobne pytanie gdzie bardziej szczegółowo wyjaśniam takie zachowanie.
HTH!