Web Oriented Architecture at Oracle Emiliano Pecis Technology Business Unit
Agenda
What is WOA
WOA and the “Network effects” People is: the  “Network effects” Tags: facebook blogger wikipedia digg twitter fickr networkeffects
<Insert Picture Here> “ In other words, the Web model provides a single, open, and unified  information architecture that is consistent, easily consumed, extremely scalable, securable, very reusable, resilient, and highly federated.” Dion Hinchcliffe   Founder, Hinchcliffe & Co.  Dion Hinchcliffe’s Blog
WOA – Web Oriented Architecture Tags:  URI WOA  REST web markup   resources
WOA – All About Resources Tags:  WOA  REST  resources URI SOA HTTP
WOA vs SOA Tags: WOA REST  resources ws-* rich reach pox json HTT
WOA is a substyle of SOA but… Tags: WOA REST  SOA top-down bottom-up ws rich reach
WOA and  low case  semantic web Tags: browser rest ajax microformats web3.0 semantic lowcase
WOA and (server side) scalability Tags: WOA REST datagrid database scalability
WOA and (server side) scalability Client side Server side Tags: WOA REST datagrid database scalability
WOA at Oracle
Oracle Software involved in WOA Tags: ensemble webcenter portal weblogic framework REST disc portlet dvt coherence datagrid
WebCenter Ensemble Portal Portlet Portlet Portlet Portlet Oracle WebCenter Ensemble Consumer Widgets Java App WSRP REST .NET App .NET  Control .NET  Control .NET  Control .NET  Control Static HTML Other App: Cold Fusion, PHP, Perl, Ruby on Rails,   REST Tags:  ALUI Ensemble rest woa php perl ruby on rails wsrp
Portal Framework REST Services & Disc Tags:  Portal REST DISC Weblogic Portlet ajax dvt
HTTP Portlet Publishing Tags:  http portlet publishing webloigc portal igoogle widget
Dynamic Visitor Tool Tags:  dynamic visitor tool svt ajax portlet customization web20 portal
Data Grid
Oracle Coherence Data Grid Provides a  reliable data tier  with a single, consistent view of data Enables dynamic data capacity including  fault tolerance  and load balancing Ensures that  data capacity scales   with   processing capacity Data  Services Mainframes Databases Enterprise  Applications Real Time Clients Distributed in Memory Data Management Oracle  Coherence Data Grid Tags:  http portlet publishing webloigc portal igoogle widget Web services Web services
Data Grid Uses Caching Applications request data from the Data Grid rather than backend data sources Analytics Applications ask the Data Grid questions from simple queries to advanced scenario modeling Transactions Data Grid acts as a transactional System of Record, hosting data and business logic Events Automated processing based on event Tags: datagrid  caching analytics transactions events
Coherence: A Unique Approach Members share responsibilities (health, services, data…) Completely Peer-to-Peer No Single Points of Bottleneck (SPOBs) No Single Points of Failure (SPOFs) Linearly scalable to hundreds of servers by design No Masters / Slaves etc. Data Grid members work together as a team Tags:  datagrid coherence members nomasters noslaves spf spb peer-to-peer
Partitioned Topology : Data Access Data spread and backed up across Members Transparent to developer Members have access to all Data All Data locations are known – no lookup & no registry! Tags:  datagrid coherence members data access
Partitioned Topology : Data Update Synchronous Update Avoids potential Data Loss & Corruption Predictable Performance Backup Partitions are partitioned away from Primaries for resilience No engineering requirement to setup Primaries or Backups Automatically and Dynamically Managed Write-behind Tags:  datagrid coherence membersdata update
Partitioned Topology : Recovery Membership changes (new members added or members leaving) Other members, using  consensus , recover and repartition automatically No in-flight operations lost, no availability gap! Some latencies (due to higher priority of asynchronous recovery) Information Reliability & Continuous Availability are the priorities Tags:  datagrid coherence recovery data
Features : Traditional Implements Map interface Drop in replacement.  Full concurrency control.  Multi-threaded. Scalable and resilient! get, put, putAll, size, clear, lock, unlock… Implements JCache interface Extensive support for a multitude of expiration policies, including  none ! More than “just a Cache”.  More than “just a Map” Tags:  datagrid coherence jcache get put
Features : Observable Interface Real-time filterable (bean) events for entry insert, update, delete Filters applied in parallel (in the Grid) Filters completely extensible A large range of filters out-of-the-box: All, Always, And, Any, Array, Between, Class, Comparison, ContainsAll, ContainsAny, Contains, Equals, GreaterEquals, Greater, In, InKeySet, IsNotNull, IsNull, LessEquals, Less, Like, Limit, Never, NotEquals, Not, Or, Present, Xor… Events may be synchronous*  trades.addMapListener( new StockEventFilter(“ORCL”), new MyMapListener(…)); Tags:  datagrid coherence observable interface
Features : InvocableMap Interface Execute processors against an Entry, a Collection or a Filter Executions occur in parallel (aka: Grid-style) No “workers” to manage! Processors may return any value trades.invoke( new EqualsFilter(“getSecurity”,“ORCL”), new StockSplit(2.0)); Aggregate Entries based on a Filter positions.aggregate( new EqualsFilter(“getSecurity”,“ORCL”), new SumFilter(“amount”)); Tags:  datagrid coherence processors collection filter
What is the Business Impact? Reduce infrastructure & dev cost  Leverage IT investment, Grid Computing Build vs. Buy Scale as you grow Dynamic, predictable application scalability  aligned with business needs Increase customer satisfaction  Better application performance Faster access to data, shorter response times Enable business continuity Continuous data availability and reliability Meet / exceed service level agreements Tags:  datagrid coherence customers references
Typical Scenario & collaterals
Typical Scenario
About Software
Collaterals About WOA Gartner’s definition Dion Hinchcliffe’s blog Oracle WOA enablers Weblogic Portal REST API Weblogic Portal Disc Framework Weblogic Portal “Portlet Publishing” Weblogic Server support for Rest Weblogic Server support for pub-sub server Ensemble for WebCenter Interaction  Oracle Datagrid Oracle Coherence Others Microformats for lowcase Semantic Web
Q & A
 

Web Oriented Architecture at Oracle

  • 1.
    Web Oriented Architectureat Oracle Emiliano Pecis Technology Business Unit
  • 2.
  • 3.
  • 4.
    WOA and the“Network effects” People is: the “Network effects” Tags: facebook blogger wikipedia digg twitter fickr networkeffects
  • 5.
    <Insert Picture Here>“ In other words, the Web model provides a single, open, and unified information architecture that is consistent, easily consumed, extremely scalable, securable, very reusable, resilient, and highly federated.” Dion Hinchcliffe Founder, Hinchcliffe & Co. Dion Hinchcliffe’s Blog
  • 6.
    WOA – WebOriented Architecture Tags: URI WOA REST web markup resources
  • 7.
    WOA – AllAbout Resources Tags: WOA REST resources URI SOA HTTP
  • 8.
    WOA vs SOATags: WOA REST resources ws-* rich reach pox json HTT
  • 9.
    WOA is asubstyle of SOA but… Tags: WOA REST SOA top-down bottom-up ws rich reach
  • 10.
    WOA and low case semantic web Tags: browser rest ajax microformats web3.0 semantic lowcase
  • 11.
    WOA and (serverside) scalability Tags: WOA REST datagrid database scalability
  • 12.
    WOA and (serverside) scalability Client side Server side Tags: WOA REST datagrid database scalability
  • 13.
  • 14.
    Oracle Software involvedin WOA Tags: ensemble webcenter portal weblogic framework REST disc portlet dvt coherence datagrid
  • 15.
    WebCenter Ensemble PortalPortlet Portlet Portlet Portlet Oracle WebCenter Ensemble Consumer Widgets Java App WSRP REST .NET App .NET Control .NET Control .NET Control .NET Control Static HTML Other App: Cold Fusion, PHP, Perl, Ruby on Rails, REST Tags: ALUI Ensemble rest woa php perl ruby on rails wsrp
  • 16.
    Portal Framework RESTServices & Disc Tags: Portal REST DISC Weblogic Portlet ajax dvt
  • 17.
    HTTP Portlet PublishingTags: http portlet publishing webloigc portal igoogle widget
  • 18.
    Dynamic Visitor ToolTags: dynamic visitor tool svt ajax portlet customization web20 portal
  • 19.
  • 20.
    Oracle Coherence DataGrid Provides a reliable data tier with a single, consistent view of data Enables dynamic data capacity including fault tolerance and load balancing Ensures that data capacity scales with processing capacity Data Services Mainframes Databases Enterprise Applications Real Time Clients Distributed in Memory Data Management Oracle Coherence Data Grid Tags: http portlet publishing webloigc portal igoogle widget Web services Web services
  • 21.
    Data Grid UsesCaching Applications request data from the Data Grid rather than backend data sources Analytics Applications ask the Data Grid questions from simple queries to advanced scenario modeling Transactions Data Grid acts as a transactional System of Record, hosting data and business logic Events Automated processing based on event Tags: datagrid caching analytics transactions events
  • 22.
    Coherence: A UniqueApproach Members share responsibilities (health, services, data…) Completely Peer-to-Peer No Single Points of Bottleneck (SPOBs) No Single Points of Failure (SPOFs) Linearly scalable to hundreds of servers by design No Masters / Slaves etc. Data Grid members work together as a team Tags: datagrid coherence members nomasters noslaves spf spb peer-to-peer
  • 23.
    Partitioned Topology :Data Access Data spread and backed up across Members Transparent to developer Members have access to all Data All Data locations are known – no lookup & no registry! Tags: datagrid coherence members data access
  • 24.
    Partitioned Topology :Data Update Synchronous Update Avoids potential Data Loss & Corruption Predictable Performance Backup Partitions are partitioned away from Primaries for resilience No engineering requirement to setup Primaries or Backups Automatically and Dynamically Managed Write-behind Tags: datagrid coherence membersdata update
  • 25.
    Partitioned Topology :Recovery Membership changes (new members added or members leaving) Other members, using consensus , recover and repartition automatically No in-flight operations lost, no availability gap! Some latencies (due to higher priority of asynchronous recovery) Information Reliability & Continuous Availability are the priorities Tags: datagrid coherence recovery data
  • 26.
    Features : TraditionalImplements Map interface Drop in replacement. Full concurrency control. Multi-threaded. Scalable and resilient! get, put, putAll, size, clear, lock, unlock… Implements JCache interface Extensive support for a multitude of expiration policies, including none ! More than “just a Cache”. More than “just a Map” Tags: datagrid coherence jcache get put
  • 27.
    Features : ObservableInterface Real-time filterable (bean) events for entry insert, update, delete Filters applied in parallel (in the Grid) Filters completely extensible A large range of filters out-of-the-box: All, Always, And, Any, Array, Between, Class, Comparison, ContainsAll, ContainsAny, Contains, Equals, GreaterEquals, Greater, In, InKeySet, IsNotNull, IsNull, LessEquals, Less, Like, Limit, Never, NotEquals, Not, Or, Present, Xor… Events may be synchronous* trades.addMapListener( new StockEventFilter(“ORCL”), new MyMapListener(…)); Tags: datagrid coherence observable interface
  • 28.
    Features : InvocableMapInterface Execute processors against an Entry, a Collection or a Filter Executions occur in parallel (aka: Grid-style) No “workers” to manage! Processors may return any value trades.invoke( new EqualsFilter(“getSecurity”,“ORCL”), new StockSplit(2.0)); Aggregate Entries based on a Filter positions.aggregate( new EqualsFilter(“getSecurity”,“ORCL”), new SumFilter(“amount”)); Tags: datagrid coherence processors collection filter
  • 29.
    What is theBusiness Impact? Reduce infrastructure & dev cost Leverage IT investment, Grid Computing Build vs. Buy Scale as you grow Dynamic, predictable application scalability aligned with business needs Increase customer satisfaction Better application performance Faster access to data, shorter response times Enable business continuity Continuous data availability and reliability Meet / exceed service level agreements Tags: datagrid coherence customers references
  • 30.
    Typical Scenario &collaterals
  • 31.
  • 32.
  • 33.
    Collaterals About WOAGartner’s definition Dion Hinchcliffe’s blog Oracle WOA enablers Weblogic Portal REST API Weblogic Portal Disc Framework Weblogic Portal “Portlet Publishing” Weblogic Server support for Rest Weblogic Server support for pub-sub server Ensemble for WebCenter Interaction Oracle Datagrid Oracle Coherence Others Microformats for lowcase Semantic Web
  • 34.
  • 35.