步骤 1:安装Docker
首先,确保您的系统上已经安装了Docker。可以从Docker官网下载并安装适用于您操作系统的版本。
步骤 2:拉取带有GDS插件的Neo4j Docker镜像
您可以使用Neo4j官方的Docker镜像,并在启动时配置GDS插件。以下是一个示例命令:
1 2 3 4 5 6 7 8 9 |
docker run -d \ --name neo4j-gds \ -p 7474:7474 -p 7687:7687 \ -e NEO4J_AUTH=neo4j/your_password \ -e NEO4JLABS_PLUGINS='["graph-data-science"]' \ -e NEO4J_apoc_export_file_enabled=true \ -e NEO4J_dbms_security_procedures_unrestricted=gds.*,apoc.* \ -e NEO4J_dbms_security_procedures_allowlist=gds.*,apoc.* \ neo4j:latest |
参数说明
-d
:使容器在后台运行。--name neo4j-gds
:容器名称。-p 7474:7474 -p 7687:7687
:端口映射,7474是HTTP端口,7687是Bolt端口。-e NEO4J_AUTH=neo4j/your_password
:设置Neo4j的认证信息,格式为用户名/密码
。-e NEO4JLABS_PLUGINS='["graph-data-science"]'
:安装GDS插件。-e NEO4J_apoc_export_file_enabled=true
:启用APOC导出功能。-e NEO4J_dbms_security_procedures_unrestricted=gds.*,apoc.*
:允许GDS和APOC库的所有过程。-e NEO4J_dbms_security_procedures_allowlist=gds.*,apoc.*
:允许GDS和APOC库的所有过程。
验证容器运行状态
您可以使用以下命令来验证容器是否在后台运行:
1 |
docker ps |
步骤 3:使用Python连接本地Neo4j数据库
按照下面提供的Python代码示例,通过graphdatascience
库连接到本地运行的Neo4j数据库并使用GDS库:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
from graphdatascience import GraphDataScience # 设置数据库连接信息 uri = "bolt://localhost:7687" # Docker容器默认的Neo4j数据库连接URI user = "neo4j" # 默认用户名 password = "your_password" # 您在Docker命令中设置的数据库密码 # 创建GraphDataScience对象 gds = GraphDataScience(uri, auth=(user, password)) # 设置要使用的数据库(如果不止一个数据库,可以选择) gds.set_database("neo4j") # 示例查询:使用GDS库计算PageRank result = gds.pageRank.stream({ 'nodeProjection': 'Person', 'relationshipProjection': { 'KNOWS': { 'type': 'KNOWS', 'properties': {} } } }) # 将结果转换为DataFrame并显示 df = result.to_data_frame() print(df) # 关闭数据库连接 gds.close() |