电商货源网站天元建设集团有限公司朱华
2026/1/1 22:11:55 网站建设 项目流程
电商货源网站,天元建设集团有限公司朱华,顺德网站建设服务平台,手机网页界面设计简单使用FalkorDB图数据库 1 介绍 FalkorDB 是一个通过稀疏矩阵和线性代数实现高性能查询的图数据库#xff0c;专注于为LLM和企业级GraphRAG应用提供超低延迟的知识图谱服务。对中文的支持不太好。 # 官网 https://www.falkordb.com/# 官方文档 https://docs.falkordb.com/#…简单使用FalkorDB图数据库1 介绍FalkorDB 是一个通过稀疏矩阵和线性代数实现高性能查询的图数据库专注于为LLM和企业级GraphRAG应用提供超低延迟的知识图谱服务。对中文的支持不太好。# 官网 https://www.falkordb.com/ # 官方文档 https://docs.falkordb.com/ # Github地址 https://github.com/falkordb/falkordb # cypher语言地址 https://docs.falkordb.com/cypher/Neo4j 是一个图数据库管理系统专为存储、查询和处理高度关联的数据而设计性能相对较差但是比较成熟、文文档齐全。中文支持很好。# Python参考文档 https://neo4j.com/docs/python-manual/current/ # cypher语法 https://neo4j.com/docs/getting-started/cypher/ # Github官网 https://github.com/neo4j/neo4j # 语言选择 https://neo4j.com/docs/create-applications/2 Cypher语法2.1 Cypher语法核心概念对应 SQL图概念Cypher 关键字类似 SQL节点实体()表中的行关系连接-[]-或-[]-外键连接属性数据{key: value}列的值标签分类:Label表名类型关系:TYPE关系类型1. 节点标签Node Labels用于分类节点类似于 SQL 中的表名语法:Label示例(:Person) -- 一个具有 Person 标签的节点 (:Person:Customer) -- 具有多个标签的节点 (p:Person) -- 别名为 p 的 Person 节点2. 关系类型Relationship Types描述节点间连接的性质语法:TYPE示例-[:KNOWS]- -- 一个 KNOWS 类型的关系 -[:WORKS_FOR]- -- WORKS_FOR 类型的关系 -[:LIKES {score: 5}]- -- 带属性的关系2.2 创建例子1 中文创建节点// 创建师徒节点 CREATE (唐僧:角色 {名称: 唐僧, 类型: 师父, 别名: [唐三藏, 玄奘], 特点: 金蝉子转世}) CREATE (悟空:角色 {名称: 孙悟空, 类型: 徒弟, 别名: [齐天大圣, 美猴王], 特点: 石猴出身}) CREATE (八戒:角色 {名称: 猪八戒, 类型: 徒弟, 别名: [天蓬元帅], 特点: 好吃懒做}) CREATE (沙僧:角色 {名称: 沙僧, 类型: 徒弟, 别名: [沙和尚, 卷帘大将], 特点: 忠厚老实}) CREATE (白龙马:角色 {名称: 白龙马, 类型: 徒弟, 别名: [小白龙], 特点: 西海龙王三太子})创建关系// 建立师徒关系 MATCH (唐僧:角色 {名称: 唐僧}) MATCH (悟空:角色 {名称: 孙悟空}) MATCH (八戒:角色 {名称: 猪八戒}) MATCH (沙僧:角色 {名称: 沙僧}) MATCH (白龙马:角色 {名称: 白龙马}) // 师徒关系 CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 贞观十三年}]-(悟空) CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 高老庄}]-(八戒) CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 流沙河}]-(沙僧) CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 鹰愁涧}]-(白龙马) // 师兄弟关系 CREATE (悟空)-[:师兄弟 {排序: 1, 称谓: 大师兄}]-(八戒) CREATE (悟空)-[:师兄弟 {排序: 1, 称谓: 大师兄}]-(沙僧) CREATE (八戒)-[:师兄弟 {排序: 2, 称谓: 二师兄}]-(沙僧)查询数据MATCH (唐僧:角色 {名称: 唐僧})-[:师徒关系]-(徒弟) RETURN 唐僧.名称 as 师父, COLLECT(徒弟.名称) as 徒弟们2 英文创建节点CREATE (TangSeng:Character {name: 唐僧, type: 师父, alias: [唐三藏, 玄奘], traits: 金蝉子转世}) CREATE (WuKong:Character {name: 孙悟空, type: 徒弟, alias: [齐天大圣, 美猴王], traits: 石猴出身}) CREATE (BaJie:Character {name: 猪八戒, type: 徒弟, alias: [天蓬元帅], traits: 好吃懒做}) CREATE (ShaSeng:Character {name: 沙僧, type: 徒弟, alias: [沙和尚, 卷帘大将], traits: 忠厚老实}) CREATE (BaiLongMa:Character {name: 白龙马, type: 徒弟, alias: [小白龙], traits: 西海龙王三太子})创建关系// Create master-disciple relationships MATCH (TangSeng:Character {name: 唐僧}) MATCH (WuKong:Character {name: 孙悟空}) MATCH (BaJie:Character {name: 猪八戒}) MATCH (ShaSeng:Character {name: 沙僧}) MATCH (BaiLongMa:Character {name: 白龙马}) // Master-disciple relationships CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 贞观十三年}]-(WuKong) CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 高老庄}]-(BaJie) CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 流沙河}]-(ShaSeng) CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 鹰愁涧}]-(BaiLongMa) // Senior-junior relationships among disciples CREATE (WuKong)-[:SENIOR_JUNIOR {ranking: 1, title: 大师兄}]-(BaJie) CREATE (WuKong)-[:SENIOR_JUNIOR {ranking: 1, title: 大师兄}]-(ShaSeng) CREATE (BaJie)-[:SENIOR_JUNIOR {ranking: 2, title: 二师兄}]-(ShaSeng)查询数据MATCH (TangSeng:Character {name: 唐僧})-[:MASTER_DISCIPLE]-(disciple) RETURN TangSeng.name as Master, COLLECT(disciple.name) as Apprentices2 FalkorDB使用2.1 Docker安装falkordb系统docker run -itd \ --name falkordb \ -e REDIS_ARGS--requirepass falkordb \ -p 6379:6379 \ -p 3000:3000 \ -v /home/falkordb/data:/var/lib/falkordb/data \ falkordb/falkordb:v4.14.92.2 访问页面配置可视化页面http://192.168.108.147:3000/输入密码后就能登录。2.3 使用代码安装依赖pip install FalkorDB -i https://pypi.tuna.tsinghua.edu.cn/simplePython代码# -*- coding: utf-8 -*-importtextwrapfromfalkordbimportFalkorDB# 连接FalkorDBdbFalkorDB(host192.168.108.147,port6379,passwordfalkordb)# 创建一个myrag图gdb.select_graph(myrag)# 创建节点g.query(textwrap.dedent( CREATE (TangSeng:Character {name: 唐僧, type: 师父, alias: [唐三藏, 玄奘], traits: 金蝉子转世}) CREATE (WuKong:Character {name: 孙悟空, type: 徒弟, alias: [齐天大圣, 美猴王], traits: 石猴出身}) CREATE (BaJie:Character {name: 猪八戒, type: 徒弟, alias: [天蓬元帅], traits: 好吃懒做}) CREATE (ShaSeng:Character {name: 沙僧, type: 徒弟, alias: [沙和尚, 卷帘大将], traits: 忠厚老实}) CREATE (BaiLongMa:Character {name: 白龙马, type: 徒弟, alias: [小白龙], traits: 西海龙王三太子}) ))# 创建关系g.query(textwrap.dedent( // Create master-disciple relationships MATCH (TangSeng:Character {name: 唐僧}) MATCH (WuKong:Character {name: 孙悟空}) MATCH (BaJie:Character {name: 猪八戒}) MATCH (ShaSeng:Character {name: 沙僧}) MATCH (BaiLongMa:Character {name: 白龙马}) // Master-disciple relationships CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 贞观十三年}]-(WuKong) CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 高老庄}]-(BaJie) CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 流沙河}]-(ShaSeng) CREATE (TangSeng)-[:MASTER_DISCIPLE {relationship: 师父, startTime: 鹰愁涧}]-(BaiLongMa) // Senior-junior relationships among disciples CREATE (WuKong)-[:SENIOR_JUNIOR {ranking: 1, title: 大师兄}]-(BaJie) CREATE (WuKong)-[:SENIOR_JUNIOR {ranking: 1, title: 大师兄}]-(ShaSeng) CREATE (BaJie)-[:SENIOR_JUNIOR {ranking: 2, title: 二师兄}]-(ShaSeng) ))# 查询数据resg.query(textwrap.dedent( MATCH (TangSeng:Character {name: 唐僧})-[:MASTER_DISCIPLE]-(disciple) RETURN TangSeng.name as Master, COLLECT(disciple.name) as Apprentices ))# 打印结果forrowinres.result_set:print(row)print(row[0],row[1])2.4 访问结果3 Neo4j使用3.1 Docker安装Neo4j账号neo4j密码secretgraphdocker run -itd \ --name neo4j \ -p 7474:7474 \ -p 7687:7687 \ -v /home/neo4j/data:/data \ -v /home/neo4j/logs:/logs \ -v /home/neo4j/plugins:/plugins \ -e NEO4J_AUTHneo4j/secretgraph \ neo4j:5.26.183.2 访问地址地址信息http://192.168.108.147:7474/3.3 使用代码安装依赖pip install neo4jPython代码fromneo4jimportGraphDatabase,Driver# 参考地址# https://neo4j.com/docs/python-manual/current/transactions/# URI examples: neo4j://localhost, neo4js://xxx.databases.neo4j.ioURIneo4j://192.168.108.147AUTH(neo4j,secretgraph) # 验证连接状态 with GraphDatabase.driver(URI, authAUTH) as driver: driver.verify_connectivity() print(建立连接) driver:DriverGraphDatabase.driver(URI,authAUTH)defadd_data(tx):# 使用参数化查询防止注入并传入变量[citation:6]query( CREATE (唐僧:角色 {名称: 唐僧, 类型: 师父, 别名: [唐三藏, 玄奘], 特点: 金蝉子转世}) CREATE (悟空:角色 {名称: 孙悟空, 类型: 徒弟, 别名: [齐天大圣, 美猴王], 特点: 石猴出身}) CREATE (八戒:角色 {名称: 猪八戒, 类型: 徒弟, 别名: [天蓬元帅], 特点: 好吃懒做}) CREATE (沙僧:角色 {名称: 沙僧, 类型: 徒弟, 别名: [沙和尚, 卷帘大将], 特点: 忠厚老实}) CREATE (白龙马:角色 {名称: 白龙马, 类型: 徒弟, 别名: [小白龙], 特点: 西海龙王三太子}) MATCH (唐僧:角色 {名称: 唐僧}) MATCH (悟空:角色 {名称: 孙悟空}) MATCH (八戒:角色 {名称: 猪八戒}) MATCH (沙僧:角色 {名称: 沙僧}) MATCH (白龙马:角色 {名称: 白龙马}) CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 贞观十三年}]-(悟空) CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 高老庄}]-(八戒) CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 流沙河}]-(沙僧) CREATE (唐僧)-[:师徒关系 {关系: 师父, 开始时间: 鹰愁涧}]-(白龙马) // 师兄弟关系 CREATE (悟空)-[:师兄弟 {排序: 1, 称谓: 大师兄}]-(八戒) CREATE (悟空)-[:师兄弟 {排序: 1, 称谓: 大师兄}]-(沙僧) CREATE (八戒)-[:师兄弟 {排序: 2, 称谓: 二师兄}]-(沙僧) )tx.run(query)# 使用默认数据库withdriver.session(databaseneo4j)assession:session.execute_write(add_data)defmatch_nodes(tx,name_filter):resulttx.run( MATCH (唐僧:角色 {名称: 唐僧})-[:师徒关系]-(徒弟) RETURN 唐僧.名称 as 师父, COLLECT(徒弟.名称) as 徒弟们 ,filtername_filter)returnlist(result)# a list of Record objectswithdriver.session(databaseneo4j)assession:peoplesession.execute_read(match_nodes,Al,)forpersoninpeople:print(person.data())3.4 访问结果

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询