1.1.1 NDB集群API概述:NDB API

NDB APINDB Cluster是一个面向对象的应用程序编程接口,实现了索引、扫描、事务和事件处理。NDB事务是符合acid的,因为它们提供了一种分组操作的方法,以便将操作成功(提交)或失败作为一个单元(回滚)。控件中执行操作也是可能的no-commit或延迟模式,将在以后的时间提交。

NDB扫描在概念上非常类似于MySQL 5.0和其他常见的企业级数据库管理系统中实现的SQL游标。它们为记录检索目的提供了高速行处理。(NDB Cluster自然地支持集合处理,就像MySQL在它的非集群发行版中一样。这可以通过MySQL手册和其他地方讨论的MySQL api来实现。)NDB API支持表扫描和行扫描;后者可以使用惟一索引或有序索引来执行。中讨论了事件检测和处理第2.3.16节,“NdbEventOperation类”,以及第2.5.8节,“NDB API事件处理示例”

此外,NDB API提供了面向对象的错误处理工具,以便提供一种从失败的操作和其他问题中优雅地恢复的方法。(见第2.5.3节,NDB API示例:处理错误和重试事务,以获取详细的例子。)

NDB API提供了许多实现上述功能的类。其中最重要的是Ndb,Ndb_cluster_connection,NdbTransaction,NdbOperation类。它们(分别)模型数据库连接、集群连接、事务和操作。中列出了这些类及其子类2.3节,“NDB API类、接口和结构”。NDB API中的错误条件使用NdbError

请注意

NDB API应用程序直接访问NDB集群的数据存储,而不需要MySQL服务器作为中介。这意味着这些应用程序不受MySQL特权系统的约束;任何NDB API应用程序都可以读取和写入任何NDB表在任何时候都存储在同一个NDB集群中,不受限制。