TigerGraph文档
2.3
2.3
  • TigerGraph 2.3 技术文档目录
  • TigerGraph 版本比较
  • GSQL 图数据库算法库
  • 版本发布, 功能变更
    • 版本发布 - TigerGraph 2.3
      • 版本发布 - TigerGraph 2.2
    • 变更日志
  • INTRODUCTION AND OVERVIEW
    • TigerGraph 入门指南
    • GSQL 101
      • 环境准备
      • 定义一个Schema
      • 加载数据
      • 使用内置的SELECT进行查询
      • 使用参数化GSQL查询进行查询
      • 总结:你学到的东西
    • TigerGraph平台概览
    • Knowledge Base and FAQs
      • TigerGraph 常见问题
      • GSQL 常见问题
    • Kafka Loader用户手册
  • 系统管理指南
    • TigerGraph 管理员指南
      • 硬件及软件配置
      • 安装和配置
        • 安装指南
        • 高可用(HA)集群配置
        • 集群的扩容
        • 软件许可激活
      • 系统权限管理
        • 用户权限及验证
        • LDAP
        • 单点登录(SSO)
      • 数据加密
        • 链接的加密
        • 非活跃数据(Data At Rest)的加密
      • 系统管理
        • 基于Web的管理工具:Admin Portal
        • 使用gadmin工具管理
        • 数据的备份与恢复
        • 系统维护中的常见问题
  • 开发者指南
    • GSQL 语言开发指南
      • 第一部分 数据定义及加载
        • 简介
        • 系统和语言基础
        • 定义一个图模型(Graph Schema)
        • 修改图模型
        • 创建数据加载任务
        • 执行加载作业
        • 附录
          • 关键词和系统预留词
          • GSQL 从开始到结束的整个过程和数据流向
      • 第二部分 查询
        • 简介
        • 创建、安装、执行查询
        • 数据类型
        • 累加器(Accumulators)
        • 运算符,函数和表达式
        • 声明和赋值
        • SELECT语句
        • 控制流语句
        • 数据修改语句
        • 输出语句以及文件对象
        • 异常处理语句
        • 注释
        • 附录
          • 附录A: 一般错误和问题
          • 附录B:查询语言的完整正式语法
          • 附录C. 图查询语言的预留词列表
          • 附录D. 示例
    • RESTPP API 开发指南
      • 简介
      • RESTPP请求
      • 系统预制函数(Endpoints)
      • 系统预制函数请求格式(JSON)
    • 事务处理及ACID支持
  • 图形界面 可视化
    • GraphStudio 用户指南
      • GraphStudio 概述
      • GraphStudio许可证
      • 用户权限管理
      • 设计图模型(Schema)
      • 将数据映射到图
      • 加载数据
      • 探索图数据
      • 编写查询
      • 导入和导出解决方案
      • 已知问题
      • GraphStudio中的专利及第三方软件版权说明
Powered by GitBook
On this page
  • 定义一个数据加载的任务
  • 创建加载任务
  • 运行一个加载的工作

Was this helpful?

  1. INTRODUCTION AND OVERVIEW
  2. GSQL 101

加载数据

在创建图模式之后,下一步是将数据加载到其中。这里的任务是指导GSQL加载程序如何将一组数据文件中的字段关联到我们刚才定义的图模式的顶点类型和边类型中的属性。

您应该有两个数据文件。person.csv和friendship.csv在本地磁盘上的csv。它们可以不在当前的文件夹中。

如果您出于任何原因需要退出GSQL shell,您可以通过输入“quit”(不带引号)来实现。输入gsql以再次进入。

定义一个数据加载的任务

下面的加载作业假设您的数据文件位于文件夹/home/tigergraph中。如果它们在其他地方,则在下面的加载作业脚本中替换“/home/tigergraph/person”。csv和“/ home / tigergraph/friendship.csv"和它们对应的文件路径。假设您(回到)GSQL shell中,输入以下命令集:

GSQL commands to define a loading job
USE GRAPH social
BEGIN
CREATE LOADING JOB load_social FOR GRAPH social {
  DEFINE FILENAME file1="/home/tigergraph/person.csv";
  DEFINE FILENAME file2="/home/tigergraph/friendship.csv";
 
  LOAD file1 TO VERTEX person VALUES ($"name", $"name", $"age", $"gender", $"state") USING header="true", separator=",";
  LOAD file2 TO EDGE friendship VALUES ($0, $1, $2) USING header="true", separator=",";
}
END

让我们来看看这些命令:

  • 使用社交图:告诉GSQL您希望使用哪个图。

  • 开始……结束: 表明多行模式。GSQL shell将把这些标记之间的所有内容视为一个语句。这些只用于交互模式。如果运行存储在命令文件中的GSQL语句,命令解释器将研究整个文件,因此不需要开始和结束提示。

  • 创建加载任务:一个加载作业可以描述从多个文件到多个图对象的映射。每个文件必须分配给文件名变量。字段标签可以按名称或位置进行标记。名称标签需要源文件中的标题行。逐位标签使用整数表示源列位置0,1,…在上面的示例中,第一个LOAD语句按名称引用源文件列,而第二个LOAD语句按位置引用源文件列。请注意以下细节:

当您运行CREATE LOADING JOB 语句时,GSQL将检查语法错误,并检查指定位置中的数据文件。如果没有检测到错误,它将编译并保存您的作业。

GSQL shell
GSQL > USE GRAPH social
Using graph 'social'
GSQL > BEGIN
GSQL > CREATE LOADING JOB load_social FOR GRAPH social {
GSQL >    DEFINE FILENAME file1="/home/tigergraph/person.csv";
GSQL >    DEFINE FILENAME file2="/home/tigergraph/friendship.csv";
GSQL >
GSQL >    LOAD file1 TO VERTEX person VALUES ($"name", $"name", $"age", $"gender", $"state") USING header="true", separator=",";
GSQL >    LOAD file2 TO EDGE friendship VALUES ($0, $1, $2) USING header="true", separator=",";
GSQL > }
GSQL > END
The job load_social is created.

创建加载任务

一个加载任务可以描述从多个文件到多个图对象的映射。每个文件必须分配给文件名变量。字段标签可以按名称或位置进行标记。名称标签需要源文件中的标题行。逐位标签使用整数表示源列位置0,1,…在上面的示例中,第一个LOAD语句按名称引用源文件列,而第二个LOAD语句按位置引用源文件列。请注意以下细节:

当您运行CREATE LOADING JOB 语句时,GSQL将检查语法错误,并检查指定位置中的数据文件。如果没有检测到错误,它将编译并保存您的作业。

GSQL > USE GRAPH social
Using graph 'social'
GSQL > BEGIN
GSQL > CREATE LOADING JOB load_social FOR GRAPH social {
GSQL >    DEFINE FILENAME file1="/home/tigergraph/person.csv";
GSQL >    DEFINE FILENAME file2="/home/tigergraph/friendship.csv";
GSQL >
GSQL >    LOAD file1 TO VERTEX person VALUES ($"name", $"name", $"age", $"gender", $"state") USING header="true", separator=",";
GSQL >    LOAD file2 TO EDGE friendship VALUES ($0, $1, $2) USING header="true", separator=",";
GSQL > }
GSQL > END
The job load_social is created.

运行一个加载的工作

现在可以运行加载作业,将数据加载到图中:

GSQL command
RUN LOADING JOB load_social

结果显示如下:

GSQL shell
GSQL > run loading job load_social
[Tip: Use "CTRL + C" to stop displaying the loading status update, then use "SHOW LOADING STATUS jobid" to track the loading progress again]
[Tip: Manage loading jobs with "ABORT/RESUME LOADING JOB jobid"]
Starting the following job, i.e.
 JobName: load_social, jobid: social_m1.1528095850854
 Loading log: '/home/tigergraph/tigergraph/logs/restpp/restpp_loader_logs/social/social_m1.1528095850854.log'
 
Job "social_m1.1528095850854" loading status
[FINISHED] m1 ( Finished: 2 / Total: 2 )
 [LOADED]
 +---------------------------------------------------------------------------+
 |                       FILENAME |   LOADED LINES |   AVG SPEED |   DURATION|
 |/home/tigergraph/friendship.csv |              8 |       8 l/s |     1.00 s|
 |    /home/tigergraph/person.csv |              8 |       7 l/s |     1.00 s|
 +---------------------------------------------------------------------------+

注意加载日志文件的位置。本例假设您在默认位置/home/tigergraph/中安装了TigerGraph。在您的安装文件夹中是主要的产品文件夹,tigergraph。在tigergraph文件夹中有几个子文件夹,如日志、文档、配置、bin和gstore。如果您安装在一个不同的位置,例如/usr/local/,那么您将在/usr/local/tigergraph找到产品文件夹。

Previous定义一个SchemaNext使用内置的SELECT进行查询

Last updated 6 years ago

Was this helpful?