黑马程序员视频库

播妞微信号:mm7718mm

传智播客旗下互联网资讯、学习资源免费分享平台

随着互联网的发展,大数据行业简单的“找规律”式算法已经不能满足用户体验的需求了。我们需要更加深度地对数据进行挖掘,这就需要涉及到知识图谱的运用了。

知识图谱就是将个体与个体之间的关系以点和线的方式表达出来,得到一个关系网络,从而可以从点”顺藤摸瓜“到与他有关的所有点。它的应用优势在以关系的角度去分解问题,也就将大数据算法从“数据规律”到“数据理解人”的维度了,所以有人说知识图谱会是AI行业的未来!

知识图谱在我们生活中最常见的例子就是百度百科了,当你输入”章子怡的老公“时,会直接出现汪峰的词条,而不仅仅是包含出现”章子怡的老公“关键词的网页,这就是知识图谱给用户搜索体验带来的升级,而百度搜索在进行这一工作时,也从普通搜索变成了智能回答。

Neo4j数据库已经成为大数据业内知识图谱的主流数据库,那么我们如何运用Neo4j建立知识图谱呢?以《人民的名义》电视剧的人物关系举例,一起来看看实操步骤!

数据库的分类

1.关系型数据库

关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。用户通过查询来检索数据库中的数据,而查询是一个用于限定数据库中某些区域的执行代码。关系模型可以简单理解为二维表格模型,而一个关系型数据库就是由二维表及其之间的关系组成的一个数据组织。主流的关系型数据库有Oracle、DB2、MySQL、SQLServer等

2非关系型数据库

非关系型数据库,也称为NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。

NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。常见的非关系型数据库按照分类有:

  • 键值(Key-Value):Redis、Memcached、Oracle BDB

  • 列存储数据库:Cassandra、HBase、 Riak

  • 文档型数据库:MongoDB、SequoiaDB

  • 图形数据库:Neo4J、JanusGraph、TigerGraph

Neo4j数据库

01

什么是Neo4j?

Neo4j是一个高性能的NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。

Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。简单来说Neo4j是一个开源的基于Java开发,运行于JVM之上。

02

Neo4j的数据结构。

在一个图中包含两种基本的数据类型:**Nodes****(节点)**和**Relationships****(关系)**。**Nodes****和Relationships**包含key/value形式的属性。Nodes通过Relationships所定义的关系相连起来,形成关系型网络结构。

03

社区版和企业版区别

一、社区版限制

节点:320亿

关系:320亿

属性:640亿

二、企业版与社区版都有的功能

  1. Property Graph Model(属性图模型)

  2. Native Graph Processing & Storage(本地图形处理和存储)

  3. ACID(事务管理)

  4. Cypher – Graph Query Language(支持Cypher图查询语句)

  5. REST API(Restful风格的api)

  6. High-Performance Native API(本机高性能api)

  7. HTTPS

三、企业版独有的功能

  1. 集群(水平伸缩/高可用)

    社区版不支持集群等高可用配置,只有单机。

  2. 基于用户和角色的访问控制

    社区版在安全管理方面相比企业版而言,功能较弱,仅提供用户和密码管理,没有涉及角色、权限控制等企业必需的安全管理功能。

  3. 热备份

    社区版不支持热备份(neo4j-backup),只有企业版才有这个工具。

  4. 日志功能

    社区版本没有安全日志功能,Neo4j提供安全日志和查询日志两种,用于记录数据库的查询和发生的安全事件,但仅在企业版才支持。

  5. 查询管理

    可以设置事务超时时间,以及列出运行的查询,可以选择性终止一个或多个查询。

  6. 诊断及调优工具

    JMX日志和监控,包含GraphiteJMX客户端

  7. 垂直伸缩(超过4核)

    支持超过4个以上的CPU核心,对于超过4核的CPU提供高度优化的并行图算法执行过程。

  8. 锁管理

    对于超过4核的CPU系统提供更加高效的写入锁机制以增加并发处理能力

  9. Cypher查询追踪

    对正在运行的查询进行状态跟踪和管理(例如强制结束查询的运行)

  10. 企业级监控

    更全面的监控插件以及日志输出,社区版本仅有http日志,企业版包含了GC、Security日志。

  11. 世界级支持

    有钱啥都好说......

四、企业版报价

套餐(服务器x内核)价格(万美元/年)

3x 8 = 19.9(万美元/年)

3x 4 = 9.9(万美元/年)

2x 4 = 6.8(万美元/年)

1x 4 = 3.6(万美元/年)

这里需要注意neo4j的企业报价不仅和机器数量有关还与CPU核数挂钩。

04

Neo4j使用

一、环境

Java:jdk1.8

Neo4j:neo4j3.5.7

二、安装

>资料包:https://pan.baidu.com/s/1cA49NnqzQp0Z9QQdCX9GGw

1.jdk安装

1.上传解压

tar -zxvf jdk-8u221-linux-x64.tar.gz

2.配置jdk环境变量

vim /etc/profile

JAVA_HOME=/usr/local/java/jdk1.8.0_221

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME CLASSPATH PATH

3.使配置生效

source /etc/profile

2.neo4j安装

>下载地址:

https://neo4j.com/download-center/#releases

1.上传解压

tar-zxvf neo4j-community-3.5.7-unix.tar.gz

2.在conf目录下修改配置文件neo4j.conf允许远程访问

dbms.connectors.default_listen_address=0.0.0.0

3.将我们准备好的数据库解压至data/databases下数据库名默认为graph.db

tarxvf graph.tar

4.在bin目录下执行启动脚本

./neo4j start

5.浏览器访问

http://youip:7474

三、简单使用

1.通过浏览器访问图库,默认账密: neo4j/neo4j,会提示你修改密码

2.正确的打开姿势

3.查询图库并限制返回个数

MATCH(n) RETURN n LIMIT 25

4.如果这时候张宝宝想要找亮平办点儿事情应该怎么托关系呢?

我们通过关系图谱可以看到有n个方法可以实现。那么为了追求效率肯定是“求最少的人办最多的事儿”,这个时候就要用到我们的最短路径算法了,放心图库中已经自带了。

match p=shortestpath((u1:User{name:'张宝宝'})-[*]-(u2:User{name:'侯亮平'}))  return p

05

Neo4j应用场景

一、金融行业应用

反欺诈已经是金融行业一个核心应用,通过图数据库可以对不同的个体、团体做关联分析,从人物在指定时间内的行为。

例如去过地方的IP地址、曾经使用过的MAC地址(包括手机端、PC端、WIFI等)、社交网络的关联度分析,同一时间点是否曾经在同一地理位置附近出现过,银行账号之间是否有历史交易信息等。

二、社交网络图谱

在社交网络中,公司、员工、技能的信息,这些都是节点,它们之间的关系和朋友之间的关系都是边,在这里面图数据库可以做一些非常复杂的公司之间关系的查询。比如说公司到员工、员工到其他公司,从中找类似的公司、相似的公司,都可以在这个系统内完成。

三、企业关系图谱

图数据库可以对各种企业进行信息图谱的建立,包括最基本的工商信息,包括何时注册、谁注册、注册资本、在何处办公、经营范围、高管架构。围绕企业的经营范围,继续细化去查询企业究竟有哪些产品或服务,例如通过企业名称查询到企业的自媒体,从而给予其更多关注和了解。另外也包括对企业的产品和服务的数据关联,查看该企业有没有令人信服的自主知识产权和相关资质来支撑业务的开展。

企业在日常经营中,与客户、合作伙伴、渠道方、投资者都会打交道,这也决定了企业对社会各个领域都广有涉猎,呈现面错综复杂,因此可以通过企业数据图谱来查询,层层挖掘信息。基于图数据的企业信息查询可以真正了解企业的方方面面,而不再是传统单一的工商信息查询。

06

思考

以上只是neo4j图数据库的基本安装、简单使用以及应用场景,那么我们该如果用好图数据库,如何去定义自己的图模型、编写图库语句以及图库如何用我们的java代码来操作了?请关注下期出品。

 大数据公开课资源免费听 

就在黑马程序员视频库官网

推荐阅读:

为什么百度知道章子怡的老公是汪峰?点击教你AI智能技术!相关推荐

  1. 百度王海峰:多模态深度语义理解将让AI更深地理解真实世界

    7月4日召开的百度AI开发者大会(Baidu Create 2018)上,百度高级副总裁.AI技术平台体系(AIG)总负责人王海峰发布百度大脑3.0,并指出,百度大脑3.0的核心是"多模态深 ...

  2. AI:百度飞桨EasyDL多门视频课程,手把手教你如何定制高精度AI模型

    AI:百度飞桨EasyDL多门视频课程,手把手教你如何定制高精度AI模型 目录 百度飞桨EasyDL多门视频课程,手把手教你如何定制高精度AI模型 百度飞桨EasyDL多门视频课程,手把手教你如何定制 ...

  3. 四天人工智能 python入门体验课_百度深度学习7天打卡营,用Python+AI识别“青你2”小姐姐的高颜值...

    原标题:百度深度学习7天打卡营,用Python+AI识别"青你2"小姐姐的高颜值 "淡黄的长裙,蓬松的头发",一夜之间洗脑全网,小姐姐们实在太让人上头了! 导师 ...

  4. 百度CTO王海峰:亚洲丰富实践场景推动AI技术落地探索

    本文已在飞桨公众号发布,查看请戳链接: 百度CTO王海峰:亚洲丰富实践场景推动AI技术落地探索 王海峰 百度首席技术官 亚洲地区国家众多,发展水平差异显著,这背后意味着有丰富的实践场景,可供AI技术落 ...

  5. 百度研究院发布2022科技趋势预测:大模型实用化、AI助力深空探测成热门

    1月25日,百度研究院发布2022年科技趋势预测,这是其连续第三年发布对前沿科技趋势的展望. 今年上榜的科技趋势预测涵盖了AI核心技术.交叉学科与跨领域研究,以及AI的产业及社会价值三个层面,包括预训 ...

  6. 百度Q2智能云增长强劲;据悉史上最大 AI 芯片诞生!中兴与奇瑞成立合资公司一起加快开发5G汽车……...

    关注并标星星CSDN云计算 极客头条:速递.最新.绝对有料.这里有企业新动.这里有业界要闻,打起十二分精神,紧跟fashion你可以的! 每周三次,打卡即read 更快.更全了解泛云圈精彩news g ...

  7. 点击百度地图获取位置详细信息(点击获取当前点击位置信息)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. 更换百度地图图标html,百度地图接口,自定义图标,点击切换图标

    这里实现了一个指定地区的地图,自定义图标,点击切换图标 1.[代码][JavaScript]代码 body, html,#allmap {width: 100%;height: 100%;overfl ...

  9. 百度飞桨携手精诺数据打造智慧熔炼,AI让年轻人一秒变身“老师傅”

    凌晨2点,年近50的张师傅接到电话,铸造厂一个熔炼炉的配料过程出了一些问题,需要他紧急算一下补救方案.张师傅远程指导下调了三四炉,才得到了合格的结果. 2000年的时候我国的铸造已经达到世界第一的产量 ...

最新文章

  1. win 复制linux文件命令行,windows与Linux间远程拷贝文件(pscp命令)
  2. 【积淀】半夜突然有点想法
  3. html5--4-3 source元素-解决浏览器的兼容
  4. 2021年计算机三级新题型,2021年如何通过计算机三级考试的经验
  5. C#(.Net)中调用Sql sever汉字字符串显示为?问号
  6. 手把手叫你一台电脑配置两个Git账户
  7. 升级mac Mojave系统,git无法使用
  8. nginx使用ssl证书
  9. node.js安装以及git 的使用说明
  10. 阿里架构师墙裂推荐Java岗实战文档:Spring全家桶+Docker+Redis
  11. 计算机在bios设置用u盘启动不,bios设置u盘启动图解
  12. 用react制作半圆形进度条
  13. Linux基础命令之cd返回上级目录/返回根目录/进目录/返回上一次目录/返回指定目录
  14. 姿态估计mmpose一手体验 Ⅱ - 使用它!
  15. JeecgBoot集成DataV组件库
  16. arcgis做dijkstra_GIS最短路径分析中Dijkstra算法的优化
  17. [JS jQuery项目]仿网易云音乐项目问题摘要
  18. leetcode——【猫和老鼠】
  19. 调用JavaAPI发送传真
  20. 【聚水潭SDK使用说明】

热门文章

  1. 十大算法基础——上(共有25道例题,大多数为简单题)
  2. 了解lammps中NVE/NVT/NPT三种系综的特性和区别
  3. SOAP XML报文解析
  4. rtl8211 smi读取_DM8148+RTL8211网卡uboot调试
  5. win7系统卸载完WPS后,office2007图标显示不正常,及每次打开都要进行配置的问题的解决方案
  6. 人脸生成的最强算法——《StyleGAN》论文解析
  7. php swfupload handlers.js,swfupload 批量上传源码
  8. 密码编码学与网络安全(2):对称密码之传统加密技术
  9. 【C语言培训2】 前言 C语言程序设计课程介绍
  10. Mac OS X RAM Disk(内存盘) Shell