Presentation is loading. Please wait.

Presentation is loading. Please wait.

Capoccetti Esteban Systems Architect -Tecsis Kuassi Mensah GPM - Oracle Corporation.

Similar presentations


Presentation on theme: "Capoccetti Esteban Systems Architect -Tecsis Kuassi Mensah GPM - Oracle Corporation."— Presentation transcript:

1

2 Capoccetti Esteban Systems Architect -Tecsis Kuassi Mensah GPM - Oracle Corporation

3 Java in the Database Extend your Database and Reduce your Costs - The TECSIS Case Study

4 Agenda Part-I: Extend your Database and Reduce your Costs with Java in Oracle Database 10g Part-II: The TECSIS Case Study

5 Agenda  Extend your Database and Reduce your Costs with Java in Oracle Database 10g Cost Reduction Risk Reduction Extending Database Reach and Capability Database Web Services New Features Summary  Part-II: The TECSIS Case Study

6 Cost Reduction  Faster Java Applications Development – Reuse of Java Skills for Database Applications – Reuse of Standard and 3 rd -Party J2SE 1.4 compatible Java libraries directly in the database  Faster Java Applications Deployment in the database – Faster Loadjava utility with new Bytecode verifier

7 What’s in J2SE 1.4  Logging ( JSR-041)  Security (JAAS, JCE)  Preference (JSR-010)  Assertion (JSR-041)  Exception chaining  New high-performance, scalable IO (JSR-051)  Headless AWT  Regular expression java.util.regex

8 Cost Reduction(II)  Faster Applications Execution – Faster SQL and XML Data Access for J2SE, J2EE, Web Services and GRID  New & Faster Server-side JDBC driver – Faster J2SE, JDBC, JMS and JAI Applications execution in the Database  Optimized Java Memory Management  Integrate Existing Software Assets – Enabling Custom Platform Integration Frameworks -- the TECSIS Case Study

9 Java Memory Areas -- Dedicated Server Shared memory Process memory UGA sessionspace Shared pool Java pool Fixed SGA PGA newspaceoldspace stackspace

10 Faster Application Execution  Optimized Memory Management for Dedicated Server – Allocate needed spaces in PGA,once – Keep spaces alive beyond RDBMS call – Reuse JVM context  Self Tuning Java Pool  New Method Dispatch

11 Risk Reduction  Choice – Java in database as an alternative to PL/SQL – Seamless SQL/Java integration  SQL Exception propagation – Native Java Interface – Applications partitioning across Middle-tier/J2EE and the Database  Support of Latest Java Standards – J2SE 1.4.x, JAI 1.0, JMS 1.x, JAX-RPC Client  Protection against Malicious Java Code – See OracleJVM Security Mechanisms

12 Native Java Interface  Using PL/SQL wrappers – Each wrapper had to be manually published with a SQL signature and a Java implementation – The signatures permitted only Java types that had direct SQL equivalents – Exceptions issued in Java were not properly returned

13 Native Java Interface (II)  A client-side stub API for direct invocation of static server-side Java methods  JPublisher transparently takes care of stub generation Example: to call the following method in the server public String oracle.sqlj.checker.JdbcVersion.to_string(); Use jpub -java=oracle.sqlj.checker.JdbcVersion Stub Java class JDBC

14 Extending Database Reach  Extending Database’s Client-Base – Connected Clients – Non-Connected Clients  Database Web Services  Data Federation – Aggregate/Consume Data from J2EE (Web, EJBs) – Aggregate/Consume Data from Web Services – Integrate SQL, XML, Java, J2EE, Web Services  Reaching-out Legacy Assets – Using Pure Java RPC libraries and JDBC Drivers

15 Extending Database Capability - -- the TECSIS Case Study COM Clients non Oracle RDBMS Tandem COBOL AS400 RPG-DB400 OS390 Natural/ Adabas Data Logic XDK for PL/SQL -pure Java Libs non-Oracle jdbc Oracle9i jdbc call RPC call Reply ORACLE 8i Database Batch processes SAP - JCO Gateway rmi call Reply Tandem COBOL AS400 RPG-DB400 OS390 Natural/ Adabas SAP E N T I R E X A C I S E R V I C E O R A C L E J D B C S A P J C O J D B C ACI call Reply ACI call RFC call JDBC call OO4O (1) (2) OracleJVM PL/SQL

16 Database Web Services Database as Service Provider SOAP J2EE (Business Logic) Oracle9iAS Web Services Framework Web Service Client Data Data Logic AQ/Streams SQL/Query SQL/DML JavaPL/SQL Oracle9 i AS Oracle10 i AS JDBC Oracle9 i /Oracle10 i Database

17 Database Web Services Database as Services Consumer Oracle9iAS Web Services Framework Data Data Logic Batch Jobs XML SOAP Message Web Service Provider Service SQL Java PL/SQL WSDL

18 Database as Web Service Consumer (II)  JPublisher to generate the database client proxy using the the WSDL file for the webservice deployed jar xvf dist/javacallout.jar META-INF/HelloServiceEJB.wsdl jpub -proxywsdl=META-INF/HelloServiceEJB.wsdl - dir=genproxy -package=javacallout -user=scott/scott - endpoint=http://localhost:8888/javacallout/javacallout

19 Web Service Client Framework (SOAP) Database Module (Web Service Client) SELECT city_name, temp, low_temp, high_temp FROM TABLE (Temp_TF) SOAP Request/Response HTTP Client Stack Web Services Data Sources Web Service Provider Table Function

20 Next: Database GRID Services  The Database as as a Web Service Based on GRID and Web Services standards – Permit Dynamic/Arbitrary SQL/XML operations – “JDBC over SOAP” – Statefull Web services

21 Java DB Features Summary  OracleJVM J2SE 1.4.x compatible  New Faster Server-side JDBC driver  Optimized Java Memory Management (Dedicated Server)  Self Tuning Java Pool  Easy OracleJVM Monitoring  New JPublisher options  SQL Exceptions Propagation  Native Java Interface  CORBA/EJB Call-out  Database Web Services – Java in the DB as a Web Service – Pre-loaded SOAP Client – Web Services Data Sources

22 Agenda Extend your Database and Reduce your Costs with Java in Oracle Database 10g  Part-II: The TECSIS Case Study Who We Are How we are Using the Oracle Database Business and Technical Requirements Why We Choose Java in the Database Integration Framework : Architecture and Live Demo Conclusion

23 Presentation Objective  This presentation describes our experience of using Java in the Oracle database and how it solved our integration requirements. Esteban Capoccetti Systems Architect Tecsis

24 About TECHINT & TECSIS  TECHINT GROUP Areas of Business – steel industry – infrastructure projects – industrial plants and processes – the energy and power fields – the public services sector.  The mission of TECSIS -- the System Technology division of TECHINT -- is to validate and disseminate technology throughout the TECHINT GROUP

25 How we use the Oracle database  Have been using Oracle for 4 years  Using PL/SQL Stored Procedures – No direct SQL calls  Business Rules lay within those Procedures – Composite business rules allowed  PL/SQL extended by Java Stored procedures

26 Our Business Requirements  Business processes involved different platforms – necessity to integrate online information  Reach information available online on other platforms, from existing PL/SQL packages  Existing legacy systems and new web development required cross-platform integration  Reusing of existing PL/SQL-based business rules

27 Our Technical Requirements  Integrate a diversity of platforms: – SAP R3, RPG/AS400, ADABAS/Natural, Cobol Tandem, COM Components and non-Oracle Databases ( AdabasD, MSSQL Server )  Avoid point-2-point integrations  Avoid the cost and Integration effort of a new product

28 Most Important Goals  Simplify cross-platform integration  Cost Savings  Avoid Point-to-Point Communication

29 Why we choose Java within the Oracle database  Transparent integration with the PL/SQL world – Transformation rules, when needed, are easily written in PL/SQL  JVM already available -- no new product added  Easy to load pure Java libraries including non-Oracle jdbc drivers  Openess: Compatibility with Java standards  Extensible: have no limits  Robust and Secure

30 Integration Framework Architecture  Typical Use Case scenarios.  Java Stored Procedures Calling External Systems.  External Systems Calling Stored Procedures.

31 Typical Use Case scenarios  Code validations – System A needs to check whether a specific code value exists in system B  Example: SAP and Natural Adabas On-line demo  Pop-Up Lists – System A needs to display a list of values using content from system B  Example: SAP and Oracle Procedure  Cross-Platform Modifications (1PC) – For intance, a new product is added to system A, and the same product also must be added to system B

32 Java Stored Procedures calling External Systems COM Clients non Oracle rdbms Tandem COBOL AS400 RPG-DB400 OS390 Natural/ Adabas XDK for PL/SQL jars uploaded: EntireX Communicator API non Oracle jdbcs OracleJVM E A I P K G P R O C E D U R E S OO4O call Reply jdbc call RPC call Reply RPC call Reply ORACLE 8i Database Batch processes SQL*PLUS OCI SAP JCO Gateway -> SAP rmi call Reply

33 Java Stored Procedures calling External Systems  EntireX Comunicator java client within the database  SAP Java Connector via RMI calls from java stored procedures  Third party pure java jdbc drivers within the database  We created standar PL/SQL wrappers, called EAI_PKG, for each loaded module – Allows uniform invocation from the PL/SQL based business rules – An application integration guide has been distributed internally to all PL programmers  It took us just a few days to allow programmers to build procedures that interact with other platfomrs

34 COM Clients XDK for PL/SQL jars uploaded: EntireX Communicator API non Oracle jdbcs OracleJVM E A I P K G P R O C E D U R E S ORACLE 8i Database Batch processes Tandem COBOL AS400 RPG-DB400 OS390 Natural/ Adabas SAP E N T I R E X A C I S E R V I C E O R A C L E J D B C S A P J C O J D B C ACI call Reply oci ACI call RFC call JDBC call OO4O sql*plus (1) (2) External system calling Oracle Stored Procedures

35  Gateway using SAP Java Connector (1) – sapjco -> Oracle jdbc  ABAP programs call a java connector server which, in turn, calls the Oracle stored procedure – 50% API sapjco and 50% oracle jdbc driver  Gateway using Software AG RPC solution (2) – EntireX Comunicator -> Oracle jdbc  Natural/Adabas; RPG/AS400 and Cobol/Tandem will place a call to EntireX Comunicator which, in turn, invokes a Oracle Stored Procedure – 50 % API EntireX and 50% oracle jdbc driver

36 Putting Everything Together

37 D E M O N S T R A T I O N Online scenarios Tecsis case study

38 Conclusions  By using the Oracle JVM we were able to: – Implement a complete, easy-to-use integration framework using Java and PL/SQL procedures. – Use existing skills of our PL programmers. – Shield our developers from the underlying complexity of our platform. – Reuse business logic among different platforms.  In fact, we were able to turn the database into an online integration broker.

39 Read more Customers case studies @ http://otn.oracle.com/tech/java/jsp/content.html Reminder – please complete the OracleWorld online session survey Thank you.

40 A Q & Q U E S T I O N S A N S W E R S

41


Download ppt "Capoccetti Esteban Systems Architect -Tecsis Kuassi Mensah GPM - Oracle Corporation."

Similar presentations


Ads by Google