Я оцениваю Друид для моего варианта использования, который глотает данные csv через спокойствие в реальном времени. Ниже конфигурация сервера: -Спокойствие, не отправляющее данные Друиду
{
"dataSources" : {
"audience" : {
"spec" : {
"dataSchema" : {
"dataSource" : "audience",
"parser" : {
"type" : "string",
"parseSpec":{
"format" : "csv",
"timestampSpec" : {
"column" : "timestamp"
},
"columns" : ["timestamp","partner_id","event_id","product_id","device_id","count"],
"dimensionsSpec" : {
"dimensions" : ["partner_id","event_id","product_id","device_id"]
}
}
},
"metricsSpec" : [{ "type" : "longSum", "name" : total, "fieldName" : "count" }],
"granularitySpec" : {
"segmentGranularity" : "HOUR",
"queryGranularity" : "HOUR",
"intervals" : [ "2013-08-31/2013-09-01" ]
}
},
"ioConfig" : {
"type" : "realtime"
},
"tuningConfig" : {
"type" : "realtime",
"maxRowsInMemory" : "100000",
"intermediatePersistPeriod" : "PT10M",
"windowPeriod" : "PT10M"
}
},
"properties" : {
"task.partitions" : "1",
"task.replicants" : "1"
}
}
},
"properties" : {
"zookeeper.connect" : "localhost",
"druid.discovery.curator.path" : "/druid/discovery",
"druid.selectors.indexing.serviceName" : "druid/overlord",
"http.port" : "8200",
"http.threads" : "8"
}
}
данных генерируются случайным образом с помощью питона сценария, как: -
1471336991,1,960,136,3ZLA7,1
1471336991,1,369,367,8MP2B,1
1471336991,2,544,550,C9ZG8,1
1471336991,1,135,394,XFX31,1
1471336991,2,590,552,VXMTL,1
1471336991,1,493,615,0C2HR,1
1471336991,2,435,710,HKYP0,1
1471336991,1,394,483,V2HP9,1
1471336991,2,441,376,J1LYO,1
следующих команд представляют данные и возвращает {"result":{"received":1000,"sent":0}}
python createData.py |curl -XPOST -H'Content-Type: text/plain' --data-binary @- http://localhost:8200/v1/post/audience.
Это неподходящий вопрос к вашему сообщению! Но знаете ли вы, что разница между «windowPeriod» и «segmentGranularity» в спецификации проглатывания в реальном времени выше? Как он создает сегмент на основе значения, которое вы предоставляете в 'windowPeriod' или' segmentGranularity'? – CapturedTree
Yup! Период окна - это актуальность данных, а гранулярность сегментов указывает, когда необходимо свернуть данные. –
@MangatRaiModi Не возражаете, глядя на вопрос здесь? https://stackoverflow.com/questions/45206900/tranquility-server-would-not-send-data-to-druid Я пытаюсь отправить данные на сервер с периодом окна в один год. Tranquility получает данные, но не отправляет их. Благодаря! –