Cube を使用して動的なビッグデータ分析ツールを構築しようとしています。つまり、これを使用してテストデータを生成しています:
process.env.TZ = 'UTC';
var util = require("util"),
cube = require("../../"), // replace with require("cube")
options = require("./random-config");
util.log("starting emitter");
var emitter = cube.emitter(options["collector"]);
var start = Date.now() + options["offset"],
stop = start + options["duration"],
step = options["step"],
value = 0,
count = 0;
while (start < stop) {
emitter.send({
type: "visit",
time: new Date(start),
data: {
os: "windows",
ip: "192.168.2.2",
language: "Dutch",
article_id: Math.floor(Math.random() * 50)
}
});
start += step * Math.random();
++count;
}
util.log("sent " + count + " events");
util.log("stopping emitter");
emitter.close();
このように、実行時に約 14000 レコードが MongoDB にプッシュされます。
しかし、に行くとlocalhost:1081/1.0/metric?expression=sum(visit)&step=1e4&start=2014-01-14T08:00:00Z&end=2014-01-19T08:00:00Z、そこに表示されているデータは、プッシュされているデータと一致しません。visitsそのページを表示して数字を合計すると、一貫して ~2000 と表示され、非常に不正確なグラフが表示されます。
キューブについてアイデアやリソースを持っている人はいますか? Cube のアイデアは気に入っていますが、ドキュメントがないために多くの時間を無駄にしています。