170 likes | 280 Views
Discover the fundamental concepts of logical databases and their integral role in systems integration. This guide delves into the structure and advantages of using logical databases, including how they can simplify complex data structures and enhance application performance. Learn about tools such as views and materialized views, which provide customizable presentations of data, as well as triggers, stored procedures, and synonyms to optimize database operations. Transform your data management strategies and streamline your reporting processes effectively.
E N D
Systems Integration Secrets Using Logical Databases 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Physical Database Underlying storage structure of persistent data (tables) Logical Database Group of objects that presents the underlying tables in a manner that is consistent with the supported application’s and reporting objectives (*note this not the only definition given for logical database) vs. 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Logical Database: Other Definitions • Not the logical database referred to in Edger F. (Ted) Codd’s Process of Normalization/Database Design • Not part of Oracle’s OFA (Optimal Flexible Architecture) – the standard placement and naming of database-related files to optimize performance in a multi-disk environment 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Logical Reasons for Creating Logical Databases Their world doesn’t revolve around your design • Simplified supporting reports • Disparate systems integration – you can “trick” an application into using your data structures • Continuous application development 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Additional reasons • Beneficial for all uses • even when directly defining an underlying table (i.e. create view v_employee as select * from employee) • easier to manage security and more easily accommodates future changes • Increase efficiency • Customize the path by which data is accessed, making users more efficient and ensuring optimal performance • Simplifying the complex • Confusing data structures can be presented in a manner that is intuitive to users 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
app1 app2 app3 report interface Creating Logical Databases Presentation Logical Physical 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Tool: view View: provides a customizable presentation of an underlying table or tables and acts similar to a table but has no persistent data 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Tool: view, continued… CREATE or REPLACE VIEW EMPLOYEE AS SELECT emp_id as e_id, f_name || ‘ ‘ || l_name as full_name, address_no || ‘ ‘ || street as address1, city, st as state, zip_cd as postal_cd, ‘USA’ as country FROM emp WHERE status = ‘active’; 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Tool: materialized view (snapshot view) Materialized view: similar to a view except that it stores persistent data that utilizes the DBMS synchronization to the underlying tables. • The Query Rewrite feature of the Oracle optimizer improves performance by utilizing materialized views 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Tool: triggers (on views) Triggers: normally data would be inserted, updated or deleted from the view’s underlying table, but this event driven process follows the defined in PL/SQL 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Example of view with instead of trigger CREATE OR REPLACE TRIGGER employee_insert INSTEAD OF INSERT ON employee FOR EACH ROW BEGIN INSERT INTO emp (emp_id, f_name, l_name) VALUES (:NEW.emp_id,:NEW.f_name,:NEW.l_name); END employee_insert; / 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
CREATE VIEW EMPLOYEE AS SELECT emp_id as e_id, f_name || ‘ ‘ || l_name as full_name, address_no || ‘ ‘ || street as address1, city, st as state, zip_cd as postal_cd, ‘USA’ as country FROM emp WHERE status = ‘active’; 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Tools: stored procedures, synonyms, database link • Stored Procedures: provides a process to write to underlying tables, especially helpful for complex operations • Synonyms: provides a means of renaming to public or a specific user’s scope underlying objects (tables, types, views, materialized views, sequences, procedures, functions, packages) • Database link: allows creation of connection to a table or view in a remote database that makes the ojbect act as if it is local 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Development Process • Identify a long term vision • Where is this database going? • Design changes in physical model • Decision point • Modify physical DB and logical accommodates • OR modify logical DB to represent future physical DB • Dependency: if applications, reports, stored procedures, etc. – write directly to tables, you must choose the latter option 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Development Process, continued… • Group users of data • applications, reports, interfaces, etc. • Model groups • typically based on function which represents the underlying business objective, i.e. ‘account payable’ • Create logical DB for one or more groups • Repeat for each iteration 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Project Planning • Develop a project plan with each iteration at a fix interval • Typically one to three months • Lock down schema changes, at which time schema changes are assigned to the following release (this keeps groups from waiting for a significant amount of time) 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com
Eric Buskirk Contact Information: 14895 East 14th Street, Suite 300 San Leandro, CA 94578 www.verican.com 14895 East 14th Street, Suite 300 San Leandro, CA 94578 phone 800.888.0470 / 510.352.3000 fax 510.352.7301 www.verican.com