janusgraph批量导入数据-IBM( janusgraph-utils)的使用
janusgraph-utils的简介
可与JanusGraph一起使用的实用工具,包括:
- JanusGraphSchemaImporter:一个groovy脚本,它将图形模式定义(JanusGraph模式的JSON表示)导入JanusGraph
- 合成数据生成器:用于将合成数据生成为CSV文件的工具
- 数据导入程序:从CSV文件将数据导入JanusGraph的工具
参考:https://github.com/IBM/janusgraph-utils/blob/master/doc/users_guide.md
IBM导入工具使用手册
源数据准备(四个文件):
顶点文件,边文件,数据结构文件,数据关系映射文件
要求:
顶点文件和边文件必须是csv文件
数据结构文件和数据关系映射文件是json文件
数据结构文件:描述该图中的数据结构
包括:
propertyKeys:包含属性定义的数组。每个属性都在一个对象中定义
vertexLabels:包含顶点定义的数组。每个顶点都在一个对象中定义
edgeLabels:包含边的定义的数组。每个边都在一个对象中定义
vertexIndexes:顶点的索引定义的数组
edgeIndexes:边的索引定义的数组
vertexCentricIndexes:包含以顶点为中心的索引定义的数组。每个以顶点为中心的索引都在一个对象中定义
数据关系映射文件:指定数据文件中的字段和数据结构中的关系

vertexMap:顶点文件的关系映射,
edgeMap:边文件的关系映射
注:在使用前,需要理解再程序中的datamapping文件和schema文件,编写自己的文件

使用步骤:
注:该工具需要maven编译,所以在外部进行编译,公司内网无法进行编译
1.在有网的环境下
1.1 下载编译
git clone https://github.com/IBM/janusgraph-utils.git cd janusgraph-utils mvn package
1.2 编译完成以后使用
2. 使用
这是用的是自带的脚本run.sh进行导入
2.1 创建文件夹
mkdir law
2.2 上传源数据文件到law文件
2.3 修改run.sh的脚本权限
chmod 777 run.sh
2.4 编辑janusgraph的环境变量
vi /etc/profile
export JANUSGRAPH_HOME=/opt/app/janusgraph-0.3.-hadoop2
export PATH=$PATH:$JANUSGRAPH_HOME/bin
2.5 编写运行命令
示例:run.sh import <janusgraph-config-file> <data-files-directory> <schema.json> <data-mapping.json>
./run.sh import $JANUSGRAPH_HOME/conf/gremlin-server/janusgraph-hbase-es.properties \ /opt/app/janusgraph-utils/law \ /opt/app/janusgraph-utils/law/law_item_schema.json \
/opt/app/janusgraph-utils/law/law_item_datamapper.json
janusgraph批量导入数据-IBM( janusgraph-utils)的使用的更多相关文章
- java使用POI实现Excel批量导入数据
1.准备工作 1.1 创建模板表头与数据库表字段一一对应,示例如下 1.2将模板放入项目中,如下图所示: 2.前端页面 2.1 使用超链接提供模板下载地址 <html lang="zh ...
- csv文件批量导入数据到sqlite。
csv文件批量导入数据到sqlite. 代码: f = web.input(bs_switch = {}) # bs_switch 为from表单file字段的namedata =[i.split( ...
- 使用python向Redis批量导入数据
1.使用pipeline进行批量导入数据.包含先使用rpush插入数据,然后使用expire改动过期时间 class Redis_Handler(Handler): def connect(self) ...
- Cassandra使用pycassa批量导入数据
本周接手了一个Cassandra系统的维护工作,有一项是需要将应用方的数据导入我们维护的Cassandra集群,并且为应用方提供HTTP的方式访问服务.这是我第一次接触KV系统,原来只是走马观花似的看 ...
- Redis批量导入数据的方法
有时候,我们需要给redis库中插入大量的数据,如做性能测试前的准备数据.遇到这种情况时,偶尔可能也会懵逼一下,这里就给大家介绍一个批量导入数据的方法. 先准备一个redis protocol的文件( ...
- 项目总结04:SQL批量导入数据:将具有多表关联的Excel数据,通过sql语句脚本的形式,导入到数据库
将具有多表关联的Excel数据,通过sql语句脚本的形式,导入到数据库 写在前面:本文用的语言是java:数据库是MySql: 需求:在实际项目中,经常会被客户要求,做批量导入数据:一般的简单的单表数 ...
- 批量导入数据到mssql数据库的
概述 批量导入数据到数据库中,我们有好几种方式. 从一个数据表里生成数据脚本,到另一个数据库里执行脚本 从EXCEL里导入数据 上面两种方式,导入的数据都会生成大量的日志.如果批量导入5W条数据到数据 ...
- asp.net线程批量导入数据时通过ajax获取执行状态
最近因为工作中遇到一个需求,需要做了一个批量导入功能,但长时间运行没个反馈状态,很容易让人看了心急,产生各种臆想!为了解决心里障碍,写了这么个功能. 通过线程执行导入,并把正在执行的状态存入sessi ...
- ADO.NET 对数据操作 以及如何通过C# 事务批量导入数据
ADO.NET 对数据操作 以及如何通过C# 事务批量导入数据 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ...
随机推荐
- 2. 运行Spark Streaming
2.1 IDEA编写程序 Pom.xml加入以下依赖: <dependency> <groupId>org.apache.spark</groupId> <a ...
- go 程序整个执行过程
- yii框架中的下拉菜单和单选框
yii中的下拉菜单: 第一种: <?= $form->field($model, 'parent_id')->dropDownList(ArrayHelper::map($data, ...
- 使用canvas实现360水球波动
代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- ELK学习笔记之使用curl命令操作elasticsearch
0x00 _cat系列 _cat系列提供了一系列查询elasticsearch集群状态的接口.你可以通过执行curl -XGET localhost:9200/_cat 1. 获取所有_cat系列的操 ...
- docker下安装mysql数据库
因为用了.net core 所以想学习下使用docker: 项目中刚好要用到mysql数据库,所用用docker来安装一次,我使用的是5.6版本: 1.拉取官方镜像 docker pull mysql ...
- C# vb .net实现倾斜效果滤镜
在.net中,如何简单快捷地实现Photoshop滤镜组中的倾斜效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第一步 ...
- 【转载】WPS通过设置密码的方式对Excel文件加密
有时候Excel文件中可能包含一些敏感数据,此时希望对Excel文件进行加入密码的形式进行加密保护,在WPS软件和Office Excel软件中都支持对Excel文件进行密码保护,设置了密码保护的Ex ...
- 手写MQ框架(一)-准备启程
一.背景 很久以前写了DAO框架和MVC框架,前段时间又重写了DAO框架-GDAO(手写DAO框架(一)-从“1”开始,源码:https://github.com/shuimutong/gdao.gi ...
- 在DoNetCore MVC 中如何使用AutoMapper
刚开始,按照在donet mvc 的方法写了一遍,发现行不通啊,于是百度了一下,找到这么一篇 https://stackoverflow.com/questions/41284349/automapp ...
