NDB API是 NDB Cluster 的面向对象的应用程序编程接口,可实现索引、扫描、事务和事件处理。NDB 事务符合 ACID,因为它们提供了一种方法来对操作进行分组,使它们作为一个单元成功(提交)或失败(回滚)。也可以在“不提交”或延迟模式下执行操作,稍后再提交。
NDB 扫描在概念上与 MySQL 5.0 和其他常见企业级数据库管理系统中实现的 SQL 游标非常相似。这些为记录检索目的提供高速行处理。(NDB Cluster 自然支持集合处理,就像 MySQL 在其非 Cluster 发行版中一样。这可以通过 MySQL 手册和其他地方讨论的常用 MySQL API 来实现。)NDB API 支持表扫描和行扫描;后者可以使用唯一或有序索引来执行。事件检测和处理在 第 2.3.16 节“NdbEventOperation 类”以及 第 2.5.9 节“NDB API 事件处理示例”中讨论.
此外,NDB API 提供了面向对象的错误处理工具,以便提供一种从失败的操作和其他问题中优雅地恢复的方法。(有关详细示例,请参阅 第 2.5.4 节,“NDB API 示例:处理错误和重试事务”。)
NDB API 提供了许多实现上述功能的类。其中最重要的包括Ndb
、
Ndb_cluster_connection
、
NdbTransaction
和
NdbOperation
类。这些模型(分别)数据库连接、集群连接、事务和操作。这些类及其子类在第 2.3 节“NDB API 类、接口和结构”中列出。NDB API 中的错误条件使用
NdbError
.
NDB API 应用程序直接访问 NDB Cluster 的数据存储,而不需要 MySQL 服务器作为中介。这意味着此类应用程序不受 MySQL 特权系统的约束;NDB
任何 NDB API 应用程序都可以随时不受限制地对存储在同一 NDB Cluster 中的
任何表进行读写访问。