Nebula CPPGraph
Graph 是一款 C++语言的客户端,可以连接、管理 NebulaGraph 图数据库。
前提条件Graph
- 已安装 C++,GCC 版本为 4.8 及以上。
- 编译安装需要准备正确的编译环境,详情请参见Graph。
版本对照表Graph
NebulaGraph 版本 | Nebula CPP 版本 |
---|---|
2.6.1 | 2.5.0 |
2.0.1 | 2.0.0 |
2.0.0 | 2.0.0 |
安装 Nebula CPPGraph
-
克隆 Nebula CPP 源码到机器。
-
(推荐)如果需要安装指定版本的 Nebula CPP,请使用选项
--branch
指定分支。例如安装 v2.5.0发布版本,请执行如下命令:$ git clone --branch v2.5.0 https://github.com/vesoft-inc/nebula-cpp.git
-
如果需要安装日常开发版本,请执行如下命令下载
master
分支的源码:$ git clone https://github.com/vesoft-inc/nebula-cpp.git
-
-
进入目录 nebula-cpp。
$ cd nebula-cpp
-
创建目录 build 并进入该目录。
$ mkdir build && cd build
-
使用 CMake 生成 makefile 文件。
Note
默认安装路径为
/usr/local/nebula
,如果需要修改路径,请在下方命令内增加参数-DCMAKE_INSTALL_PREFIX=<installation_path>
。$ cmake -DCMAKE_BUILD_TYPE=Release ..
Note
如果 g++不支持 c++11,请添加选项
-DDISABLE_CXX11_ABI=ON
。 -
编译 Nebula CPP。
为了适当地加快编译速度,可以使用选项
-j
并行编译。并行数量N
建议为\(\min(\text{CPU}核数,\frac{内存 (GB)}{2})\)。$ make -j{N}
-
安装 Nebula CPP。
$ sudo make install
-
更新动态链接库。
$ sudo ldconfig
使用方法Graph
将 CPP 文件编译为可执行文件即可。接下来以SessionExample.cpp
为例,介绍如何操作。
-
使用Graph创建
SessionExample.cpp
文件。 -
编译文件,命令如下:
$ LIBRARY_PATH=<library_folder_path>:$LIBRARY_PATH g++ -std=c++11 SessionExample.cpp -I<include_folder_path> -lnebula_graph_client -o session_example
library_folder_path
:NebulaGraph 动态库文件存储路径,默认为/usr/local/nebula/lib64
。
include_folder_path
:NebulaGraph 头文件存储路径,默认为/usr/local/nebula/include
。
示例:
$ LIBRARY_PATH=/usr/local/nebula/lib64:$LIBRARY_PATH g++ -std=c++11 SessionExample.cpp -I/usr/local/nebula/include -lnebula_graph_client -o session_example
核心代码Graph
详细示例请参见 Graph。
nebula::init(&argc, &argv);
auto address = "192.168.xx.1:9669";
nebula::ConnectionPool pool;
pool.init({address}, nebula::Config{});
auto session = pool.getSession("root", "nebula");
auto result = session.execute("SHOW HOSTS");
std::cout << *result.data;
std::atomic_bool complete{false};
session.asyncExecute("SHOW HOSTS", [&complete](nebula::ExecutionResponse&& cbResult) {
std::cout << *cbResult.data;
complete.store(true);
});
session.release();
最后更新: November 25, 2021