neo4j连接spark

neo4j连接spark(使用neo4j-connector-apache-spark_2.12)

一、依赖
spark版本:2.4.5
scala版本:2.12
这里使用的依赖是:

	<dependency>
        <groupId>neo4j-contrib</groupId>
        <artifactId>neo4j-connector-apache-spark_2.12</artifactId>
        <version>4.0.1_for_spark_2.4</version>
    </dependency>

    <!--其他存储库列表-->
    <repository>
        <id> SparkPackagesRepo</id>
        <url>http://dl.bintray.com/spark-packages/maven</url>
    </repository>


</repositories>
    其他人说的这个依赖我没有在maven仓库找到
     < dependency >
	    < groupId > neo4j-contrib </ groupId >
	    < artifactId > neo4j-spark-connector </ artifactId >
	    < version > 2.1.0-M4 </ version >
	</ dependency >

二、spark代码
查询:

val df = spark.read.format("org.neo4j.spark.DataSource")
      .option("url", "bolt://localhost:7687")
      .option("authentication.basic.username", "neo4j")
      .option("authentication.basic.password", "neo4j")
      .option("labels", "节点")
      .load()
      df.show()

结果:
在这里插入图片描述
插入:

import spark.implicits._
    val df = Seq(
      ("猪大哥"),
      ("猪小弟")
    ).toDF("name")
    df.write.format("org.neo4j.spark.DataSource")
      .mode(SaveMode.ErrorIfExists)
      .option("url", "bolt://localhost:7687")
      .option("authentication.basic.username", "neo4j")
      .option("authentication.basic.password", "neo4j")
      .option("labels", ":pig")
      .save()

条件查询:

val df = spark.read.format("org.neo4j.spark.DataSource")
      .option("url", "bolt://localhost:7687")
      .option("authentication.basic.username", "neo4j")
      .option("authentication.basic.password", "wcc")
      .option("labels", "pig")
      .load()
    df.where("name='猪爸爸'").where("age = 25").show()

结果:
在这里插入图片描述

Graph Algorithms: Practical Examples in Apache Spark and Neo4j By 作者: Mark Needham – Amy E. Hodler ISBN-10 书号: 1492047686 ISBN-13 书号: 9781492047681 Edition 版本: 1 出版日期: 2019-01-04 pages 页数: (217) Discover how graph algorithms can help you leverage the relationships within your data to develop more intelligent solutions and enhance your machine learning models. You’ll learn how graph analytics are uniquely suited to unfold complex structures and reveal difficult-to-find patterns lurking in your data. Whether you are trying to build dynamic network models or forecast real-world behavior, this book illustrates how graph algorithms deliver value—from finding vulnerabilities and bottlenecks to detecting communities and improving machine learning predictions. This practical book walks you through hands-on examples of how to use graph algorithms in Apache Spark and Neo4j—two of the most common choices for graph analytics. Also included: sample code and tips for over 20 practical graph algorithms that cover optimal pathfinding, importance through centrality, and community detection. Learn how graph analytics vary from conventional statistical analysis Understand how classic graph algorithms work, and how they are applied Get guidance on which algorithms to use for different types of questions Explore algorithm examples with working code and sample datasets from Spark and Neo4j See how connected feature extraction can increase machine learning accuracy and precision Walk through creating an ML workflow for link prediction combining Neo4j and Spark
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值