const DATA_SIZE = 60 * 60 * 12 // every second for 12 hours
|
const adjectives = 'autumn hidden smiling bitter misty'.split(' ')
|
const nouns = 'waterfall river carefully breeze moon rain'.split(' ')
|
|
const getRandomNumber = limit => (Math.random() * limit).toFixed(4) * 1
|
|
function insertData(left, right, coll) {
|
print(`inserting: ${left}-${right} `)
|
coll.insert({
|
serverName : `${left}-${right}`,
|
hostName : `${left}${right}.local`,
|
eventName : right,
|
data : generateRandomData(DATA_SIZE)
|
})
|
}
|
|
function generateRandomData(size) {
|
var temp = []
|
for(let i = 0; i < size; i++ ) {
|
temp.push({
|
ts : new Date().getTime() + i,
|
v : i + getRandomNumber(1000)
|
})
|
}
|
return temp
|
}
|
|
function populateCollection(coll) {
|
coll.drop()
|
coll.createIndex({serverName: 1, eventName: 1})
|
adjectives.forEach(adj => nouns.forEach(noun => insertData(adj, noun, coll)))
|
}
|
|
populateCollection(db.iot)
|
|
print('Enjoy!')
|
|