首页 > 数据库 >图数据库

图数据库

时间:2022-11-22 11:13:30浏览次数:64  
标签:name HugeGraph 数据库 pig hugegraph 节点

数据库类型

关系型数据库(Excel)行

  1. MySQL

  2. SQL Server

  3. Oracle

  4. PostgreSQL

键值数据库(内存数据)

  1. Redis

  2. Memcached

列数据库(列)横向关系的转置

  1. HBase

文档型数据库

  1. MongoDB

图数据库

  1. neo4j

  2. Bgraph

  3. Hugegraph

图数据库简介

图数据库主要由两部分构成:点和连接点(边)

能够简化关系型数据库需要通过多次Join或者需要多次遍历才能描述出的关系

Hugegraph简介

image-20220901095208268

  • 可以自定义后端存储(mysql,hbase,rocksdb...)

  • 数据库导入工具

  • 数据可视化

  • 一个数据库支持3张图,相当于三个数据库,之前是隔离的,最大支持存储100g的数据

  • 支持高可用,分布式集群部署

  • 数据的备份和数据恢复

  • 图算法(最短路径,连通子图...)

  • 索引,内嵌分词

  • 支持Gremlin

下载,安装

下载:下载地址

版本对应关系:

image-20220901111610106

components描述下载/版本
HugeGraph-Server The main program of HugeGraph 0.12.0
HugeGraph-Hubble Web-based Visual Graphical Interface 1.6.0
HugeGraph-Loader Data import tool 0.12.0
HugeGraph-Tools Command line toolset 1.6.0

 

服务端-HugeGraph-Server Quick Start

 

数据导入工具-HugeGraph-Loader Quick Start

 

命令行工作集-HugeGraph-Tools Quick Start

 

控制台Web可视化界面-HugeGraph-Hubble Quick Start

 

客户端-HugeGraph-Client Quick Start

 

需要JDK1.8或以上

启动,运行

  1. 启动hugegraph-Server

    • 解压hugegraph-0.12.0.tar.gz

    • 进入bin目录

    • 执行init

    • 执行start

手动编译(跳过测试)

mvn package -DskipTests

  1. 启动hugegraph-hubble可视化

    • 解压hugegraph-hubble-1.6.0.tar.gz

    • 进入bin目录

    • 执行start

  2. 启动hugegraph-loader导入数据,数据建模

    • 解压hugegraph-loader-0.12.0.tar.gz

    • 写数据文件(点数据json、边数据json)

    • 执行导入命令

    • bin/hugegraph-loader -h 127.0.0.1 -p 8080 -g {GRAPH_NAME} -f ${INPUT_DESC_FILE} -s ${SCHEMA_FILE} -h {HOST} -p {PORT}

      bin/hugegraph-loader -h 127.0.0.1 -p 8080 -g hugegraph -f E:wangxiang\example.json  -s E:example\schema.groavy
  3. hugegraph-client

neo4j

下载地址:https://neo4j.com/download-center/#community

community为社区版本

Enterprise为企业版本

beo4j 3版本后的需要JDK8

beo4j 4版本后的需要JDK11

配置环境变量<NEO4J_HOME>

修改配置文件neo4j.conf,将dbms.default_listen_address=0.0.0.0配置放开,允许除本机外其他地址也能访问

通过控制台启动:neo4j.bat console

基本元素与概念

节点(node)

表示一个实体记录,就像关系数据库中的一条记录。一个节点包含多个属性和标签。

关系(relationship)

关系用于将节点关联起来构成图,关系也成为图论的边(Edge')

属性(property)

节点和关系都可以有多个属性。属性是由键值对组成的,就像JAVA当中哈希。

标签(lable)

标签指示一组拥有相同属性的节点,但不强制要求相同,一个节点可以有多个标签。

路径(path)

图中任意两个节点都存在有关系组成的路径,路径有长短之分。

Cypher查询语言

Cypher是一种声明式图数据库查询语言,类似关系数据库当中的SQL。Cypher设计借鉴了其他

如SQL、Phthon语言惯用作法。

MATCH:匹配图模式

WHERE:过滤条件

RETURN:定义返回结果

基本语法:

增:CREATE

删:DELETE

改:SET

查:MATCH

函数:

witch:

count:

 

()->代表节点

{}->代表属性

[]->代表关系

查询所有节点信息:

match(p:pig) return p

创建节点:

create (:pig{name:"猪奶奶",age:14});

创建关系:

match (a:pig{name:"猪爷爷"}) match(b:pig{name:"猪奶奶"}) create (a)-[c:夫妻]->(b) return c;

创建节点和关系:

create (:pig{name:"猪爸爸",age:8}) -[:夫妻{age:5}] -> (:pig{name:"猪妈妈",age:6})

修改属性:

match(p:pig{name:"猪妈妈"}) set p.age=8;

删除属性:

match(p:die{name:"猪祖父"}) delete p;

查询最短路径:

match p=shortestpath((a:pig{name:"佩奇"})-[*]->(b:pig{name:"猪奶奶"})) return p;

match p=shortestpath((a:pig{name:"佩奇"})-[*]->(b:pig{name:"猪奶奶"})) return p;

 

 

 

 

 

 

标签:name,HugeGraph,数据库,pig,hugegraph,节点
From: https://www.cnblogs.com/wx-36/p/16914482.html

相关文章

  • java mybatis查询数据库获取树形结构数据
    数据库数据,每条数据都有code和parent_code,最顶级的parent_code为1实体类importcom.baomidou.mybatisplus.annotation.FieldFill;importcom.baomidou.mybatispl......
  • 2.Oracle数据库冷备迁移
    前提条件: 1.同版本的数据库,2.源库的数据量不大查看setline132colpathfora20;selectnamefromv$datafile;selectmemberfromv$logfile;selectnamefr......
  • 数据库的管理
    通过TFDSQLiteSecurity可以对数据库进行加密处理:withsqlSecuritydobeginDatabase:='x:\path_to_database\db.sdb';Password:='p@ssword';ToPasswo......
  • .NET6使用NLog向文件、数据库写数据
    1.Nuget引入NLogNLog.Web.AspNetCoreNLog.Database(写入数据库使用)2.创建nlog.config注意数据库连接字符串需要配置TrustServerCertificate=True;不然会有认证问题......
  • MySql复习-数据库的概述
    第01章_数据库概述讲师:尚硅谷-宋红康(江湖人称:康师傅)官网:http://www.atguigu.com1.为什么要使用数据库持久化(persistence):-存到可掉电式存储设备中以供之后使用......
  • 如何将爬取的数据保存至MySQL数据库里
    python链接mysql数据库保存数据的步骤。(1)创建表单。createtablevegetable_price( id    intauto_increment    primarykey, prodCat ......
  • idea使用oracle数据库报错《java.sql.SQLRecoverableException: IO 错误: Undefined E
    错误描述java.lang.RuntimeException:java.sql.SQLRecoverableException:IO错误:UndefinedError atcom.baomidou.mybatisplus.generator.config.DataSourceConfig.......
  • springboot实现无数据库启动
    问题springboot往往是作为b/s系统的server端的架子来使用,但是有些时候,是作为静默的server,并没有界面和数据库,但是springboot默认是链接数据库的,如何解决这个问题呢?使用sprin......
  • MyCAT实现数据库读写分离
    官方网站:http://www.mycat.io/======================================================Mycat数据库中间件对于前端应用程序连接时会提供一套用户名和密码以及一......
  • DM8数据库模式对象管理
    管理模式模式与用户之间的关系:模式定义:模式是一个特定的对象集合,在概念上可将其看作是包含表、视图、索引等若干对象的对象集模式对象:表、视图、约束、索引、序列、触......