350 likes | 551 Views
Accelerating Business Intelligence with Oracle TimesTen In-Memory Database. Jonathan Bar-Gil, ISV/OEM Principal Sales Consultant. The Quest for Response Time. Failure to meet service level agreements (SLA) Due to long response time Customer churns
E N D
Accelerating Business Intelligence with Oracle TimesTen In-Memory Database Jonathan Bar-Gil, ISV/OEM Principal Sales Consultant
The Quest for Response Time • Failure to meet service level agreements (SLA) • Due to long response time • Customer churns • Competitive products offer better response time • Decreased user productivity and decreased customer satisfaction • Unhappy customers • Loss of revenue and decreased profitability • Effect of lost business and opportunities • Why is Response Time Important?
Improving Application Response Time • Define business requirements for latency • Evaluate solutions • Understanding Latency Requirements Result-set Cache (Client/Server) Disk Cache Array Magnetic Disks In-Memory Database Flash Storage, SSD Network round trips Buffer Cache L A T E N C Y Slower Faster
TimesTen In-Memory Database Over a Decade of Innovation
Enabling The Real-Time World Market Data, Market Events, Order Matching, Trading Real-Time Analytics - Interactive Dashboard Data Mart, Scorecard Authorization, Online Charging, Location-Based Services Real-Time Applications Instantly Responsive / Highly Scalable / Always-On Mainstream 64-bit Processors Large Capacity RAM Fast Networks Key Enabling Technology eCommerce, Personalization, Real-Time Ad Serving
Agenda TimesTen In-Memory Database • Quick Overview • Oracle TimesTen In-Memory Database and • Oracle In-Memory Database Cache • Proven technology for OLTP workloads • Expansion into Business Intelligence • Summary
Agenda TimesTen In-Memory Database • Quick Overview • Oracle TimesTen In-Memory Database and • Oracle In-Memory Database Cache • Proven technology for OLTP workloads • Expansion into Business Intelligence • Summary
Oracle TimesTen In-Memory DatabaseMemory-Optimized Standalone Database Telco ServicesFinancial Services CRM, Portal, SaaS,Customer-facing Applications Intelligence, Defense, Real-TimeBAM & BI • Persistent, memory-optimized relational database • Delivers extreme performance for real-time applications • Highly available • Deployed in the middle tier, close to the application • Operates as a standalone database • Or … Application Application Application
Business Applications Business Applications Cached tables Cached tables In-Memory Database Cache Real Application Cluster Automatic Storage Management Oracle In-Memory Database CacheLow-Cost Extreme Performance in the Middle-tier • Accelerates Oracle Database applications • Utilizes middle-tier resources • Data cached in Oracle TimesTenIn-Memory Database • Database tables • Subsets of rows and columns • Fast, consistent response times • High transaction throughput • Standard SQL interface • Synchronized with Oracle Database
Client-Server Application TimesTen Client Lib Directly-Linked Application TimesTen Libraries Checkpoint Files Log Files Memory-Resident Database Oracle TimesTen In-Memory DatabaseOptimized In-Memory Database Technology • In-memory RDBMS • Entire database in memory • Persistent database • Optimized memory layout and algorithms • Exceptional performance • Instantaneous response time • High throughput • Embeddable • Persistent and durable • Transactions with ACID properties • Flexible options for data persistence to disk • Standard SQL and PL/SQL with • JDBC, ODBC, OCI, Pro*C • Data types compatible with Oracle Database Client/Server JDBC / ODBC / OCI / Pro*c Fast data access
7 Millionths of a second 1.78 Millionths of a second Lightning Fast Response Time One Exalogic Compute Node Oracle TimesTen In-Memory Database 11.2.2.0 - Intel Xeon 5670 2.93Ghz, 2 CPUs, 6 cores/CPU - Oracle Linux 5.6
Throughput Scalability for OLTP Workloads Throughput on One Compute Node • Memory-optimized data layout • Memory-optimized access methods • No locks acquired on reads • 100% Read Workload on Exalogic Over 4.14M Reads per Sec
Throughput Scalability for OLTP Workloads Throughput on One Compute Node • Memory-optimized data layout • Memory-optimized access methods • No locks acquired on reads • No waits of reads on updates (versioned concurrency control) • Multi-threaded logging • Read-Update-Insert-Delete Workload on Exalogic Over 2.13M TPS
What If .. you have an existing Oracle Database?How to enable your application to use in-memory technology? Use TimesTen as an In-Memory Database Cache Oracle In-Memory Database Cache A product option for Oracle Database Enterprise Edition
Application Application Application TimesTen In-Memory Database Cache Application Transactions Application Transactions • Runs in the middle-tier • Caches subset of Oracle database • Full featured in-memory RDBMS • Accelerates applications • Scale up, Scale out • Read/write caching, local or global • Cache pre-loaded/loaded-on-demand • Automatic synchronization • Built-in high availability • Accelerates Oracle Database Applications IMDB Cache Grid Automatic Synchronization
Application Standby Active Standby Active Standby Active Standby Active Standby Active Scale Out with TimesTen In-Memory Cache Grid Grid Member • On-demand addition/ removal of grid members • Built-in HA • Integration with Oracle Clusterware for automated failover and recovery
What does TimesTen offer for high availability? TimesTen Replication provides real-time replication of transaction data between TimesTen databases
Standby Active Subscriber Subscriber Subscriber Real-Time ReplicationHigh Availability, Low-Latency Durability, On-Line Upgrades Application Reads on Hot Standby • Real-time transactional replication • High performance • Synchronous / asynchronous • Memory-to-memory replication of log records • Parallel send of log streams • Parallel apply of changes on Standby • Data compression • Multiple topologies, including • Active Standby Pair + Read-only Subscribers with parallel apply of changes on Subscribers • Active Active – Split Workload • LAN and WAN configurations • Online upgrades – no downtime Application Transactions • Read-only subscribers • Reader Farm • Disaster Recovery
Standby Active Read-write and Read-only Caching Application Transactions Hot Standby available for reads • Read-write caching • Transactions applied to Active • Parallel replication of committed transactions to Standby • Parallel writethrough of committed transactions to Oracle database • Read-only caching • Multi-stream refresh of committed transactions from Oracle database • Parallel replication of refresh transactions to Standby • Application continues operating even if connection to Oracle database is down • High Availability Automatic Synchronization
Agenda TimesTen In-Memory Database • Quick Overview • Oracle TimesTen In-Memory Database and • Oracle In-Memory Database Cache • Proven technology for OLTP workloads • Expansion into Business Intelligence • Summary
Oracle TimesTen with Exalogic and ExadataExtreme Performance on Oracle Exa Stack • TimesTen is deployed in the middle-tier • TimesTen can be a cache to Oracle Database, including Exadata • TimesTen is certified on Exalogic In-Memory Database Cache Grid Application Tier Database Tier
TimesTen In-Memory Database Cache GridScalability on Exalogic – Mobile Prepaid Subscriber Application Java/JDBC application 5 different transactions Authenticate user/account Check account balance Update account profile Credit or debit account Search for accounts that meet certain criteria Transactions executed in TimesTen and propagated asynchronously to Oracle DB TimesTenIn-Memory Cache Grid on Exalogic 8 compute nodes (One Quarter Rack) 4 grid members/compute node, 32 grid members total 40 TB shared storage Presentation Exalogic Cloud
TimesTen on Exalogic – Extreme Performance • Scalability and Peak Throughput on Exalogic 8.7 Million TPS
Agenda TimesTen In-Memory Database • Quick Overview • Oracle TimesTen In-Memory Database and • Oracle In-Memory Database Cache • Proven technology for OLTP workloads • Expansion into Business Intelligence • Summary
How Is TimesTen Used in Exalytics? • TimesTen is used as an in-memory cache for BI aggregates • Summary Advisor determines what data to load using ETL tool within OBI Runs constantly with near zero impact Optimizes for maximum impact. Administrator override available Scripts persisted for cache update
In-Memory Analytics • Adaptive In-Memory Cache • Decides what gets stored in-memory • Adapts to change in analytic workload • TimesTen In-Memory Database • Enhanced with columnar compression • Enhanced with analytic functions 1 TB RAM TimesTen In-Memory Database Adaptive In-Memory Cache
In-Memory Columnar Compression • Columnar compression applied to one or more columns of a table • Optimized for in-memory storage • Suitable of OLTP and BI workloads • Compressed data remains available for online access • Space reduction of over 5x on sample customer data
In-Memory Columnar Compression – How? • One or more columns in a table can be compressed called a compressed column group • Dictionary table is created for each compressed column group • The compressed column group contains a pointer to row in the dictionary • Width of pointer can be 1, 2, or 4
OLAP Reporting Features • Enhanced SQL aggregation • GROUPING SETS • CUBE • ROLLUP • Analytic functions • Ranking functions • Statistical functions • With/without partitions and with/without sliding windows • Query optimization and query processing optimized for in-memory data management
GROUPING SETS – Example The example specifies the grouping sets of (region_name, country_name), state_province, and grand totals
Analytic functions – RANK Example Use the RANK function to rank the first 10 employees in department 80 based on their salary and commission. Identical salary values receive the same rank and cause nonconsecutive ranks.
Agenda TimesTen In-Memory Database • Quick Overview • Oracle TimesTen In-Memory Database and • Oracle In-Memory Database Cache • Proven technology for OLTP workloads • Expansion into Business Intelligence • Summary
Summary • TimesTen enables the real-time enterprise • Optimized for OLTP and Business Intelligence workloads • Complements Exadata with microsecond response time for real-time applications • Certified on Exalogic • Optimized for Exalytics