14、Neo4j图数据库编程API与非功能特性解析

Neo4j图数据库编程API与非功能特性解析

1. 编程API概述

开发者通常不直接与文件系统和缓存基础设施交互,而是通过查询语言来操作图数据库,查询语言分为命令式和声明式。以Neo4j为例,常用的声明式查询语言是Cypher,它易于学习和使用。但还有其他API可供选择,不同的API适用于不同的场景。可以将这些API看作一个栈,栈顶注重表达性和声明式编程,栈底注重精确性、命令式风格和“裸机”性能。

2. 各类API介绍
2.1 内核API(Kernel API)

内核API处于API栈的最底层,包含内核的事务事件处理程序。这些处理程序允许用户代码监听流经内核的事务,并根据事务的数据内容和生命周期阶段做出反应。
- 事务事件处理程序的典型用例 :防止记录的物理删除。可以设置一个处理程序来拦截节点的删除操作,改为将该节点标记为逻辑删除,或者通过创建带时间戳的存档关系将节点“回溯到过去”。

2.2 核心API(Core API)

Neo4j的核心API是一个命令式Java API,它向用户暴露了节点、关系、属性和标签等图原语。
- 读取操作 :API采用懒加载方式,即只有在调用代码需要下一个节点时才会遍历关系。数据会以API调用者能够消费的速度从图中检索出来,调用者可以在任何时候终止遍历。
- 写入操作 :核心API提供事务管理功能,以确保数据的原子性、一致性、隔离性和持久性。
- 代码示例 :以下代码尝试从《神秘博士》的宇宙

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值