我正在尝试从neo4j流向kafka主题发送消息。
这是我的neo4j的docker-compose配置
version: '3'
services:
neo4j:
image: neo4j:3.5.8-enterprise
hostname: klinks
container_name: klinks
volumes:
- ./plugins:/plugins
ports:
- "7474:7474"
- "7687:7687"
environment:
NEO4J_dbms_logs_query_threshold: 0s
NEO4J_dbms_logs_query_enabled: "true"
NEO4J_cypher_lenient__create__relationship: "true"
NEO4J_apoc_trigger_enabled: "true"
NEO4J_dbms_security_procedures_unrestricted: "apoc.*,algo.*"
NEO4J_ACCEPT_LICENSE_AGREEMENT: "yes"
NEO4J_dbms_logs_debug_level: DEBUG
NEO4J_dbms_memory_heap_max__size: 2G
NEO4J_dbms_memory_heap_initial__size: 1G
NEO4J_dbms_memory_pagecache_size: 1G
NEO4J_AUTH: neo4j/admin #la password è admin
NEO4J_ACCEPT_LICENSE_AGREEMENT: "yes"
NEO4J_kafka_group_id: p2
NEO4J_streams_sink_topic_cypher_friends: "
MERGE (p1:Person { name: event.initiated })
MERGE (p2:Person { name: event.accepted })
CREATE (p1)-[:FRIENDS { when: event.date }]->(p2)
"
NEO4J_streams_sink_enabled: "true"
NEO4J_streams_procedures_enabled: "true"
NEO4J_streams_source_enabled: "true"
NEO4J_kafka_zookeeper_connect: docker.for.win.localhost:2181
NEO4J_kafka_bootstrap_servers: docker.for.win.localhost:9092
NEO4J_streams_source_topic_nodes_recommendations: Person{*}
NEO4J_streams_source_schema_polling_interval: 10000
NEO4J_kafka_acks: 1
NEO4J_kafka_num_partitions: 1
NEO4J_kafka_retries: 2
NEO4J_kafka_batch_size: 16384
NEO4J_kafka_buffer_memory: 33554432
NEO4J_kafka_session_timeout_ms: 15000
NEO4J_kafka_reindex_batch_size: 1000
NEO4J_kafka_connection_timeout_ms: 10000
NEO4J_kafka_replication: 1
NEO4J_kafka_linger_ms: 1
我的最终流程应该是
1 [确定]。通过Java生产者向friends
上的kafka
主题发送消息
2 [确定]。使用neo4j接收器连接器将此规则发布到friends
流中neo4j
MERGE (p1:Person { name: event.initiated })
MERGE (p2:Person { name: event.accepted })
CREATE (p1)-[:FRIENDS { when: event.date }]->(p2)
3 [不起作用]。从kafka
查询流回neo4j
的一些数据或在某种节点上侦听
在我的配置中(仅出于测试目的),我监听类型为Person{*}
...
NEO4J_streams_source_topic_nodes_recommendations: Person{*}
...
第1步和第2步按预期工作,第3步失败,我从neo4j
看到此日志
klinks | 2020-10-02 11:01:17.402+0000 DEBUG Trying to send a transaction event with txId 8 and txEventId 8 to kafka -> recommendations
klinks | 2020-10-02 11:02:17.404+0000 DEBUG Sent record in partition null offset null data null key size null
我认为我在neo4j流的配置中缺少某些内容。有人可以帮我理解。