从.gql转换为json或csv

时间:2017-11-15 21:12:09

标签: grakn graql

如何将gql文件(grakn)转换为json或csv? 我阅读了grakn.ai提供的文档,并且只详细解释了如何将不同的文件格式转换为提供的gql。

此处:https://grakn.ai/pages/documentation/migration/migration-overview.html

解释了如何做到这一点:

从Grakn导出数据 也可以使用迁移shell脚本从Grakn导出数据。用法如下:

    usage: graql migrate export -data -schema [-help] [-no] [-batch <arg>] [-uri <arg>] [-keyspace <arg>]
     -data                 export data
     -schema               export schema
     -h,--help             print usage message
     -k,--keyspace <arg>   keyspace to use
     -n,--no               dry run- write to standard out
     -u,--uri <arg>        uri to engine endpoint
     -r, --retry           Number of times to retry sending tasks if engine is not available
     -d,--debug            Migration immediatly stops if any transaction fails

将Grakn中的数据或架构导出到Graql中,将始终重定向到标准输出。

但我很害怕,我不明白如何使用它。

3 个答案:

答案 0 :(得分:2)

您可以尝试使用此graphql到json转换器:https://github.com/jarnojellesma/graphql-json-converter

如何使用

  • 打开graphql文件
  • 转换它
  • 将其写入json文件

示例

const fs = require('fs');
const schema = fs.readFileSync('./example/schema.gql', "utf8");
const convert = require('./gql-json-converter');

const jsonSchema = convert(schema);

fs.writeFile('./example/generated-schema.json', 
    JSON.stringify(jsonSchema, null, 2) + '\n', 
    'utf8', 
    function (err) {
      if (err) console.log(err);
});

输出

{
  "type": {
    "User": {
      "id": {
        "type": "Int",
        "array": false,
        "required": true
      },
      "name": {
        "type": "String",
        "array": false,
        "required": true
      },
      "avatar": {
        "type": "Photo",
        "array": false,
        "required": false
      }
    }
  }
}

答案 1 :(得分:1)

我担心您无法从Grakn导出为其他数据格式。导出功能专门用于将您的数据和架构导出到graql文件中,以便您可以更轻松地将其传输到另一个运行的Grakn实例。

类似于从SQL数据库获取SQL转储。

您可以使用以下命令导出架构:

graql migrate export -schema -keyspace mykeyspace

以及您的数据

graql migrate export -data -keyspace mykeyspace

其中mykeyspace是密钥空间的名称

答案 2 :(得分:0)

当前版本的graql现在支持根据需要导出到json。

要转换graql查询/模式输出,请使用--output选项。

graql console -o json --keyspace YOUR_EPIC_GRAPH --file INSIGHTFUL_QUERY.gql

使用graql console --help查看当前选项。 但是,未列出受支持的格式。

usage: graql console
...
-o,--output <arg>     output format for results
...