我有一个kafka总线,可从物联网传感器接收数据。每分钟收到的消息数接近1000。我需要使用存储在neo4j中的传感器元数据来丰富这些原始数据。到目前为止,我正在使用kafka-streams neo4j连接器来完成此操作。
KStream<String, String> enrichedData = rawSensorStreamByUuid
.leftJoin(masterSensorTable, (sensorData, masterSensorData) -> {
try {
Object sensorObj = jsonParser.parse(sensorData);
JSONObject sensorJsonObj = (JSONObject) sensorObj;
if (masterSensorData == null || masterSensorData.isEmpty()) {
masterSensorData = "{\"companyCode\":\"EMPTY\"}";
}
Object masterObj = jsonParser.parse(masterSensorData);
JSONObject masterJsonObj = (JSONObject) masterObj;
sensorJsonObj.put("masterSensorData", masterJsonObj);
return sensorJsonObj.toString();
} catch (ParseException e) {
logger.error("error parsing while joining: ", e);
throw new RuntimeException(e);
}
})
我可以直接连接到neo4j来为每种接收到的数据进行这种扩充吗? Neo4j可以处理这样的负载吗?