Composite Primary Key - Design Discussion
Hi,
We have a midsize Oracle Database (19c) with RAC for our application having 2.5 TB of data. It comprises of around 250 core transaction and profile related tables. The core processing engine is written in PL/SQL and involves data intensive operations.
Each transaction and profile table has an ID column (a surrogate key) as its primary key. There are foreign key constraints defined on tables referencing ID column of parent tables. Each of these tables has a CLIENT_ID column to facilitate data separation at client level using Virtual Private Database policies.
Maximum number of child table referencing a single parent table is around 50 while most of the parent tables have one to five child tables.