C/C++教程

【软件工程应用与实践】(10)JDchain数据检索

本文主要是介绍【软件工程应用与实践】(10)JDchain数据检索,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

2021SC@SDUSC

1.1. 穿透式检索
穿透式检索直接检索需要的数据,不需要人脑再次整理,可以参考Google OneBox的概念。穿透式检索因为其结果的精确,可以为大数据和人工智能提供准确的素材,进而帮助大数据和人工智能获得更加准确的结果。

1.2. 为什么区块链需要穿透式检索
区块链数据是严谨的业务数据,对业务数据的分析有利于业务的增强。当前简单地关键词搜索无法提供所需的业务信息。在具体的业务中,快速方便地检索出需要的数据,为业务分析提供支持。为人工智能等系统提供基础数据。

前提假设:

假定穿透式检索安装的服务器ip为:192.168.151.40。
假定穿透式检索对接的JDChain区块链网关浏览器为:http://192.168.151.39:18081
2.1. 安装Argus数据检索系统
将数据检索系统安装包(jdchain-argus-0.8.4.RELEASE.zip)解压至/export/jdchain文件夹。安装包下载地址:http://storage.jd.com/jd.block.chain/jdchain-argus-0.8.4.RELEASE.zip
解压命令:unzip jdchain-argus-0.8.4.RELEASE.zip –d argus

2.2. 安装DGraph图数据库
下载dgraph v1.0.16版本,并解压至argus文件夹下;在PATH中添加argus文件夹路径。安装包下载地址:https://github.com/dgraph-io/dgraph/releases/download/v1.0.16/dgraph-linux-amd64.tar.gz

2.3. 修改配置环境

#DGraph的URL
DGRAPH_URL="127.0.0.1:9090"
#ARGUS服务所在主机IP
ARGUS_HOST="192.168.151.40"
#高级检索使用的端口号;
ARGUS_SEARCH_PORT="10001"
#穿透式检索使用的端口号;
ARGUS_INDEXER_PORT="8082"
#JDChain网关对应的url
JDCHAIN_GW=http://jdchain-t.jd.com:8081## 2.4. 启动`DGraph`服务

执行解压文件中的all.sh文件,启动Dgraph服务。 具体脚本内容如下:

nohup dgraph zero > dgraph_zero.log 2>&1 &
nohup dgraph alpha --lru_mb 1024 --zero localhost:5080 --port_offset 10 --log_dir dgraph_log > dgraph_alpha.log 2>&1 &

至此,穿透式检索服务启动完毕。
3. 备注
如果高级检索和JDChain区块链环境部署在不同的机器中,需要修改JDChain配置中的相关参数

在使用中发现,用户安装路径ARGUS_PATH可能与zip包中有所不同,下方提供一个方便修改配置版本的all.sh,方便试用的同学根据自身的环境要求各取所需。

#!/usr/bin/env bash

#jdchain's gateway corresponding version: 1.1.2.RELEASE;
DGRAPH_URL="127.0.0.1:9090"
ARGUS_HOST="127.0.0.1"
ARGUS_SEARCH_PORT="10001"
ARGUS_INDEXER_PORT="8082"
JDCHAIN_GW="http://jdchain-t.jd.com:8081"
ARGUS_PATH="/jdchain/argus/argus"

#first download the Dgraph version   : v1.0.16
nohup dgraph zero > dgraph_zero.log 2>&1 &
sleep 2
nohup dgraph alpha --lru_mb 1024 --zero localhost:5080 --port_offset 10 --log_dir dgraph_log > dgraph_alpha.log 2>&1 &
sleep 8
$ARGUS_PATH schema-update  --dgraph $DGRAPH_URL
sleep 2
nohup $ARGUS_PATH api-server --host $ARGUS_HOST --port $ARGUS_SEARCH_PORT --dgraph $DGRAPH_URL --production true> api-server.out 2>&1 &
sleep 2
nohup $ARGUS_PATH task  --dgraph $DGRAPH_URL > task_monitor.log 2>&1 &
sleep 2
nohup $ARGUS_PATH ledger-rdf  --api $JDCHAIN_GW --dgraph $DGRAPH_URL  --production true > converter2.out 2>&1 &
sleep 2
nohup $ARGUS_PATH data  --ledger-host $JDCHAIN_GW --port $ARGUS_INDEXER_PORT --dgraph $DGRAPH_URL --production true > value_indexer.out 2>&1 &

参考链接:
https://zhuanlan.zhihu.com/p/101664039

这篇关于【软件工程应用与实践】(10)JDchain数据检索的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!