Native RonDB APIs#
The most important API in RonDB is the C++ NDB API. Currently all access to the NDB data nodes goes through this interface.
The MySQL Server accesses NDB data nodes through the MySQL Storage engine API. This API is implemented using the NDB API. Through the MySQL Server it is possible to access the NDB data nodes through any MySQL API. There are so many MySQL APIs that I don't even know all of them myself. There is an API for most programming languages.
There are three direct NDB APIs. This means APIs that do not need to pass through a MySQL Server to get to the data. Quite a few applications have been written on top of the C++ NDB API. Some of those have implemented an LDAP server that can be accessed through an LDAP API.
There is also numerous applications developed on top of ClusterJ. ClusterJ is a very nice Java API that implements access to NDB rows as Java Objects. This API was used among others by the HopsFS that implements the meta data service for a Hadoop file system (HDFS).
There is also direct NDB API available from the NodeJS programming language.
We will go through the three direct APIs to the NDB data nodes, one in each chapter with most focus on the C++ NDB API.