Optimal Performance

SQL Access To BBj Data

BBj provides several options for distributing various parts of the system on different machines. While this does have advantages in some cases, it is important to understand one architectural feature of BBj.

The language interpreter, SQL engine, and filesystem in BBj are all contained within the BBjServices process. Each runs as a separate server so that the components can be distributed among different machines. However, an important consideration when determining where each component should be located is that each piece can bypass communication via sockets if each component is on the same machine. This architectural feature of BBj provides for better performance because it eliminates the overhead of communicating over socket connections.

Since this feature is specific to BBj, it is important to understand that this does not apply when using a third party JDBC or ODBC driver. While BBj can avoid communicating over sockets for its internal SQL access, its behavior is completely driver dependent when going outside BBj for data.