Database-resident JVM
What, Where, How is it use and his potential
www.scotas.com
Agenda
– Database resident JVM
– Session Management
– Memory Management
– Security
– Oracle Commitment to J...
Database resident JVM
●
Available since Oracle 8i
●
Architecture
●
Robustness
●
Class sharing
●
Memory Management
●
Scalab...
Oracle JVM versus Sun’s JDK
Sun’s JDK VM
●
Thread Based
●
Sharing across Threads
●
Limited Scalability
●
Classes in file s...
Database Sessions Imposed on Java
Within the context of a
session, the client
performs the following:
1)Connects to the da...
Oracle JVM Class Sharing
…
Shared JVM System Classes
Shared User Application Classes
Oracle
Database
Virtual JVM
Instance
...
Oracle JVM Memory Areas
●
Java Pool
Used by the Java class loader to allocates space for bytecodes and other read-
only cl...
OracleJVM Security
Strong Security combining database
security mechanisms with Java security
mechanisms
●
User authenticat...
Oracle’s Commitment to OJVM
●
Used by a significant percentage of database customers
●
Used by Oracle Components
– InterMe...
●
Many among Fortune 500 companies
●
Some examples from
“Java in the Oracle Database @ Work – Customer Case Studies”
●
And...
Java in the Database: What For
www.scotas.com
●
Trigger-based Notification System
using RMI
●
Secure Credit-Card Processin...
According to OOW SF presentation
●
JDK interchangeable at any time (Perl script)
●
Support for latest JDK
– 1.6 default
– ...
Case Study
www.scotas.com
Database resident JVM
Client Example
Scotas Near Real Time Full Text Searching
Scotas OLS
www.scotas.com
●
An Embedded version of Solr Framework running inside Oracle OracleJVM
●
42 new Java Classes an...
What the NRT means?
www.scotas.com
OLS Architecture
www.scotas.com
Oracle Integrated Information Architecture Capabilities - Scotas OLS Integration
www.scotas.com
Management,Security,
Gover...
• Product comparison
SCOTAS
OLS
Oracle
Text
Solr Lucene
Real Time  
Scalability  
Performance  
Security  
Integra...
Thank
You!
www.scotas.com | info@scotas.com | +1 (650) 704-7915 | 440 North Wolfe Road, Sunnyvale, CA 94085
Upcoming SlideShare
Loading in …5
×

Database-resident JVM - What, Where, How is it use and his potential

459 views

Published on

Oracle OpenWorld San Pablo 2012

Published in: Software, Technology
  • Be the first to comment

  • Be the first to like this

Database-resident JVM - What, Where, How is it use and his potential

  1. 1. Database-resident JVM What, Where, How is it use and his potential
  2. 2. www.scotas.com Agenda – Database resident JVM – Session Management – Memory Management – Security – Oracle Commitment to Java in the Database – What we heard at OOW San Francisco about 12c – Case Study ● Near Real Time Full Text Indexing ● Analytic Tool for Enterprise Server Logs
  3. 3. Database resident JVM ● Available since Oracle 8i ● Architecture ● Robustness ● Class sharing ● Memory Management ● Scalability ● Performance www.scotas.com
  4. 4. Oracle JVM versus Sun’s JDK Sun’s JDK VM ● Thread Based ● Sharing across Threads ● Limited Scalability ● Classes in file system ● Resolve classes with “Classpath” ● JIT ● Preemptive multi-threading ● Limited Robustness (process failure) OracleJVM ● Database Session Model ● Session Isolation ● Unlimited Scalability ● Classes in database ● Resolve classes with “Resolver Spec” ● JIT (11g and up) ● Non-Preemptive multi- threading ● Does not crash as a whole www.scotas.com
  5. 5. Database Sessions Imposed on Java Within the context of a session, the client performs the following: 1)Connects to the database and opens a session. ● Runs Java within the database. This is referred to as a call ● Continues to work within the session, performing as many calls as required ● Ends the session www.scotas.com
  6. 6. Oracle JVM Class Sharing … Shared JVM System Classes Shared User Application Classes Oracle Database Virtual JVM Instance Virtual JVM Instance Session System Statics User Statics Session System Statics User Statics Session System Statics User Statics … www.scotas.com
  7. 7. Oracle JVM Memory Areas ● Java Pool Used by the Java class loader to allocates space for bytecodes and other read- only class metadata; also Java states that are migrated from the Session space at the end of call. ● Session Space Used for preserving the state of system objects, user objects, and metadata used by the Java runtime; also used for end of call migration ● New Space Default memory area for allocating almost all Java objects, except large objects ● Old Space Used for holding long-lived or large objects (i.e., larger than 1-K Bytes) for the duration of a call. ● Run Space Used for holding system objects (e.g., classloader objects) allocated for the duration of a call. ● Stack Space Used to allocate system objects used by the interpreter www.scotas.com
  8. 8. OracleJVM Security Strong Security combining database security mechanisms with Java security mechanisms ● User authentication ● Database-schema security ● Login-user and effective-user security ● Class resolution security ● Java 2 security www.scotas.com
  9. 9. Oracle’s Commitment to OJVM ● Used by a significant percentage of database customers ● Used by Oracle Components – InterMedia – Spatial – Text – XQuery (XMLDB) – WareHouse Builder – CDC (Change Data Capture) – ORE (Oracle R Enterprise – database resident) – ODM (Oracle Data Mining analytics functions) ● 12c Enhancements www.scotas.com
  10. 10. ● Many among Fortune 500 companies ● Some examples from “Java in the Oracle Database @ Work – Customer Case Studies” ● And for sure Scotas & Cima Who is Using OJVM www.scotas.com
  11. 11. Java in the Database: What For www.scotas.com ● Trigger-based Notification System using RMI ● Secure Credit-Card Processing using JSSE ● Custom Alert applications that monitor business data ● Sending emails with attachment from within the database ● Produce PDF files from Result Set ● Execute external OS commands and external procedures ● Implement Md5 CRC ● Publish Repository Content to Portal ● Portable Logistic Applications ● Implement Parsers for various File Formats (txt, zip, xml, binary) ● Implement Image Transformation and Format Conversion (GIF, PNG, JPEG, etc) ● Implement database-resident Content Management System ● HTTP Call-Out ● JDBC Call-Out ● RMI Call-Out to SAP ● Web Services Call-Out ● Messaging across Tiers ● RESTful Database Web Services ● Near Real Time Full Text Search
  12. 12. According to OOW SF presentation ● JDK interchangeable at any time (Perl script) ● Support for latest JDK – 1.6 default – 1.7 ● JNDI support ● Logging support ● In-database Hadoop (Map-Reduce) ● Security enhancements ● Fast switch from SQL-OJVM calls www.scotas.com
  13. 13. Case Study www.scotas.com Database resident JVM Client Example Scotas Near Real Time Full Text Searching
  14. 14. Scotas OLS www.scotas.com ● An Embedded version of Solr Framework running inside Oracle OracleJVM ● 42 new Java Classes and several new PLSQL Object Types ● Two new domain index for Oracle Databases using Data Cartridge API (ODCI) ● A new Store implementation for Lucene (OJVMDirectory) which replaces a traditional filesystem by Secure BLOB ● Four new SQL operators scontains(), sscore(), smlt(), shighlight() and poweful text analysis functionalities ● An orthogonal/up-to-date Solr solution for any programming language, especially Java, Ruby, Python, PHP and .Net, currently latest production version – 4.0.0. ● Available to any Oracle product such as BI, Apex, ODM create index esl_events_sidx on esl_events(message) indextype is Lucene.SolrIndex parameters('SyncMode:Deferred;MltColumn:text;HighlightColumn:title;DefaultColumn:text;Co mmitOnSync:true;ExtraTabs:ESL.esl_causes c;WhereCondition:L$MT.event_id=c.event_id(+);ExtraCols:.....') local parallel 2; select /*+ DOMAIN_INDEX_SORT */ sscore(1),shighlight(1),message from esl_events where scontains(message,'severity_s:(ERROR INFO) AND springframework',1)>0 and gen_day between 26 and 27;
  15. 15. What the NRT means? www.scotas.com
  16. 16. OLS Architecture www.scotas.com
  17. 17. Oracle Integrated Information Architecture Capabilities - Scotas OLS Integration www.scotas.com Management,Security, Governance AcquireData UnstructuredSemi-structuredStructured Machine Generated Social Media Text, Image, Video, Audio Transactions Master & Reference Organize Analyze Decide Reporting & Dashboards Alerting EPM - BI Applications Advanced Analytics Visual Discovery Big Data Cluster Specialized Hardware High Speed Network RDBMS Cluster In Memory Analytics ETL/ELT ChangeDC Real-Time Message- Based Hadoop MapReduce In-Database Analytics Source: Oracle Information Architecture: An Architect’s Guide to Big Data An Oracle White Paper in Enterprise Architecture, March 2012 Figure 3: Oracle Integrated Information Architecture Capabilities DBMS (OLTP) NoSQL ODS HDFS Warehouse Streaming CEP Engine Files Scotas Search
  18. 18. • Product comparison SCOTAS OLS Oracle Text Solr Lucene Real Time   Scalability   Performance   Security   Integration   Flexible and Powerful features   Bringing the best of both worlds www.scotas.com
  19. 19. Thank You! www.scotas.com | info@scotas.com | +1 (650) 704-7915 | 440 North Wolfe Road, Sunnyvale, CA 94085

×