Une base de données distribuée est constituée d'un ensemble de bases de données implémentées dans un système distribué (Un système possédant plusieurs noeuds), mais ces bases sont perçu par les applications comme une seule source de données. Chacune des bases de données du système distribué joue le rôle d'un serveur et d'un client vis à vis des autres bases de données.
Si toutes les bases de données du système distribué sont des bases ORACLE, il s'agit dans ce cas d'un système homogène. Par contre si l'une des bases de données n'est pas une base de données ORACLE, on parle d'un système de base de données distribué hétérogène.
Les applications qui attaquent une base de donnée distribuée ne font pas de différences entre un système homogène et un système hétérogène, parceque le serveur ORACLE masque la complexité du système hétérogène, et les applications ne voient qu'une seule source de données ORACLE.
Dans un système homogène, on peut avoir des noeuds avec différentes versions d'ORACLE.
Une transaction distribuée est une transaction qui attaque au moins deux bases de données du système distribué. Par contre on appelle une transaction distante toute transaction qui attaque un et un seul noeud distant du système distribué.