Nebula Python¶
Nebula Python 是一款 Python 语言的客户端,可以连接、管理 Nebula Graph 图数据库。
前提条件¶
已安装 Python,版本为 3.5 及以上。
版本对照表¶
Nebula Graph 版本 | Nebula Python 版本 |
---|---|
2.6.2 | 2.6.1 |
2.0.1 | 2.0.0 |
2.0.0 | 2.0.0 |
2.0.0-rc1 | 2.0.0rc1 |
安装 Nebula Python¶
pip 安装¶
$ pip install nebula2-python==<version>
克隆源码安装¶
-
克隆 Nebula Python 源码到机器。
-
(推荐)如果需要安装指定版本的 Nebula Python,请使用选项
--branch
指定分支。例如安装 v2.6.1发布版本,请执行如下命令:$ git clone --branch v2.6.1 https://github.com/vesoft-inc/nebula-python.git
-
如果需要安装日常开发版本,请执行如下命令下载
master
分支的源码:$ git clone https://github.com/vesoft-inc/nebula-python.git
-
-
进入目录 nebula-python。
$ cd nebula-python
-
执行如下命令安装。
$ pip install .
核心代码¶
详细示例请参见 Example。
连接 Graph 服务¶
# 定义配置
config = Config()
config.max_connection_pool_size = 10
# 初始化连接池
connection_pool = ConnectionPool()
# 如果给定的服务器正常,则返回 true,否则返回 false。
ok = connection_pool.init([('192.168.xx.1', 9669)], config)
# 方法 1:控制连接自行释放。
# 从连接池中获取会话
session = connection_pool.get_session('root', 'nebula')
# 选择图空间
session.execute('USE basketballplayer')
# 执行查看 TAG 命令
result = session.execute('SHOW TAGS')
print(result)
# 释放会话
session.release()
# 方法 2:使用 session_context,会话将被自动释放。
with connection_pool.session_context('root', 'nebula') as session:
session.execute('USE basketballplayer;')
result = session.execute('SHOW TAGS;')
print(result)
# 关闭连接池
connection_pool.close()
连接 Storage 服务¶
# 设置所有 Meta 服务地址
meta_cache = MetaCache([('192.168.xx.1', 9559),
('192.168.xx.2', 9559),
('192.168.xx.3', 9559)],
50000)
graph_storage_client = GraphStorageClient(meta_cache)
resp = graph_storage_client.scan_vertex(
space_name='ScanSpace',
tag_name='person')
while resp.has_next():
result = resp.next()
for vertex_data in result:
print(vertex_data)
resp = graph_storage_client.scan_edge(
space_name='ScanSpace',
edge_name='friend')
while resp.has_next():
result = resp.next()
for edge_data in result:
print(edge_data)
最后更新:
March 7, 2023