全部产品
Search
文档中心

数据库

更新时间: 2020-04-03

如果您希望区块链上的数据能导出到关系型数据库,您可以将区块链数据和数据库表做映射配置。云服务集成会根据配置,将区块中的指定数据导出至目标数据库的表中,您可以使用SQL语句或其他数据库工具对这些信息做进一步处理。

配置数据库触发器

注: 集成数据库服务,需要您先安装云服务集成功能。

  1. 我的组织 中找到目标组织,点击右侧的 云服务集成
  2. 将云服务集成页面的标签切换到 数据库,点击添加配置
  3. 在侧边栏中依次填写以下配置信息:

    • 名称:触发器的名称,便于识别。
    • 通道/网络:需要做数据导出的Fabric通道。
    • 智能合约:需要导出的数据所对应的智能合约,将作为默认过滤器表达式的筛选条件之一。
    • 事件类型:需要导出的数据所对应的事件类型,Fabric只支持Tx。
    • 数据库类型:选择目标数据库的类型。
    • 数据源:数据库实例的公网连接地址。
    • 用户名:访问数据库的用户名,需要对目标表有更新权限。
    • 密码:用户名对应的密码。
    • 数据库:目标表所在的数据库名。
    • 表名:目标表名。
    • 失败阈值:高级选项,触发器操作失败的次数超过该值后,触发器进入失败状态并停止导出。-1 表示失败次数不限,触发器不会进入失败状态。
    • 过滤器:高级选项,您需要在表达式中实现链上数据的过滤以及和数据库表字段的映射。触发器会提供一个默认表达式,把区块中指定智能合约产生的有效交易筛选出来,将交易ID,创建时间,key-value等信息导出,详细信息请参考文档使用过滤器

    配置数据库

  4. 点击添加,成功后列表会显示刚才创建的触发器。配置完成

    注:

    1. 触发器被创建后,从当前最新区块开始导出数据。
    2. 在导出过程中,如果出现数据库处理错误或参数配置错误会使触发器状态变为异常,鼠标悬停即可查看错误信息。
    3. 触发器对应的服务返回异常时,触发器会自动重试,多次重试均失败后,会丢弃该数据,算一次失败。如果累计失败次数没有超过失败阈值,则继续导出后续数据。如果超过失败阈值,触发器进入失败状态并停止导出。用户可根据错误信息对触发器或相关服务进行修复后,再重新启用,启用后失败次数清零。
    4. 块高字段表示当前触发器已处理到哪一个区块,也反应了数据导出进度。
  5. 创建成功后,您可以对触发器进行以下操作:

    • 删除:删除该触发器。
    • 禁用:停止导出数据到该触发器对应的数据库。
    • 启用:重新开始导出数据到该触发器对应的数据库。启用后,将从当前最新区块开始导出,停止期间的数据会被丢弃。