Запускать несколько драйверов neo4j в контексте искры - PullRequest
0 голосов
/ 04 апреля 2020

Скажем, у меня есть две базы данных neo4j, я использовал драйвер neo4j-spark-connector . Я могу зарегистрировать свой neo4j-db внутри контекста искры следующим образом:

  val conf = new SparkConf()
    .setAppName("App")
    .setMaster("local[*]") // spark master url
    .set("spark.neo4j.bolt.url", confObject.neo4jNewsBoltURL)
    .set("spark.neo4j.bolt.user", confObject.neo4jNewsUser)
    .set("spark.neo4j.bolt.password", confObject.neo4jNewsPassword)

  val sc: SparkContext = SparkContext.getOrCreate(conf)
  val neo4jClient: Neo4j = Neo4j(sc)

Q : Как я могу установить два neo4j в контексте искры?

Как я знаю, у меня не может быть многократного контекста искры, и если бы я мог, существует проблема, связанная с разным контекстом искры внутри одной JVM

Хотя параметр конфигурации spark.driver.allowMultipleContexts существует, он вводит в заблуждение, поскольку использование нескольких контекстов Spark не рекомендуется. Эта опция используется только для внутренних тестов Spark и не должна использоваться в пользовательских программах. Вы можете получить неожиданные результаты, запустив более одного контекста Spark в одной JVM.

Так нужно ли иметь несколько искр для каждого neo4j? Есть ли лучший способ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...