目录CONTENTS - Lu Jiaheng's homepage

Download Report

Transcript 目录CONTENTS - Lu Jiaheng's homepage

GraphDB
——任乔意 Presentation
目录CONTENTS
1
GraphDB的总体介绍
2
GraphDB的整体架构
3
GraphDB的数据模型
4
GraphDB的安装步骤
5
GraphDB的使用方法
内容陈述
Bread PPT
GraphDB的总体介绍
01
02
03
04
05
GraphDB的总体介绍
什么是图形数据库?
GraphDB
为什么要开发GraphDB?
是一款适合
处理网状数据的
GraphDB与关系数据库有什么区别?
图形数据库
GraphDB的优势在哪里?
Database
Graph = (Vertices, Edges )
不满于现有的查询性能与效率
现有技术处理不了频繁动态改变的数据结构
海量数据下复杂任务的实时分析需求
•
•
•
•
•
•
•
动态的类型扩展
用户友好的GQL
邻接顶点不需要索引
半结构化数据地处理
•
•
•
•
•
普遍适用接口
查询速度快
可扩展性强
灵活性好
价格优势
总体介绍
GraphDB的整体架构
01
02
03
04
05
Contents
01
02
03
Database
04
Contents
01
02
数据逻辑
存储层
GraphDB Database
03
04
Contents
02
数据库管理
层:
管理属
性超图
03
02
逻辑
顶点类型管理
04
GraphDB 接口
插件
逻辑表达
式优化
安全管理
器
事务管理
器
索引管理
器
边类型管理
顶点管理
索引管理
遍历
存储管理
GraphFS 接口
GraphDB Database
存储管
理器
Contents
03
02
对象的命名
空间,标识
符,数据流
的管理
GraphDB接口
03
04
文件管理层
对象管理
Object Management
(反)序列化
(De-)Serialization
Storage Medium接口
GraphDB Database
Contents
01
04
存储介质层:
• In – memory
• On-disk
persistency
03
02
GraphFS 接口
存储层
内存存储
本地存储
NonRevisionedIMFS
NonRevisionedPagedF
S
GraphDB Database
其他存储方式
GraphDB 1
GraphDS 1
GraphFS 1
用户
User
GraphFS 2
GraphDS 2
GraphDB 2
GraphDB的数据模型
01
02
03
04
05
顶点 – 属性
边
User Friend
Since = 2009/09/21
超边
Alice
ID = 1
Age=21
Bob
ID = 2
Age=33
边 – 属性
SET<User> Friends
SetMaxNumber = 12
超边 – 属性
User Friend
Since = 2009/06/23
顶点
Carol
ID = 3
Age=23
超边
属性超图
Abstract Vertex Entity
String Name
Vertex Student
String Name
Integer Age
Vertex University
String Name
SET<Student>Students
Students:…
Name: RUC
Building:
A,B,C,D
Edge Students
University->Students
Students
Students
BackwardEdge
StudiesAt
Students->University
Vertex Student
Name: Joy
Age:21
Hobby: Piano
Vertex Student
Name: Zebra
Age:21
Name: Jone
Age:24
Haircolor: Black
属性超图
GraphDB的安装步骤
• 在Windows平台下的安装
• 在非Windows平台下的安装
01
02
03
04
05
•
Microsoft.NET Framework 4.0
•
下载GraphDB程序包
• 命令行进行部署:
C:\Windows\Microsoft.NET
\Framework\v4.0.30319
\MSBuild.exe “CoreDeveloper.sln”
•
运行GraphDB
在Windows平台下的安装
在MONO架构下的安装
•
下载选中平台下的MONO并安装
•
下载git并安装,http://git-scm.com/
•
运行命令行来下载GraphDB程序
•
git clone git://github.com/sones/sones.git
•
切换到GraphDB的安装文件夹并运行GraphDB
•
./buildSolution.sh
适用于Linux, MacOSX, Solaris系统
GraphDB的使用方法
• 数据库的访问
• 增,删,改等数据操作
• 使用实例
01
02
03
04
05
通过Webshell访问数据库
•
•
在本地启动数据库服务器
打开网页:http://localhost:9975/WebShell
•
•
用户名密码登录
通过GQL进行数据库操作
GQL(Graph Query Language 简单介绍)
•
•
•
•
•
•
•
Create Vertex/Edge Type/Types
Alter Vertex/Edge Type/Types
Drop Vertex/Edge Type
Create/Drop Index
Insert into User Values (Name = ‘Joy’)
From User U Select U.Age where U.Name = ‘Joy’
……
GQL(Graph Query Language 简单介绍)
•
FROM User U SELECT U.Name.SUBSTRING(1, 2)
WHERE Name = 'Jens‘
FROM User U SELECT U.Name.TOUPPER()
WHERE Name = 'Jens'
•
•
•
FROM User u SELECT MIN(u.Age)
FROM User u SELECT SUM(u.Age)
……
Query Result查询结果的解释:
Duration:查询耗时
Errors:如有错误,便列出
Failed: 查询失败标记
Partial Success:警告出现标记
Query:查询的内容
Success:既没有错误也没有警告
Result:返回查询
需求的信息
例如顶点名称,属性等
1
2
•
•
•
•
•
打开VS 2010
创建Windows控制
台项目
加入相关的引用
GraphDB.dll等
将GraphDS实例化
Var_GraphDSSharp =
new GraphDSShart ()
•
•
1 2
•
创建一个新的数据
库
_GraphDSShart.Crea
teDatabase
利用C# API 建立
顶点类型,插入顶
点实例和进行查询
等操作
编程案例
Enjoy Your Experience With GraphDB
END
Q&A