Thank you @Colin. I needed some more time to think about this, and I got it all working well using a single function node containing this:
msg.payload = msg.payload.map(function(value) {
return {
measurement: "SingleRotaryFurnaceZoneData",
fields: {
temperature:value.last,
},
tags:{
MeasType:"actual",
EquipNumber:"1",
EquipZone:"zone1"
},
timestamp: value.time
};
});
return msg;
An array with 378,000 objects (about 9.5 months of data, with 1 reading per minute) took < 10 seconds to import into Influx 2.3 using the batch node.