可视化人脉图谱

前言

历时一个月,基于NoSQL(非关系型数据库)的可视化人脉图谱项目终于上线与大家见面了!这大概是国内开发界相关领域首个开源项目吧,虽然目前完善的功能较为简单,不过这套框架的可扩展性极强,只要开发者能想得到适合的领域,这套框架就能最大程度的兼容与适配,比如为历史中的人物添加关系方便记忆,比如管理平台中用户的关注关系以整合资源,比如理清书籍、游戏、影视作品中的人物关系……作为开发团队,我们也非常惊喜与荣幸,希望该项目能够成为推动HelpDesk、数据可视化、数据看板等IT基础能力持续降低上手门槛的起点。

节点的增删改查

将鼠标放置于人物节点之上,隔壁的方框中将会自动显示与该人物有关的信息;

NoSQL可视化人脉图谱说明书

点击人物节点,用户可自行编辑与该人物相关的各项信息;

NoSQL可视化人脉图谱说明书

如果需要新增人物节点,请点击左下角的新增成员,填写完相关信息之后点击确认即可完成添加;

NoSQL可视化人脉图谱说明书

如果要删除节点,请保证该节点处于孤立状态,再进行删除,即该节点与其他任何节点都不存在关联关系,否则该节点将无法删除;

NoSQL可视化人脉图谱说明书

关系的增删改查

将鼠标放置于关联关系之上。此时隔壁方框中将会自动显示对应两节点之间的关联信息;

NoSQL可视化人脉图谱说明书

点击新增关系,填写完信息之后,点击确定即可将节点通过关系绑定到关系;

NoSQL可视化人脉图谱说明书

同样地,我们将该关联属性称之为边,点击任意边可编辑关联属性;

NoSQL可视化人脉图谱说明书

而删除边(关联关系),只需在图中点开相关边的详情之后点击删除即可;

NoSQL可视化人脉图谱说明书

目前我们仅基于自己的业务做了最基本的功能展示,实际上该组件的可扩展性还是很广的,例如改变节点属性、改变连接属性,且无论是节点还是边甚至可以设为多种……Nosql作为更符合人脑记忆的数据展现形式,在未来理论会成为应用界的主流。可惜在国内暂时还看不到相关高可用的开源项目,所以我们成为了第一个吃螃蟹的人。

如何上手

  1. 打开仓库:https://github.com/hokaso/hocassian-people-neo4j,将项目克隆到本地。
  2. 分别用相关IDE打开前后端,其中根目录为后端,「neo4j-nosql-front」目录为前端。
  3. 参考Neo4j 学习手册 在服务器中配置好neo4j的生产环境。
  4. 导入示例数据库:

首先在项目中找到graph.db.dump文件,将该文件移动至服务器的/home/ubuntu/目录中;

NoSQL可视化人脉图谱说明书

将数据库文件导入本地(停止→导入→启动):

SQL

sudo neo4j stop

sudo neo4j-admin load --from=/home/ubuntu/graph.db.dump --database=graph.db --force

sudo neo4j start

  1. 将上边文件夹里的application.yml.bak移动至src/main/resources/下,重命名为application.yml,并将配置逐项按个人实际情况进行设置;
  2. 将上边文件夹里的nosql.zip解压后放入相应文件夹,路径与此处配置相匹配:

NoSQL可视化人脉图谱说明书

比如你设置profile为linux的/home,那么nosql的路径为/home/nosql;

  1. 将上边文件夹里的vue.config.js.bak移动至neo4j-nosql-front/下,重命名为vue.config.js,并将配置逐项按个人实际情况进行设置;
  2. maven、npm install那些就不必多言了吧,装好之后就可以直接运行了~(记得用npm install --registry=https://registry.npm.taobao.org 来安装啊!国内一般我们都是这么装的……)

扩展开发

NoSQL可视化人脉图谱说明书

人物节点与人物关系均可通过编辑对应实体类完成属性的修改,若开发者希望迁移至个人业务,则修改实体类、修改mybatis、微调前端样式即可。

相关信息

使用技术栈:SpringBoot、neo4j、Vue.js、mybatis、echarts

推荐运行环境:Ubuntu 20.04 运存4G及以上


人生有無數種可能,人生有無限的精彩,人生沒有盡頭。一個人只要足夠的愛自己,尊重自己內心的聲音,就算是真正的活著。