最新要闻
- 天天观焦点:重庆市高级人民法院依法公开宣判张波、叶诚尘故意杀人案
- 李想说出大实话:理想L8最大竞争对手其实是这台车
- 号称“不泄密” 微信键盘1.0.6发布:加入2项新功能
- 起售价或低于25万 凯迪拉克GT4实车曝光:家族最便宜SUV来了|世界今热点
- 长沙被占车位成为网红打卡地:有人两百公里外赶来直播 环球快看
- 省级校本教研基地工作总结(精选26篇)|世界观点
- 15日起内地赴港澳签注办理更便捷 端午赴港澳机票较五一降三成|环球视点
- 索尼最强旗舰!Xperia 1 V发布:8999元起
- 4月SUV销量排名:比亚迪双星无敌!燃油车苦苦挣扎
- 《种地吧》下期精彩:后陡门篮球赛主打团结 种地团直面成长阵痛-当前资讯
- 孟羽童视频回应离职格力:下一步将申请读研|环球观点
- 2999元!佳能发布掌上Vlog机PowerShot V10 比手机还小巧
- 焦点热讯:索尼放大招 Xperia 1 V用上双层晶体管传感器:画质媲美全画幅相机
- 天玑9200+正式发布!解决旗舰用户三大痛点 带来顶级游戏性能体验 世界新消息
- 黑寡妇毒杀亲夫
- 【天天热闻】手动挡正确停止和关闭发动机 以及关闭发动机钥匙的步骤
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
Python工具箱系列(三十一)
Neo4j是一个高性能的开源的,使用Java语言实现的NoSQL图数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。现实中很多数据都是用图来表达的,比如社交网络中人与人的关系、地图数据、或是基因信息等等。RDBMS并不适合表达这类数据,而且由于海量数据的存在,让其显得捉襟见肘。NoSQL数据库的兴起,很好地解决了海量数据的存放问题,图数据库也是NoSQL的一个分支,相比于NoSQL中的其他分支,它很适合用来原生表达图结构的数据。图数据库存储的结构就如同计算机科学中的数据结构中所论述的图,由顶点和边组成。
Neo4j适用于图形一类数据,例如:社会关系,公共交通网络,地图及网络拓扑。Neo4j并为此专门进行了算法优化,也开发了相关的查询语言。这是Neo4j与其他NoSQL数据库的最显著区别。Neo4j不适用于:
(资料图)
◆记录大量基于事件的数据(例如日志条目或传感器数据)
◆对大规模分布式数据进行处理,类似于Hadoop
◆二进制数据存储
◆适合于保存在关系型数据库中的结构化数据
Neo4j提供了免费的社区版本,在数据量不大的情况下,可以用于开发。大规模部署与应用建议购买企业版。在ubuntu bionic下的安装过程如下所示:
wget -O - https://debian.neo4j.com/neotechnology.gpg.key | sudo apt-key add -echo "deb https://debian.neo4j.com stable latest" | sudo tee /etc/apt/sources.list.d/neo4j.listsudo apt-get update# 安装社区版本sudo apt-get install -y neo4j# 安装企业版本sudo apt-get install -y neo4j-enterprisesystemctl status neo4jsystemctl start neo4jsystemctl enable neo4j# 直接在本地检测是否安装成功curl http://localhost:7474/
同样的,缺省情况下是只接受本地访问要求,可以编辑/etc/neo4j/neo4j.conf文件增加"dbms.default_listen_address=0.0.0.0"这一行,随后重新启动服务即可远程访问:
sed -i "$adbms.default_listen_address=0.0.0.0" /etc/neo4j/neo4j.confsystemctl restart neo4j
以上使用sed命令增加了绑定地址,随后使用主流的浏览器(Edge,firefox,chrome)就可以访问数据库,如下图所示:
第一次访问时的缺省用户名与口令均是Neo4j,登录后需要修改。随后就进入到工作界面如下:
也可以使用传统的数据库客户端如DBeaver来访问Neo4j数据库。此时的连接属性设置如下图所示:
与SQL类似,Neo4j推出了专用于图的声明性文本查询语言Cypher。Cypher包含语句、关键词和表达式,比如谓词、函数等,其中很多大家都很熟悉(如WHERE,ORDER BY,SKIP LIMIT,AND,p.unitPrice > 10)。与SQL不同,Cypher完全是表达图模式的。添加了一个特殊子句MATCH来匹配数据中的这些模式。使用圆括号表示节点实体的圆,比如:(p:Product)。而关系的箭头使用-->来表达。Cypher语言在其它方面的重点是图概念,例如路径、可变长度路径、最短路径函数;列表上许多功能,操作和谓词的支持以及链接查询的功能。使用Cypher可以更新图结构和数据,甚至导入大量的CSV数据。通过用户定义的过程能够扩展语言。通过openCypher项目,Cypher已经成为一种现代图查询语言的开放标准,并且得到了多家数据库公司的支持。其语法可以参考[语法卡](https://neo4j.com/docs/cypher-refcard/current/)。
可以通过多种方式来访问Neo4j数据库:
◆ 使用命令行工具如Cypher shell等
◆使用主流的浏览器访问,Neo4j称为Neo4j browser
◆其它第三方工具软件
模仿movie graph,我们建立一个中文的图数据库。相关创建内容如下:
CREATE (Jiangshuying:Person {name:"江疏影", born:1986})CREATE (胡哥:Person {name:"胡哥", born:1982})CREATE (Jindong:Person {name:"靳东", born:1976})CREATE (万莤:Person {name:"万莤", born:1982})CREATE (Gentlemen:Teleplay {title:"恋爱先生", released:2017})CREATE (NothingButThirty:Teleplay {title:"三十而已", released:2020})CREATE (外科风云:Teleplay {title:"外科风云", released:2017})CREATE (伪装者:Teleplay {title:"伪装者", released:2015})CREATE (好先生:Teleplay {title:"好先生", released:2016})CREATE (县委大院:Teleplay {title:"县委大院", released:2022})CREATE (Jiangshuying)-[:ACTED_IN {roles:["江莱"]}]->(好先生)CREATE (Jiangshuying)-[:ACTED_IN {roles:["罗钥"]}]->(Gentlemen)CREATE (Jiangshuying)-[:ACTED_IN {roles:["王漫妮"]}]->(NothingButThirty)CREATE (Jindong)-[:ACTED_IN {roles:["庄恕"]}]->(外科风云)CREATE (Jindong)-[:ACTED_IN {roles:["明楼"]}]->(伪装者)CREATE (Jindong)-[:ACTED_IN {roles:["Boss"]}]->(Gentlemen)CREATE (胡哥)-[:ACTED_IN {roles:["明台"]}]->(伪装者)CREATE (胡哥)-[:ACTED_IN {roles:["梅晓哥"]}]->(县委大院)CREATE (万莤)-[:ACTED_IN {roles:["徐丽"]}]->(好先生)
此时形成的知识图谱如下所示:
由此可见Neo4j对中文的支持非常好,可以混合用中英文来建立自己的知识图谱。下面的代码显示了,寻找万莤与胡哥间相互认识的最短路径。
match p=shortestpath((:Person {name:"江疏影"})-[*]-(:Person {name:"胡哥"})) return p
查询结果如下图所示:
当然这只是一个示例,因为并没有真正梳理每个人的关系,仅仅是从现有的知识中计算出来的。对于知识图谱来说,信息越充分,威力越巨大。
需要注意的是,以上命令必须一次性输入执行完成,否则就会出现看起来是一样的节点,但Neo4j会认为是不同的对象,从而形成意料之外的节点与关系。
Python操作知识图谱
安装了Py2neo就可以使用Python操作Neo4j了。我们也就可以在线处理大规模的数据,实现知识图谱的自动构建了。安装方法非常简单,直接在cmd中输入下列命令即可:
pip install py2neo
以下代码创建了一个极简的知识图谱,如下图所示:
示例代码如下所示:
from py2neo import Node, Relationship, Graph, NodeMatcher, RelationshipMatcher# 远端NEO4J服务器test_graph = Graph("http://172.20.103.169:7474",auth=("neo4j","88488848"))A = Node("员工", name="张三", PID = 100)B = Node("员工", name="李四", PID = 100)C = Node("公司", name="西安衍舆", CID = 99)test_graph.create(A)test_graph.create(B)test_graph.create(C)test_graph.create(Relationship(A, "工作于", C))test_graph.create(Relationship(B, "工作于", C))print(test_graph.nodes.match("员工").all())
从图中可以看出,Neo4j对于中文的支持是非常好的。能够以非常符合中文习惯的方式写出相关知识。真正能够实用的知识图谱必须是日积月累的过程,有了称手的工具后,知识本身的正确性才是重点。
关键词:
Python工具箱系列(三十一)
天天视点!可变参数的格式化输出
利用kali破解WiFi密码_全球热消息
天天观焦点:重庆市高级人民法院依法公开宣判张波、叶诚尘故意杀人案
李想说出大实话:理想L8最大竞争对手其实是这台车
号称“不泄密” 微信键盘1.0.6发布:加入2项新功能
起售价或低于25万 凯迪拉克GT4实车曝光:家族最便宜SUV来了|世界今热点
长沙被占车位成为网红打卡地:有人两百公里外赶来直播 环球快看
省级校本教研基地工作总结(精选26篇)|世界观点
6000+字讲透ElasticSearch 索引设计
Linux系统上创建.NET6项目(通过命令行(CTL)方式)
15日起内地赴港澳签注办理更便捷 端午赴港澳机票较五一降三成|环球视点
索尼最强旗舰!Xperia 1 V发布:8999元起
4月SUV销量排名:比亚迪双星无敌!燃油车苦苦挣扎
当前视点!Linux重启Java的.sh脚本shell
stm32 boot0硬件接法导致的概率性启动失败问题总结和反思
k3s 证书过期修改
《种地吧》下期精彩:后陡门篮球赛主打团结 种地团直面成长阵痛-当前资讯
孟羽童视频回应离职格力:下一步将申请读研|环球观点
2999元!佳能发布掌上Vlog机PowerShot V10 比手机还小巧
焦点热讯:索尼放大招 Xperia 1 V用上双层晶体管传感器:画质媲美全画幅相机
天玑9200+正式发布!解决旗舰用户三大痛点 带来顶级游戏性能体验 世界新消息
黑寡妇毒杀亲夫
【天天热闻】手动挡正确停止和关闭发动机 以及关闭发动机钥匙的步骤
动力节点老杜B站Spring6学习笔记—Spring的入门程序
IOC类图
【独家】泰州姜堰:绿色能源清风吹拂一座城
环球新消息丨借鉴新加坡经验 深圳地铁拟推行早起上班优惠价:缓解早高峰拥挤
正式超越日本!一季度中国成全球第一大汽车出口国 天天速看料
三层防护 稳健医用外科口罩便宜了:3盒150只到手21.8元
全球快播:年内最大降幅?国内油价或即将大幅度下调 就在5月16日
微信开启“带货时代”:公众号今日起也能带货了
华硕笔记本A45v怎么清空所有数据?华硕笔记本a45v参数配置
电脑网页变成灰色是怎么回事?电脑网页变成灰色怎么解决?
国家移民管理局发布公告 5月15日起全面恢复口岸快捷通关|焦点消息
金立V183什么时候上市的?金立V183手机参数
宏基笔记本白屏是什么原因?宏基笔记本白屏怎么解决?
qq邮箱怎么点亮图标?qq邮箱格式怎么写?
周迅身高是多少?周迅个人资料简介
打电话不显示号码是怎么回事?打电话不显示号码怎么办?
盛夏晚晴天吻戏在哪几集?盛夏晚晴天电视剧结局是什么?
版权符号怎么打出来?版权符号html代码
吉林市为什么和省一个名字?吉林市旅游必去十大景点
世界快看:第二章、操作系统基本原理
世界最资讯丨蒙哥马利算法
每日观点:热烈欢迎成都市武侯区人社局领导莅临璞华考察参观
山西印发冬小麦后期田间管理意见
世界关注:荣盛发展年报遭问询,被追问营收大幅下滑、业绩大额亏损且亏损面进一步扩大原因及合理性
全球最大超算竞赛 现场DIY设计并攒机 北大学生拿下总冠军
美国4S店躺赢 巴菲特不爱车企爱经销商 天天速看
华为海外连开两场重磅发布会:发力全球市场势头不减! |每日视讯
太贵卖不动?NV又准备RTX 4070公版:4799元国内玩家抢吧 全球聚看点
人造肉更环保?新研究表明:对气候影响可能是普通牛肉25倍|看点
焦点快报!2023年上海市全民数字素养与技能提升月启动
Docker网络类型
Java之图片上传与删除功能的实现
用户分享 | Dockquery,一个国产数据库客户端的初体验
Django SQL注入漏洞分析(CVE-2022-28346) 全球报资讯
openAI发布v0.2.0了 全球快讯
环球热资讯!奥迪“全新”A6曝光!车尾神似5系,换保时捷引擎高级吗?
【全球新要闻】孟羽童曾称董明珠不可复制:没有人可以成为第二个董明珠
男子机场拍到李若彤被妻子怀疑出轨 李若彤发帖为其澄清 重点聚焦
2599元 尼康首款Z卡口电动变焦镜头来了:广角、特写都能拿捏
长沙一停车场要求按颜色停放 违停罚100元 律师:没法律效力
热点评!大手笔!丰田承认开发电动车失败 决定再砸500亿元
观天下!Haynes:有位湖人球员说 让勇士叽叽歪歪继续抱怨吧
深交所向*ST海投发出问询函|世界实时
环球新消息丨Android 14发布:首批适配机型公布
【环球热闻】谷歌首款平板Pixel Tablet发布:自研G2处理器、边框感人
环球观点:董明珠“接班人”孟羽童离职:曾称工作21个小时 工作强度太大
“蔚小理”变成“理哪零”造车新势力淘汰赛加速
今年来新增专项债已发行逾1.6万亿元
【财经分析】英国制造业增长乏力 与服务业分化明显
出行信息早知道!河北最新天气预报、限行提示、高速路况请查收→
全球简讯:MIUI 14开发者预览版上线:小米13、小米平板6等喜提安卓14
取代OLED!未来iPhone屏幕脱胎换骨:要用MicroLED屏-环球讯息
史上最坚固铰链!谷歌Pixel Fold折叠屏手机发布:处理器独一无二
谷歌Pixel 7a发布:3500元 不标配充电器
世界视讯!学系统集成项目管理工程师(中项)系列20_变更管理
bothhand ns0013lf_bothhand
世界看点:阿里云打5折降价 百度回应:这是感受到了竞争威胁
世界动态:彻底搞懂 Cookie、Session、Token、JWT
在 IDEA 中创建 Java Web 项目的方式(详细步骤教程)|天天聚看点
环球热讯:实验五
观点 | 美国通胀十连降后还需担心吗?
反转!高铁掌掴事件完整视频曝光:双方11秒打3巴掌、王某脏话不断
理想汽车:没有降价的打算 上市定价就是最有竞争力区间 天天简讯
全球微动态丨6月9日上映!《变形金刚7》IMAX海报发布:汽车人、猛兽侠集结
【全球快播报】DDR5内存大跌!24GB高频内存仅399元
俄罗斯质疑美国登月造假:50年前能做到 为何现在反而做不到 每日信息
锻造1-450最省材料攻略_锻造多少会碎-世界热门
动态焦点:去年全球钴产量达19.8万吨 电动汽车消耗7.4万吨
grand theft auto vc 8.1怎么解决_grand theft auto vc 8 1
Java for循环标签跳转到指定位置 全球快报
食品添加剂都是“洪水猛兽”?科技与狠活你知道多少? 今日观点
每日速讯:网友曝光南京江边惊现扬子鳄:我国特有种 一级保护动物
超越1英寸大底!华为P60 Pro凭什么能拿到DXO拍照世界第一 当前看点
Z9良心缩水 尼康发布全画幅微单数码相机Z8:售价27999_焦点要闻
美术315 环球快报
大众软件部门两年亏损250亿 管理层集体被炒 环球观速讯