October 2018
Intermediate to advanced
556 pages
15h 18m
English
The database driver is a library that adapts the database wire protocol to language constructs such as method calls, callbacks, or potentially Reactive Streams. In the case of relational databases, drivers usually implement a language-level API such as DB-API for Python or JDBC for Java.
It is not a surprise that software written in a synchronous blocking manner uses the same approach for data access. Moreover, usually, communication with an external database through the driver is no different from communication with an external HTTP service. For example, the Apache Phoenix JDBC driver is based on the Avatica component of the Apache Calcite framework and uses JSON or Protocol Buffer over HTTP. Consequently, in theory, we may ...