OLE DB architecture

The OLE DB implementation is a consumer-provider architecture. The major components are as follows:
Application
The application is responsible for interacting with the user and for invoking OLE DB API functions that submit SQL statements for processing by a file system or a database management system. The application is also called the consumer.
OLE DB provider

The OLE DB provider processes the OLE DB API function calls that it receives from the application, interacts with the file system or database management system to access the required data, and returns results to the application. The OLE DB provider is also called the provider.

Data source
A data source contains the sets of data that the OLE DB provider accesses, along with all the environments that are associated with the data. These environments might include file access or database access software, an operating system, and a networking platform.

To use OLE DB to access a Netezza system, you need at least a two-tier client-server configuration. In a two-tier client-server system, the data source is stored on the Netezza Performance Server system, which handles all database access processing. The OLE DB provider and application are located on the client system and use a network connection to a Postgres process on the Netezza Performance Server system host, which coordinates SQL statement processing functions.