Consider a scenario where you have two databases: On database A you need to access data on database B.
You could create a view on database A that selects from the table on database B.
CREATE OR REPLACE VIEW Demographics.Employees( employee_id, employee_dept ) AS SELECT employee_id, employee_dept FROM Employee@DB_B; /
Or, you could create a synonym on database A that points to the table on database B.
CREATE OR REPLACE SYNONYM Demographics.Employees FOR Employee@DB_B;
What are the advantages and disadvantage to using a view across the DB link versus a synonym across the DB link?
If the databases are within an Exadata platform, does that change the recommendation?