Redis 正在逐步淘汰 RedisGraph. 此博客文章 解释了此决定的动机以及对现有 Redis 客户和社区成员的影响。
支持结束时间定于 2025 年 1 月 31 日。
RedisGraph 是最快的图形数据库,它可以实时处理复杂的图形操作,速度比任何其他图形数据库快 10 倍到 600 倍。它通过 RedisInsight、Linkurious 和 Graphileon 等多种可视化集成展示了数据的连接方式。它允许您使用行业标准的 Cypher 查询语言查询图形,并且您可以轻松地从应用程序代码中使用图形功能。
如果您有一堆要加载到 RedisGraph 数据库的 CSV 文件,您必须尝试使用 此批量加载器实用程序。正确地称为 RedisGraph 批量加载器,此工具是用 Python 编写的,可帮助您从 CSV 输入构建 RedisGraph 数据库。此实用程序需要 Python 3 解释器。
按照以下步骤将 CSV 数据加载到 RedisGraph 数据库
docker run -p 6379:6379 --name redis/redis-stack
info modules
# Modules
module:name=graph,ver=20405,api=1,filters=0,usedby=[],using=[],options=[]
$ git clone https://github.com/RedisGraph/redisgraph-bulk-loader
批量加载器可以使用 pip 安装
pip3 install redisgraph-bulk-loader
或者
pip3 install git+https://github.com/RedisGraph/redisgraph-bulk-loader.git@master
python3 -m venv redisgraphloader
source redisgraphloader/bin/activate
pip3 install -r requirements.txt
如果上面的命令不起作用,请安装以下模块
pip3 install pathos
pip3 install redis
pip3 install click
groovy generateCommerceGraphCSVForImport.groovy
head -n2 *.csv
==> addtocart.csv <==
src_person,dst_product,timestamp
0,1156,2010-07-20T16:11:20.551748
==> contain.csv <==
src_person,dst_order
2000,1215
==> order.csv <==
_internalid,id,subTotal,tax,shipping,total
2000,0,904.71,86.40,81.90,1073.01
==> person.csv <==
_internalid,id,name,address,age,memberSince
0,0,Cherlyn Corkery,146 Kuphal Isle South Jarvis MS 74838-0662,16,2010-03-18T16:25:20.551748
==> product.csv <==
_internalid,id,name,manufacturer,msrp
1000,0,Sleek Plastic Car,Thiel Hills and Leannon,385.62
==> transact.csv <==
src_person,dst_order
2,2000
==> view.csv <==
src_person,dst_product,timestamp
0,1152,2012-04-14T11:23:20.551748
python3 bulk_insert.py prodrec-bulk -n person.csv -n product.csv -n order.csv -r view.csv -r addtocart.csv -r transact.csv -r contain.csv
person [####################################] 100%
1000 nodes created with label 'person'
product [####################################] 100%
1000 nodes created with label 'product'
order [####################################] 100%
811 nodes created with label 'order'
view [####################################] 100%
24370 relations created for type 'view'
addtocart [####################################] 100%
6458 relations created for type 'addtocart'
transact [####################################] 100%
811 relations created for type 'transact'
contain [####################################] 100%
1047 relations created for type 'contain'
Construction of graph 'prodrec-bulk' complete: 2811 nodes created, 32686 relations created in 1.021761 seconds
graph.query prodrec "match (p:person) where p.id=200 return p.name"
1) 1) "p.name"
2) (empty array)
3) 1) "Cached execution: 0"
2) "Query internal execution time: 0.518300 milliseconds"
要在本地 Mac 上使用 RedisInsight,您可以从 RedisLabs 网站上的 RedisInsight 页面下载
点击此链接访问表单 允许您选择所需的操作系统。
如果您在系统中安装了 Docker Engine,快速方法是运行以下命令
docker run -d -v redisinsight:/db -p 8001:8001 redislabs/redisinsight:latest
接下来,将浏览器指向 https://localhost:8001。
GRAPH.QUERY "prodrec-bulk" "match (p:person) where p.id=199 return p"