UCP, GridLink, TAF, AC, TAC, FAN… The configuration of Oracle Drivers for application high availability is not an easy job. The developers often care about the minimal working configuration, while the DBAs are busy with the operations. In this session I will try to demystify application server’s connectivity to the database and give a direction toward the highest availability, using Real Application Clusters and new Oracle features like TAC and CMAN TDM.
This document discusses Oracle database performance tuning. It covers identifying common Oracle performance issues such as CPU bottlenecks, memory issues, and inefficient SQL statements. It also outlines the Oracle performance tuning method and tools like the Automatic Database Diagnostic Monitor (ADDM) and performance page in Oracle Enterprise Manager. These tools help administrators monitor performance, identify bottlenecks, implement ADDM recommendations, and tune SQL statements reactively when issues arise.
New Generation Oracle RAC 19c focuses on diagnosing Oracle RAC performance issues. The document discusses tools used by Oracle's RAC performance engineering team to instrument and measure key code areas between releases. It also covers how Oracle RAC provides high availability and scalability for workloads like traditional apps, new apps, IoT workloads, and more. Diagnosing performance requires understanding factors like private network latency and configuration.
This document provides an overview of Oracle Active Data Guard, which allows standby databases to be open for read-only access while redo data is being shipped from the primary database. Key points include:
- Active Data Guard enables offloading of queries and reporting to standby databases while maintaining high availability.
- Fast incremental backups can be performed on standby databases, which are up to 20 times faster than full backups.
- Real-time queries on standby databases always see the most up-to-date committed data from the primary with minimal latency.
This version of "Oracle Real Application Clusters (RAC) 19c & Later – Best Practices" was first presented in Oracle Open World (OOW) London 2020 and includes content from the OOW 2019 version of the deck. The deck has been updated with the latest information regarding ORAchk as well as upgrade tips & tricks.
This document discusses Oracle Multitenant 19c and pluggable databases. It begins with an introduction to the speaker and overview of pluggable databases. It then describes the traditional Oracle database architecture and the multitenant architecture in Oracle 19c. It discusses the different components of a container database including the root, seed PDB, and application containers. It also covers how to create pluggable databases from scratch, through cloning locally and remotely, relocating PDBs, and plugging in unplugged PDBs.
This presentation is based on Lawrence To's Maximum Availability Architecture (MAA) Oracle Open World Presentation talking about the latest updates on high availability (HA) best practices across multiple architectures, features and products in Oracle Database 19c. It considers all workloads, OLTP, DWH and analytics, mixed workload as well as on-premises and cloud-based deployments.
Oracle RAC 19c: Best Practices and Secret InternalsAnil Nair
Oracle Real Application Clusters 19c provides best practices and new features for upgrading to Oracle 19c. It discusses upgrading Oracle RAC to Linux 7 with minimal downtime using node draining and relocation techniques. Oracle 19c allows for upgrading the Grid Infrastructure management repository and patching faster using a new Oracle home. The presentation also covers new resource modeling for PDBs in Oracle 19c and improved Clusterware diagnostics.
Understanding oracle rac internals part 2 - slidesMohamed Farouk
This document discusses Oracle Real Application Clusters (RAC) internals, specifically focusing on client connectivity and node membership. It provides details on how clients connect to a RAC database, including connect time load balancing, connect time and runtime connection failover. It also describes the key processes that manage node membership in Oracle Clusterware, including CSSD and how it uses network heartbeats and voting disks to monitor nodes and remove failed nodes from the cluster.
This document discusses Oracle database performance tuning. It covers identifying common Oracle performance issues such as CPU bottlenecks, memory issues, and inefficient SQL statements. It also outlines the Oracle performance tuning method and tools like the Automatic Database Diagnostic Monitor (ADDM) and performance page in Oracle Enterprise Manager. These tools help administrators monitor performance, identify bottlenecks, implement ADDM recommendations, and tune SQL statements reactively when issues arise.
New Generation Oracle RAC 19c focuses on diagnosing Oracle RAC performance issues. The document discusses tools used by Oracle's RAC performance engineering team to instrument and measure key code areas between releases. It also covers how Oracle RAC provides high availability and scalability for workloads like traditional apps, new apps, IoT workloads, and more. Diagnosing performance requires understanding factors like private network latency and configuration.
This document provides an overview of Oracle Active Data Guard, which allows standby databases to be open for read-only access while redo data is being shipped from the primary database. Key points include:
- Active Data Guard enables offloading of queries and reporting to standby databases while maintaining high availability.
- Fast incremental backups can be performed on standby databases, which are up to 20 times faster than full backups.
- Real-time queries on standby databases always see the most up-to-date committed data from the primary with minimal latency.
This version of "Oracle Real Application Clusters (RAC) 19c & Later – Best Practices" was first presented in Oracle Open World (OOW) London 2020 and includes content from the OOW 2019 version of the deck. The deck has been updated with the latest information regarding ORAchk as well as upgrade tips & tricks.
This document discusses Oracle Multitenant 19c and pluggable databases. It begins with an introduction to the speaker and overview of pluggable databases. It then describes the traditional Oracle database architecture and the multitenant architecture in Oracle 19c. It discusses the different components of a container database including the root, seed PDB, and application containers. It also covers how to create pluggable databases from scratch, through cloning locally and remotely, relocating PDBs, and plugging in unplugged PDBs.
This presentation is based on Lawrence To's Maximum Availability Architecture (MAA) Oracle Open World Presentation talking about the latest updates on high availability (HA) best practices across multiple architectures, features and products in Oracle Database 19c. It considers all workloads, OLTP, DWH and analytics, mixed workload as well as on-premises and cloud-based deployments.
Oracle RAC 19c: Best Practices and Secret InternalsAnil Nair
Oracle Real Application Clusters 19c provides best practices and new features for upgrading to Oracle 19c. It discusses upgrading Oracle RAC to Linux 7 with minimal downtime using node draining and relocation techniques. Oracle 19c allows for upgrading the Grid Infrastructure management repository and patching faster using a new Oracle home. The presentation also covers new resource modeling for PDBs in Oracle 19c and improved Clusterware diagnostics.
Understanding oracle rac internals part 2 - slidesMohamed Farouk
This document discusses Oracle Real Application Clusters (RAC) internals, specifically focusing on client connectivity and node membership. It provides details on how clients connect to a RAC database, including connect time load balancing, connect time and runtime connection failover. It also describes the key processes that manage node membership in Oracle Clusterware, including CSSD and how it uses network heartbeats and voting disks to monitor nodes and remove failed nodes from the cluster.
This document provides an overview of Oracle 12c Pluggable Databases (PDBs). Key points include:
- PDBs allow multiple databases to be consolidated within a single container database (CDB), providing benefits like faster provisioning and upgrades by doing them once per CDB.
- Each PDB acts as an independent database with its own data dictionary but shares resources like redo logs at the CDB level. PDBs can be unplugged from one CDB and plugged into another.
- Hands-on labs demonstrate how to create, open, clone, and migrate PDBs between CDBs. The document also compares characteristics of CDBs and PDBs and shows how a non-C
Oracle RAC Virtualized - In VMs, in Containers, On-premises, and in the CloudMarkus Michalewicz
This presentation discusses the support guidelines for using Oracle Real Application Clusters (RAC) in virtualized environments, for which general Oracle Database support guidelines are discussed shortly first.
First presented during DOAG 2021 User Conference, this presentation replaces its predecessor from 2016: https://www.slideshare.net/MarkusMichalewicz/how-to-use-oracle-rac-in-a-cloud-a-support-question
Best Practices for the Most Impactful Oracle Database 18c and 19c FeaturesMarkus Michalewicz
Oracle OpenWorld 2019 featured a presentation on best practices for high availability (HA) features in Oracle Database versions 12c, 18c, and 19c. The presentation covered key HA capabilities like Oracle Multitenant and Pluggable Databases, Data Guard, Hang Manager, and Real Application Clusters. It provided an overview of how each feature enables common lifecycle operations and maintenance tasks to be performed with minimal downtime.
Are your Oracle databases highly available? You have deployed Real Application Clusters (RAC), Data Guard, or Failover Clusters and are well protected against server failures? Great – the prerequisites for a highly available environment are given. However, to assure that backend infrastructure failures also remain transparent to the client, an appropriate configuration is a prerequisite.
This lecture will discuss the Oracle technologies that can be used to achieve automatic client failover functionality. What are the advantages, but also the limitations of these technologies?
Oracle REST Data Services: Options for your Web ServicesJeff Smith
ORDS has many options when it comes to delivering web services for your Oracle Database. We have an Automatic feature for your database objects where we handle everything for you. Or, you can write your own services with your SQL & PL/SQL. This slide deck shows exactly what you have to choose from for your applications.
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder
This document summarizes a series of performance issues seen by the author in their work with Oracle Exadata systems. It describes random session hangs occurring across several minutes, with long transaction locks and I/O waits seen. Analysis of AWR reports and blocking trees revealed that many sessions were blocked waiting on I/O, though initial I/O metrics from the OS did not show issues. Further analysis using ASH activity breakdowns and OS tools like sar and vmstat found high apparent CPU usage in ASH that was not reflected in actual low CPU load on the system. This discrepancy was due to the way ASH attributes non-waiting time to CPU. The root cause remained unclear.
Tanel Poder Oracle Scripts and Tools (2010)Tanel Poder
Tanel Poder's Oracle Performance and Troubleshooting Scripts & Tools presentation initially presented at Hotsos Symposium Training Day back in year 2010
Oracle RAC is an option to the Oracle Database Enterprise Edition. At least, this is what it is known for. This presentation shows the many ways in which the stack, which is known as Oracle RAC can be used in the most efficient way for various use cases.
Oracle Database performance tuning using oratopSandesh Rao
Oratop is a text-based user interface tool for monitoring basic database operations in real-time. This presentation will go into depth on how to use the tool and some example scenarios. It can be used for both RAC and single-instance databases and in combination with top to get a more holistic view of system performance and identify any bottlenecks.
Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...Sandesh Rao
In this session, I will cover under-the-hood features that power Oracle Real Application Clusters (Oracle RAC) 19c specifically around Cache Fusion and Service management. Improvements in Oracle RAC helps in integration with features such as Multitenant and Data Guard. In fact, these features benefit immensely when used with Oracle RAC. Finally we will talk about changes to the broader Oracle RAC Family of Products stack and the algorithmic changes that helps quickly detect sick/dead nodes/instances and the reconfiguration improvements to ensure that the Oracle RAC Databases continue to function without any disruption
Understanding my database through SQL*Plus using the free tool eDB360Carlos Sierra
This session introduces eDB360 - a free tool that is executed from SQL*Plus and generates a set of reports providing a 360-degree view of an Oracle database; all without installing anything on the database.
If using Oracle Enterprise Manager (OEM) is off-limits for you or your team, and you can only access the database thorough a SQL*Plus connection with no direct access to the database server, then this tool is a perfect fit to provide you with a broad overview of the database configuration, performance, top SQL and much more. You only need a SQL*Plus account with read access to the data dictionary, and common Oracle licenses like the Diagnostics or the Tuning Pack.
Typical uses of this eDB360 tool include: databases health-checks, performance assessments, pre or post upgrade verifications, snapshots of the environment for later use, compare between two similar environments, documenting the state of a database when taking ownership of it, etc.
Once you learn how to use eDB360 and get to appreciate its value, you may want to execute this tool on all your databases on a regular basis, so you can keep track of things for long periods of time. This tool is becoming part of a large collection of goodies many DBAs use today.
During this session you will learn the basics about the free eDB360 tool, plus some cool tricks. The target audience is: DBAs, developers and consultants (some managers could also benefit).
"Extended" or "Stretched" Oracle RAC has been available as a concept for a while. Oracle RAC 12c Release 2 introduces an Oracle Extended Cluster configuration, in which the cluster understands the concept of sites and extended setups. This knowledge is used to more efficiently manage "Extended Oracle RAC", whether the nodes are 0.1 mile or 10 miles apart.
The presentation was last updated on August 7th 2017 to add a reference to the new MAA White Paper: "Installing Oracle Extended Clusters on Exadata Database Machine" - http://www.oracle.com/technetwork/database/availability/maa-extclusters-installguide-3748227.pdf and to correct some minor details.
Extreme replication at IOUG Collaborate 15Bobby Curtis
This document summarizes a session on tuning Oracle GoldenGate performance between an Oracle source and target database. It discusses tools for monitoring GoldenGate performance such as lag reports, process statistics, and database views. It also provides a case study example configuration and recommendations for tuning integrated extract and replicat parameters such as parallelism settings.
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Ludovico Caldara
Slides used for my Oracle Open World 2014 #OOW14 session.
The new release of Oracle Database has come with many new exciting enhancements for high availability. The aim of this presentation is to introduce some new Oracle Active Data Guard features through practical examples and live demos. Among the various enhancements, the new Far Sync Instance and Real-Time Cascade Standby features receive special attention in the session.
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTanel Poder
From Tanel Poder's Troubleshooting Complex Performance Issues series - an example of Oracle SEG$ internal segment contention due to some direct path insert activity.
Oracle Real Application Cluster (RAC) allows multiple instances of an Oracle database to run simultaneously on multiple nodes. It provides high availability, scalability, and transparent application failover. Key components include shared storage, Oracle Clusterware, cache fusion for data synchronization, and Transparent Application Failover for uninterrupted connections.
Oracle Data Guard ensures high availability, disaster recovery and data protection for enterprise data. This enable production Oracle databases to survive disasters and data corruptions. Oracle 18c and 19c offers many new features it will bring many advantages to organization.
This document provides an overview of Oracle performance tuning fundamentals. It discusses key concepts like wait events, statistics, CPU utilization, and the importance of understanding the operating system, database, and business needs. It also introduces tools for monitoring performance like AWR, ASH, and dynamic views. The goal is to establish a foundational understanding of Oracle performance concepts and monitoring techniques.
Smart monitoring how does oracle rac manage resource, state ukoug19Anil Nair
An important requirement for HA and to provide scalability is to detect problems and resolve them quickly before the user sessions get affected. Oracle RAC along with its Family of Solutions work together cohesively to detect conditions such as "Un-responsive Instances", Network issues quickly and resolve them by either redirecting the work to other instances or redundant network paths
Standard Edition High Availability (SEHA) - The Why, What & HowMarkus Michalewicz
Standard Edition High Availability (SEHA) is the latest addition to Oracle’s high availability solutions. This presentation explains the motivation for Standard Edition High Availability, how it is implemented and the way it works currently as well as what is planned for future improvements. It was first presented during Oracle Groundbreakers Yatra (OGYatra) Online in July 2020.
This document provides a checklist for preparing applications and environments for continuous availability using Oracle Database services. Key steps include:
1. Using database services and configuring connection strings for high availability.
2. Enabling Fast Application Notification (FAN) to interrupt applications during failures.
3. Using recommended practices like connection pools, tests, and draining to gracefully complete work during planned maintenance without requiring application restarts.
Oracle Drivers configuration for High AvailabilityLudovico Caldara
This document discusses various techniques for achieving high availability and transparent failover in Oracle databases, including:
- Fast Application Notification (FAN) to notify clients of service relocations and allow sessions to drain gracefully.
- Transparent Application Failover (TAF) which automates reconnects for OCI clients and allows resuming queries after a failure.
- Application Continuity (AC) which records transaction state to allow replaying transactions after a failure, requiring code changes or a connection pool.
- Transparent Application Continuity (TAC) which provides the benefits of AC without requiring code changes for supported drivers.
- Connection managers like Traffic Director which can provide session failover without client changes by managing
This document provides an overview of Oracle 12c Pluggable Databases (PDBs). Key points include:
- PDBs allow multiple databases to be consolidated within a single container database (CDB), providing benefits like faster provisioning and upgrades by doing them once per CDB.
- Each PDB acts as an independent database with its own data dictionary but shares resources like redo logs at the CDB level. PDBs can be unplugged from one CDB and plugged into another.
- Hands-on labs demonstrate how to create, open, clone, and migrate PDBs between CDBs. The document also compares characteristics of CDBs and PDBs and shows how a non-C
Oracle RAC Virtualized - In VMs, in Containers, On-premises, and in the CloudMarkus Michalewicz
This presentation discusses the support guidelines for using Oracle Real Application Clusters (RAC) in virtualized environments, for which general Oracle Database support guidelines are discussed shortly first.
First presented during DOAG 2021 User Conference, this presentation replaces its predecessor from 2016: https://www.slideshare.net/MarkusMichalewicz/how-to-use-oracle-rac-in-a-cloud-a-support-question
Best Practices for the Most Impactful Oracle Database 18c and 19c FeaturesMarkus Michalewicz
Oracle OpenWorld 2019 featured a presentation on best practices for high availability (HA) features in Oracle Database versions 12c, 18c, and 19c. The presentation covered key HA capabilities like Oracle Multitenant and Pluggable Databases, Data Guard, Hang Manager, and Real Application Clusters. It provided an overview of how each feature enables common lifecycle operations and maintenance tasks to be performed with minimal downtime.
Are your Oracle databases highly available? You have deployed Real Application Clusters (RAC), Data Guard, or Failover Clusters and are well protected against server failures? Great – the prerequisites for a highly available environment are given. However, to assure that backend infrastructure failures also remain transparent to the client, an appropriate configuration is a prerequisite.
This lecture will discuss the Oracle technologies that can be used to achieve automatic client failover functionality. What are the advantages, but also the limitations of these technologies?
Oracle REST Data Services: Options for your Web ServicesJeff Smith
ORDS has many options when it comes to delivering web services for your Oracle Database. We have an Automatic feature for your database objects where we handle everything for you. Or, you can write your own services with your SQL & PL/SQL. This slide deck shows exactly what you have to choose from for your applications.
Tanel Poder - Troubleshooting Complex Oracle Performance Issues - Part 2Tanel Poder
This document summarizes a series of performance issues seen by the author in their work with Oracle Exadata systems. It describes random session hangs occurring across several minutes, with long transaction locks and I/O waits seen. Analysis of AWR reports and blocking trees revealed that many sessions were blocked waiting on I/O, though initial I/O metrics from the OS did not show issues. Further analysis using ASH activity breakdowns and OS tools like sar and vmstat found high apparent CPU usage in ASH that was not reflected in actual low CPU load on the system. This discrepancy was due to the way ASH attributes non-waiting time to CPU. The root cause remained unclear.
Tanel Poder Oracle Scripts and Tools (2010)Tanel Poder
Tanel Poder's Oracle Performance and Troubleshooting Scripts & Tools presentation initially presented at Hotsos Symposium Training Day back in year 2010
Oracle RAC is an option to the Oracle Database Enterprise Edition. At least, this is what it is known for. This presentation shows the many ways in which the stack, which is known as Oracle RAC can be used in the most efficient way for various use cases.
Oracle Database performance tuning using oratopSandesh Rao
Oratop is a text-based user interface tool for monitoring basic database operations in real-time. This presentation will go into depth on how to use the tool and some example scenarios. It can be used for both RAC and single-instance databases and in combination with top to get a more holistic view of system performance and identify any bottlenecks.
Oracle Real Application Clusters 19c- Best Practices and Internals- EMEA Tour...Sandesh Rao
In this session, I will cover under-the-hood features that power Oracle Real Application Clusters (Oracle RAC) 19c specifically around Cache Fusion and Service management. Improvements in Oracle RAC helps in integration with features such as Multitenant and Data Guard. In fact, these features benefit immensely when used with Oracle RAC. Finally we will talk about changes to the broader Oracle RAC Family of Products stack and the algorithmic changes that helps quickly detect sick/dead nodes/instances and the reconfiguration improvements to ensure that the Oracle RAC Databases continue to function without any disruption
Understanding my database through SQL*Plus using the free tool eDB360Carlos Sierra
This session introduces eDB360 - a free tool that is executed from SQL*Plus and generates a set of reports providing a 360-degree view of an Oracle database; all without installing anything on the database.
If using Oracle Enterprise Manager (OEM) is off-limits for you or your team, and you can only access the database thorough a SQL*Plus connection with no direct access to the database server, then this tool is a perfect fit to provide you with a broad overview of the database configuration, performance, top SQL and much more. You only need a SQL*Plus account with read access to the data dictionary, and common Oracle licenses like the Diagnostics or the Tuning Pack.
Typical uses of this eDB360 tool include: databases health-checks, performance assessments, pre or post upgrade verifications, snapshots of the environment for later use, compare between two similar environments, documenting the state of a database when taking ownership of it, etc.
Once you learn how to use eDB360 and get to appreciate its value, you may want to execute this tool on all your databases on a regular basis, so you can keep track of things for long periods of time. This tool is becoming part of a large collection of goodies many DBAs use today.
During this session you will learn the basics about the free eDB360 tool, plus some cool tricks. The target audience is: DBAs, developers and consultants (some managers could also benefit).
"Extended" or "Stretched" Oracle RAC has been available as a concept for a while. Oracle RAC 12c Release 2 introduces an Oracle Extended Cluster configuration, in which the cluster understands the concept of sites and extended setups. This knowledge is used to more efficiently manage "Extended Oracle RAC", whether the nodes are 0.1 mile or 10 miles apart.
The presentation was last updated on August 7th 2017 to add a reference to the new MAA White Paper: "Installing Oracle Extended Clusters on Exadata Database Machine" - http://www.oracle.com/technetwork/database/availability/maa-extclusters-installguide-3748227.pdf and to correct some minor details.
Extreme replication at IOUG Collaborate 15Bobby Curtis
This document summarizes a session on tuning Oracle GoldenGate performance between an Oracle source and target database. It discusses tools for monitoring GoldenGate performance such as lag reports, process statistics, and database views. It also provides a case study example configuration and recommendations for tuning integrated extract and replicat parameters such as parallelism settings.
Oracle Active Data Guard 12c: Far Sync Instance, Real-Time Cascade and Other ...Ludovico Caldara
Slides used for my Oracle Open World 2014 #OOW14 session.
The new release of Oracle Database has come with many new exciting enhancements for high availability. The aim of this presentation is to introduce some new Oracle Active Data Guard features through practical examples and live demos. Among the various enhancements, the new Far Sync Instance and Real-Time Cascade Standby features receive special attention in the session.
Troubleshooting Complex Performance issues - Oracle SEG$ contentionTanel Poder
From Tanel Poder's Troubleshooting Complex Performance Issues series - an example of Oracle SEG$ internal segment contention due to some direct path insert activity.
Oracle Real Application Cluster (RAC) allows multiple instances of an Oracle database to run simultaneously on multiple nodes. It provides high availability, scalability, and transparent application failover. Key components include shared storage, Oracle Clusterware, cache fusion for data synchronization, and Transparent Application Failover for uninterrupted connections.
Oracle Data Guard ensures high availability, disaster recovery and data protection for enterprise data. This enable production Oracle databases to survive disasters and data corruptions. Oracle 18c and 19c offers many new features it will bring many advantages to organization.
This document provides an overview of Oracle performance tuning fundamentals. It discusses key concepts like wait events, statistics, CPU utilization, and the importance of understanding the operating system, database, and business needs. It also introduces tools for monitoring performance like AWR, ASH, and dynamic views. The goal is to establish a foundational understanding of Oracle performance concepts and monitoring techniques.
Smart monitoring how does oracle rac manage resource, state ukoug19Anil Nair
An important requirement for HA and to provide scalability is to detect problems and resolve them quickly before the user sessions get affected. Oracle RAC along with its Family of Solutions work together cohesively to detect conditions such as "Un-responsive Instances", Network issues quickly and resolve them by either redirecting the work to other instances or redundant network paths
Standard Edition High Availability (SEHA) - The Why, What & HowMarkus Michalewicz
Standard Edition High Availability (SEHA) is the latest addition to Oracle’s high availability solutions. This presentation explains the motivation for Standard Edition High Availability, how it is implemented and the way it works currently as well as what is planned for future improvements. It was first presented during Oracle Groundbreakers Yatra (OGYatra) Online in July 2020.
This document provides a checklist for preparing applications and environments for continuous availability using Oracle Database services. Key steps include:
1. Using database services and configuring connection strings for high availability.
2. Enabling Fast Application Notification (FAN) to interrupt applications during failures.
3. Using recommended practices like connection pools, tests, and draining to gracefully complete work during planned maintenance without requiring application restarts.
Oracle Drivers configuration for High AvailabilityLudovico Caldara
This document discusses various techniques for achieving high availability and transparent failover in Oracle databases, including:
- Fast Application Notification (FAN) to notify clients of service relocations and allow sessions to drain gracefully.
- Transparent Application Failover (TAF) which automates reconnects for OCI clients and allows resuming queries after a failure.
- Application Continuity (AC) which records transaction state to allow replaying transactions after a failure, requiring code changes or a connection pool.
- Transparent Application Continuity (TAC) which provides the benefits of AC without requiring code changes for supported drivers.
- Connection managers like Traffic Director which can provide session failover without client changes by managing
Oracle High Availabiltity for application developersAlexander Tokarev
Oracle High Availability in application development discusses various Oracle technologies for achieving high availability (HA) such as:
1. RAC, DataGuard/Active Data Guard, and GoldenGate or similar replication tools provide redundancy and failover capabilities at the database level.
2. Technologies like Transaction Guard (TG), Application Continuity (AC), Fast Connection Failover (FCF), and Transparent Application Failover (TAF) help applications handle failures with minimal impact through connection management and transaction replay.
3. These technologies require configuration of services, callbacks, and some code changes but can provide seamless failover for applications connecting to Oracle databases in an HA environment.
Oracle Fleet Patching and Provisioning Deep Dive Webcast SlidesLudovico Caldara
Oracle Fleet Patching and Provisioning allows users to provision, patch, and upgrade Oracle databases and Grid Infrastructure across many servers from a central location. It uses a repository of gold images and working copies to deploy consistent configurations at scale while minimizing errors. Key features include Oracle home management, provisioning, patching, upgrading, and integration with REST APIs.
The document discusses network integration considerations for Hadoop data centers. It addresses traffic types, job patterns, network attributes, architecture, availability, capacity, flexibility, management and visibility. It provides examples of buffer usage on switches and recommendations for dual 1GbE or 10GbE NIC configuration for Hadoop servers.
Solutions for bi-directional integration between Oracle RDBMS & Apache KafkaGuido Schmutz
Apache Kafka is a popular distributed streaming data platform and more and more is the architectural backbone for integrating streaming data with a Data Lake, Microservices and Stream Processing. A lot of data necessary in stream processing is stored in traditional systems backed by relational databases. This session will present different approaches for integrating relational databases with Kafka, such as Kafka Connect, Oracle GoldenGate, ORDS APIs and bridging Kafka with Oracle AQ.
Cloud Native Applications on OpenShiftSerhat Dirik
This document discusses cloud native development and DevOps using OpenShift Container Platform. It begins by defining cloud native as involving both application architecture and the development, deployment and management processes used. It then discusses how containers evolve application delivery and how container platforms are part of the DevOps tool kit. The document outlines the path to DevOps, emphasizing culture, automation and using the right platform. It also notes that DevOps and containers often go hand in hand, with many DevOps adopters using containers. The document then discusses various capabilities of OpenShift and how it supports cloud native development.
Trivadis TechEvent 2016 Oracle Client Failover - Under the Hood by Robert BialekTrivadis
1) The document discusses various techniques for Oracle client failover including operating system level settings like TCP timeouts and virtual IP addresses, as well as Oracle-specific solutions involving database services, Transparent Application Failover (TAF), Fast Application Notification (FAN), and Fast Connection Failover (FCF).
2) It provides an overview of how client failover depends on factors like the Oracle client and database versions, database configuration, network topology, and operating system.
3) The techniques addressed range from basic operating system settings to more advanced Oracle features like database services, TAF, FAN, and FCF that provide automated client failover capabilities.
The document discusses load balancing and failover techniques in Oracle Real Application Clusters (RAC) environments. It covers client-side and server-side load balancing using connection balancing, listener balancing, and service balancing. It also covers client-side and server-side failover techniques like connect time failover, Transparent Application Failover (TAF), and using services for failover. Key parameters and concepts discussed include load balancing advisory, service statistics, Fast Application Notification (FAN), and failover issues.
Services allow grouping of related sessions in an Oracle RAC environment for high availability and workload management. Key aspects of services include configuring and managing services using tools like DBCA and Enterprise Manager, using services with applications and components like the Resource Manager and Scheduler, setting performance metrics and thresholds on services, and configuring service aggregation and tracing.
Automate Oracle database patches and upgrades using Fleet Provisioning and Pa...Nelson Calero
Each new version of the Oracle database includes improvements in the upgrade and patching utilities, forcing us to update our procedures to incorporate these changes.
The Fleet Provisioning & Patching (FPP, formerly RHP) utility, together with the change in its licensing announced at OOW 2019 that makes it free in RAC, now makes it possible to centrally manage the software life cycle.
This presentation shows examples of how to use FPP and different configuration options.
The document provides an overview of Oracle Enterprise Manager 12c (OEM12c) with the following key points:
1. It introduces OEM12c and its capabilities for complete cloud lifecycle management including planning, building, testing, deploying, monitoring cloud services.
2. It discusses how to install OEM12c including checking requirements, using the bundle patch, and setting the correct hostname during installation.
3. It covers some common troubleshooting steps like resolving issues with configuration requirements and changing the hostname or IP address.
4. It provides some tips for OEM12c like creating scripts for starting, stopping and checking status, and backing up the admin server configuration.
5.
Get the most out of Oracle Data Guard - POUG versionLudovico Caldara
If you use Oracle Data Guard feature just for data protection, you are using less than half of its potential. You already pay for it, so why not getting the most out of it? In this session I will show how you can use Oracle Data Guard capabilities for common tasks such as database cloning, database migration and reporting, with the help of other features included in Oracle Database Enterprise Edition
Linux Kernel vs DPDK: HTTP Performance ShowdownScyllaDB
In this session I will use a simple HTTP benchmark to compare the performance of the Linux kernel networking stack with userspace networking powered by DPDK (kernel-bypass).
It is said that kernel-bypass technologies avoid the kernel because it is "slow", but in reality, a lot of the performance advantages that they bring just come from enforcing certain constraints.
As it turns out, many of these constraints can be enforced without bypassing the kernel. If the system is tuned just right, one can achieve performance that approaches kernel-bypass speeds, while still benefiting from the kernel's battle-tested compatibility, and rich ecosystem of tools.
Container orchestration from theory to practiceDocker, Inc.
"Join Laura Frank and Stephen Day as they explain and examine technical concepts behind container orchestration systems, like distributed consensus, object models, and node topology. These concepts build the foundation of every modern orchestration system, and each technical explanation will be illustrated using SwarmKit and Kubernetes as a real-world example. Gain a deeper understanding of how orchestration systems work in practice and walk away with more insights into your production applications."
Load Balancing MySQL with HAProxy - SlidesSeveralnines
Agenda:
* What is HAProxy?
* SQL Load balancing for MySQL
* Failure detection using MySQL health checks
* High Availability with Keepalived and Virtual IP
* Use cases: MySQL Cluster, Galera Cluster and MySQL Replication
* Alternative methods: Database drivers with inbuilt cluster support, MySQL proxy, MaxScale, ProxySQL
Dennis Wittekind, Confluent, Senior Customer Success Engineer
Perhaps you have heard of Kafka Connect and think it would be a great fit in your application's architecture, but you like to know how things work before you propose them to your team? Perhaps you know enough Connect to be dangerous, but you haven't had the time to really understand all the moving pieces? This meetup talk is for you! We'll briefly introduce Connect to the uninitiated, and then jump in to underlying concepts and considerations you should make when running Connect in production! We'll even run a live demo! What could go wrong!?
https://www.meetup.com/Saint-Louis-Kafka-meetup-group/events/272687113/
Extreme Availability using Oracle 12c Features: Your very last system shutdown?Toronto-Oracle-Users-Group
This document discusses various Oracle 12c features that can be used to achieve high availability and keep systems available even during planned and unplanned outages. It compares options for handling planned changes like hardware, OS, database upgrades including RAC, RAC One Node, and Data Guard. It also discusses disaster recovery options like storage mirroring, RAC extended clusters, Data Guard, and GoldenGate replication. New features in Oracle 12c like Far Sync instances and cascading standbys are also covered. The document provides a guide to deciphering the necessary components for high availability.
Container Orchestration from Theory to PracticeDocker, Inc.
Join Laura Frank and Stephen Day as they explain and examine technical concepts behind container orchestration systems, like distributed consensus, object models, and node topology. These concepts build the foundation of every modern orchestration system, and each technical explanation will be illustrated using Docker’s SwarmKit as a real-world example. Gain a deeper understanding of how orchestration systems like SwarmKit work in practice and walk away with more insights into your production applications.
HashiStack. To the cloud and beyond...Oleg Lobanov
This document discusses different architectural approaches for scaling a doner marketplace application. It begins by describing the monolithic architecture and its limitations in scaling. It then introduces service-oriented architecture using microservices and discusses challenges in implementing this approach, such as increased complexity and coordination between services. The document recommends using Consul for service discovery, configuration, and orchestration to help address SOA challenges. It provides examples of how Consul can be used for service registration, load balancing, and feature flags. The document also recommends Nomad for deployment automation and Terraform for infrastructure management.
Similar to Oracle Drivers configuration for High Availability, is it a developer's job? (20)
... or why Oracle still cares about CMAN and why you should do it too
The Oracle Connection Manager (CMAN) is the Swiss-army knife for database connections. It can be used for security, routing, high availability, single-point of contact... Starting with Oracle 18c, it has been extended with the new Traffic Director Mode (CMAN TDM), that allows transparent failover for applications that do not implement it natively.
In this session I will introduce briefly what CMAN is capable of, how to configure it in a high availability environment, and how the new release achieves a higher protection level.
The document discusses how REST APIs and ORDS can help DBAs adopt more agile practices. It provides examples of how DBAs can expose database operations and metadata via REST endpoints to improve communication and automation between developers and DBAs. This includes endpoints for checking database connectivity, putting applications in maintenance mode, retrieving backup status, creating/deleting restore points, refreshing schemas, and more. The document argues that REST and ORDS can help make DBAs more agile by standardizing their operations and facilitating integration with other tools and services.
How many companies can afford patching regularly their environments?
Patching and maintaining a big amount of Oracle Databases is perceived as complex by most companies. Is there a way to make patching simpler and more controlled? What are the best (and worst) practices for Oracle Home maintenance?
What are the challenges of the new release model that will bring us one new major release per year?
In this session, we will explain some ideas to improve Oracle Home management and database patching, as well as practical examples of automated environments.
Effective Oracle Home Management in the new Release Model eraLudovico Caldara
How many companies can afford patching regularly their environments?
Patching and maintaining a big amount of Oracle Databases is perceived as complex by most companies. Is there a way to make patching simpler and more controlled? What are the best (and worst) practices for Oracle Home maintenance?
What are the challenges of the new release model that will bring us one new major release per year?
In this session, we will explain some ideas to improve Oracle Home management and database patching, as well as practical examples of automated environments, live demos included!
Oracle Active Data Guard 12cR2. Is it the best option?Ludovico Caldara
If you are using Oracle Data Guard for data protection (hint: you should!), you might also want to know more about Oracle Active Data Guard and what makes it essential for even more increased availability and performance. In this session, I will give an overview of many new and old Active Data Guard features such as:
- Rolling Upgrades
- Real-time Query
- Fast Incremental Backup
- Subset Standby
- Multiple Instance Redo Apply
- Advanced topologies (Real-time Cascading Standby, Far Sync Standby, Alternate destinations)
- Automatic Block Repair
- Global Data Services
I will also explain why the ROI of Oracle Database Enterprise Edition can be higher when coupled with Oracle Active Data Guard.
How to bake a Customer Story with With Windows, NVM-e, Data Guard, ACFS Snaps...Ludovico Caldara
This document describes a new solution implemented by Trivadis to address a customer's need to clone databases faster. The previous solution took 2 hours to clone a 300GB database. The new solution leverages Oracle Data Guard, NVM-e, ACFS snapshots, bash scripts, Linux, and Windows with Perl to enable cloning a database within minutes. Key aspects of the new architecture include using ACFS snapshots to quickly copy data, placing components like GRID infrastructure and databases on high-performance NVM-e storage, and automating the cloning process with scripts. This provides faster database clones while avoiding costly additional technologies.
Get the most out of Oracle Data Guard - OOW versionLudovico Caldara
If you use Oracle Data Guard feature just for data protection, you are using less than half of its potential. You already pay for it, so why not getting the most out of it? In this session I will show how you can use Oracle Data Guard capabilities for common tasks such as database cloning, database migration and reporting, with the help of other features included in Oracle Database Enterprise Edition
ADAPTIVE FEATURES OR: HOW I LEARNED TO STOP WORRYING AND TROUBLESHOOT THE BOMBLudovico Caldara
Oracle Database 12c became available to the public back in 2013, but it took more than one year for the
Oracle customers to start upgrading of their existing databases to this new release. Many customers, in
2016, are still not in the process of migrating to 12c despite the premier support deadline for Oracle
Database 11g has passed in January 2015.
I had the chance to spend the last two years by a customer who decided to embrace the new release
and start the migration to 12c as soon as possible, in order to take the most out of the (many) new
features that this release offers. When the very first production databases have been migrated to 12c,
the users began noticing quite soon that some queries started to take much more time to complete,
some of them were actually several orders of magnitude slower than before. After small investigation, I
understood that most off those queries have been slowed down by the new “Adaptive Features” that
have been introduced in 12c for the opposite reason: increasing performance. This is what this article
is about.
Adaptive Features or: How I Learned to Stop Worrying and Troubleshoot the Bomb.Ludovico Caldara
Adaptive Dynamic Sampling, Adaptive Execution Plans, SQL Plan Directives: these new features are the new performance troublemakers when migrating databases from 11g to 12c. The optimizer uses them to seek for the perfect execution plan, but does it always succeed? This session will focus on the first steps required to quickly troubleshoot performance issues due to the adaptive features.
DMU is the new tool introduced by Oracle for database conversion to the Unicode character set. Beside introducing briefly the tool, this session will focus on a real database conversion scenario faced by a customer, the problems encountered and the solutions.
Migrating to Oracle Database 12c: 300 DBs in 300 days.Ludovico Caldara
For a customer in Switzerland, we are in process of migrating 400 databases to 12c. We have migrated 300 so far, and we have had good and bad surprises. This session will show a few scenarios that we faced during the upgrade project.
Rapid Home Provisioning is a new feature in Oracle Grid Infrastructure 12c R2 that provides a simplified way to provision and patch Oracle software and databases. It uses a centralized management server and golden images stored on ACFS to deploy pre-packaged and patched Oracle homes to client nodes. Administrators can easily create working copies of golden images, deploy databases from the working copies, and seamlessly patch databases by moving them to a working copy based on a newer patched golden image with a single command.
The document discusses using Oracle ACFS (ASM Cluster File System) as a storage option for Oracle Database datafiles. It provides steps for creating an ACFS volume within an ASM disk group, formatting it, mounting it and confirming the mount. This allows configuring an Oracle database to use the ACFS volume for datafiles, enabling high-availability shared storage across nodes.
ORACLE 12C DATA GUARD: FAR SYNC, REAL-TIME CASCADE STANDBY AND OTHER GOODIESLudovico Caldara
The new release of Oracle Database has come with many new exciting enhancements for the High Availability.
This whitepaper introduces some new Data Guard features. Among various enhancements, special attention will be given to
the new Far Sync Instance and the Real-Time Cascade Standby.
Oracle RAC 12c and Policy-Managed Databases, a Technical OverviewLudovico Caldara
Oracle RAC Policy-Managed Database (PMD) is a powerful but so far rarely used feature introduced in Oracle Database 11g
Release 2 to automate the instance administration in a dynamic, multi-node cluster.
The aim of this presentation is to review how PMD works, how to implement and administer it successfully, and how to
benefit from this technology compared to the traditional administrator-managed deployment. During the session, the new
features of the 12c Grid Infrastructure related to PMD are highlighted.
Oracle RAC, Data Guard, and Pluggable Databases: When MAA Meets Multitenant (...Ludovico Caldara
This document discusses integrating Oracle Real Application Clusters (RAC) and multitenant architecture with Oracle Data Guard. It explains that with RAC and multitenant, the container database itself is a RAC database, allowing pluggable databases to remain available even if an instance crashes. Services are used to control which pluggable databases are mounted and accessed on each RAC instance. While multitenant architecture provides benefits like simplified administration, it also means that in a Data Guard configuration, the entire container database must have the same role rather than individual pluggable databases.
Boost your Oracle RAC manageability with Policy-Managed DatabasesLudovico Caldara
Oracle RAC Policy-Managed Database (PMD) is a powerful but so far rarely used feature introduced in Oracle Database 11g
Release 2 to automate the instance administration in a dynamic, multi-node cluster.
The aim of this presentation is to review how PMD works, how to implement and administer it successfully, and how to
benefit from this technology compared to the traditional administrator-managed deployment.
These slides are from the session I've done at Collaborate14, but re-branded with my company's template.
RACAttack 12c Advanced Lab: Server Pools and Policy-managed databasesLudovico Caldara
RACAttack 12c pre-conference workshop at IOUG Collaborate 14 will have a few advanced labs for people already confident with a simple RAC installation. This advanced lab handbook introduces server pools and policy managed databases to your Oracle RAC 12c implementation!
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
Generating privacy-protected synthetic data using Secludy and MilvusZilliz
During this demo, the founders of Secludy will demonstrate how their system utilizes Milvus to store and manipulate embeddings for generating privacy-protected synthetic data. Their approach not only maintains the confidentiality of the original data but also enhances the utility and scalability of LLMs under privacy constraints. Attendees, including machine learning engineers, data scientists, and data managers, will witness first-hand how Secludy's integration with Milvus empowers organizations to harness the power of LLMs securely and efficiently.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Infrastructure Challenges in Scaling RAG with Custom AI modelsZilliz
Building Retrieval-Augmented Generation (RAG) systems with open-source and custom AI models is a complex task. This talk explores the challenges in productionizing RAG systems, including retrieval performance, response synthesis, and evaluation. We’ll discuss how to leverage open-source models like text embeddings, language models, and custom fine-tuned models to enhance RAG performance. Additionally, we’ll cover how BentoML can help orchestrate and scale these AI components efficiently, ensuring seamless deployment and management of RAG systems in the cloud.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
Building Production Ready Search Pipelines with Spark and MilvusZilliz
Spark is the widely used ETL tool for processing, indexing and ingesting data to serving stack for search. Milvus is the production-ready open-source vector database. In this talk we will show how to use Spark to process unstructured data to extract vector representations, and push the vectors to Milvus vector database for search serving.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Taking AI to the Next Level in Manufacturing.pdfssuserfac0301
Read Taking AI to the Next Level in Manufacturing to gain insights on AI adoption in the manufacturing industry, such as:
1. How quickly AI is being implemented in manufacturing.
2. Which barriers stand in the way of AI adoption.
3. How data quality and governance form the backbone of AI.
4. Organizational processes and structures that may inhibit effective AI adoption.
6. Ideas and approaches to help build your organization's AI strategy.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
Have you ever been confused by the myriad of choices offered by AWS for hosting a website or an API?
Lambda, Elastic Beanstalk, Lightsail, Amplify, S3 (and more!) can each host websites + APIs. But which one should we choose?
Which one is cheapest? Which one is fastest? Which one will scale to meet our needs?
Join me in this session as we dive into each AWS hosting service to determine which one is best for your scenario and explain why!
OpenID AuthZEN Interop Read Out - AuthorizationDavid Brossard
During Identiverse 2024 and EIC 2024, members of the OpenID AuthZEN WG got together and demoed their authorization endpoints conforming to the AuthZEN API
2. Ludovico Caldara
• Principal consultant @ Trivadis Lausanne
• Two decades of DBA experience (Not only Oracle)
• ITOUG co-founder
• Active blogger and speaker
• Italian living in Switzerland
• Oracle ACE Director
@ludodba ludovicocaldara.net
12. Disclaimer
●Some oversimplifications
●A very complex topic
●Requires DBA and developer skills
●Assume you know some basic concepts
– High availability and failover concepts
– Connections to database
– Basic NET configurations
(SCAN, Listener, Services, TNS)
●Assume you have recent DB and client (>=12.2)
13. "Failure happens all the time.
It happens every day in practice.
What makes you better
is how you react to it."
― Mia Hamm
14. Factors that influence HA
Too many!
●Network topology
●OS type and configuration
●DB version and service configuration
●Client version and type
●Application design / exception handling
15. Factors that influence HA
Too many!
●Network topology
●OS type and configuration
●DB version and service configuration
●Client version and type
●Application design / exception handling
Our mission today
16. Factors that influence HA
Too many!
●Network topology
●OS type and configuration
●DB version and service configuration
●Client version and type
●Application design / exception handling
Good white-paper:
Oracle Client Failover - Under the Hood
By Robert Bialek (Trivadis)
18. Database Services
Virtual name for a database endpoint
HR_SVC HR_SVC
CRM_SVC REP_SVC
Registered with
the listener
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
21. Database Services
The DBA can create services with:
● srvctl add service
● dbms_service.create_service() PL/SQL procedure.
Both methods have parameters for HA
●Hint: HA at service level is superfluous if the client is not configured properly
Did you know? Parameter service_names is deprecated!
32. Planned Maintenance
●Service relocation: new sessions go to instance 2
●Problem: what about existing sessions?
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
33. Planned Maintenance
●Service relocation: new sessions go to instance 2
●Problem: what about existing sessions?
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
34. How to drain sessions
●You need to know that the service is being relocated
●Use Fast Application Notification (FAN)!
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
ONS
35. How to drain sessions
●You need to know that the service is being relocated
●Use Fast Application Notification (FAN)!
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
ONS
register
connect
36. How to drain sessions
●You need to know that the service is being relocated
●Use Fast Application Notification (FAN)!
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
ONS
stop
notification!
CRM_SVCstart
37. How to drain sessions
●You need to know that the service is being relocated
●Use Fast Application Notification (FAN)!
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
ONS
CRM_SVC
disconnect when the transaction
is over and reconnect
ONS
38. FAN at database side
●ONS is there by default with Grid Infrastructure
●Default remote port 6200
●18c: in-band notifications
●FAN/enabled Service
srvctl add service –db orcl –service hr_svc
-rlbgoal [SERVICE_TIME | THROUGHPUT] # for load balancing advisory
-notification TRUE # for OCI/ODP.net connections
srvctl relocate service –db orcl –service hr_svc
-oldinst orcl1 -newinst orcl2
-drain_timeout 10 # let some time for sessions to drain
# switch –force not specified, sessions are not killed
39. FAN at client side
import oracle.simplefan.FanEventListener;
import oracle.simplefan.FanManager;
import oracle.simplefan.FanSubscription;
import oracle.simplefan.ServiceDownEvent;
[...]
FanManager fanMngr = FanManager.getInstance();
onsProps.setProperty("onsNodes", “node1:6200,node2:6200");
fanMngr.configure(onsProps);
FanSubscription sub = fanMngr.subscribe(props);
sub.addListener(new FanEventListener() {
public void handleEvent(ServiceDownEvent event) {
System.out.println("Service down event");
System.out.println(event.getReason());
// handle the event
}
});
40. FAN at client side
import oracle.simplefan.FanEventListener;
import oracle.simplefan.FanManager;
import oracle.simplefan.FanSubscription;
import oracle.simplefan.ServiceDownEvent;
[...]
FanManager fanMngr = FanManager.getInstance();
onsProps.setProperty("onsNodes", “node1:6200,node2:6200");
fanMngr.configure(onsProps);
FanSubscription sub = fanMngr.subscribe(props);
sub.addListener(new FanEventListener() {
public void handleEvent(ServiceDownEvent event) {
System.out.println("Service down event");
System.out.println(event.getReason());
// handle the event
}
});
41. Fast Connection Failover (FCF)
●Pre-configured FAN integration
●Works with connection pools
●The application must be pool aware
– (borrow/release)
●The connection pool leverages FAN events to:
– Remove quickly dead connections on a DOWN event
– (opt.) Redistribute the load on a UP event
42. Fast Connection Failover (FCF)
●UCP (Universal Connection Pool, ucp.jar) and WebLogic Active GridLink
handle FAN out of the box.
No code changes! Just enable FastConnectionFailoverEnabled.
●Third-party connection pools can implement FCF
– If JDBC driver version >= 12.2
– simplefan.jar and ons.jar in CLASSPATH
– Connection validation options are set in pool properties
– Connection pool can plug javax.sql.ConnectionPoolDataSource
– Connection pool checks connections at borrow/release
43. Fast Connection Failover (FCF)
●UCP (Universal Connection Pool, ucp.jar) and WebLogic Active GridLink
handle FAN out of the box.
No code changes! Just enable FastConnectionFailoverEnabled.
●Third-party connection pools can implement FCF
– If JDBC driver version >= 12.2
– simplefan.jar and ons.jar in CLASSPATH
– Connection validation options are set in pool properties
– Connection pool can plug javax.sql.ConnectionPoolDataSource
– Connection pool checks connections at borrow/release
44. Fast Connection Failover (FCF)
●OCI Connection Pool handles FAN events as well
– Need to configure oraaccess.xml properly in TNS_ADMIN
– Python’s cx_oracle, PHP oci8, etc. have native options
●ODP.Net: just set "HA events = true;pooling=true"
45. Session Draining in 18c
●Database invalidates connection at:
–Standard connection tests for connection validity
(conn.isValid(), CheckConStatus, OCI_ATTR_SERVER_STATUS)
–Custom SQL tests for validity (DBA_CONNECTION_TESTS)
– SELECT 1 FROM DUAL
– SELECT COUNT(*) FROM DUAL
– SELECT 1
– BEGIN NULL;END
– Add new:
execute dbms_app_cont_admin.add_sql_connection_test(
'select * from dual', service_name);
46. “Have we implemented FAN/FCF correctly?”
●TEST, TEST, TEST
●Relocate services as part of your CI/CD
●Application ready for planned maintenance
=> happy DBA, Dev, DevOps
47. Why draining?
Best solution for hiding planned maintenance
No draining
Killing persisting sessions
Unplanned from application perspective
49. Unplanned Maintenance (failover)
●CRM sessions exist on instance 1
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
50. Unplanned Maintenance (failover)
●CRM sessions exist on instance 1
●The instance crashes. What about running sessions/transactions?
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
51. Unplanned Maintenance (failover)
●CRM sessions exist on instance 1
●The instance crashes. What about running sessions/transactions?
●(Any maintenance that terminate sessions non-transactional)
CRM_SVC
Real Applications Cluster / Data GuardReal Applications Cluster / Data Guard
52. Transparent Application Failover (TAF)
●For OCI drivers only
●Automates reconnect
●Allows resumable queries (session state restored in 12.2)
●Transactions and PL/SQL calls not resumed (rollback)
53. Transparent Application Failover (TAF)
●For OCI drivers only
●Automates reconnect
●Allows resumable queries (session state restored in 12.2)
●Transactions and PL/SQL calls not resumed (rollback)
Oracle Net
Fetched
54. Transparent Application Failover (TAF)
●For OCI drivers only
●Automates reconnect
●Allows resumable queries (session state restored in 12.2)
●Transactions and PL/SQL calls not resumed (rollback)
Oracle Net
Fetched
Lost
55. Transparent Application Failover (TAF)
●For OCI drivers only
●Automates reconnect
●Allows resumable queries (session state restored in 12.2)
●Transactions and PL/SQL calls not resumed (rollback)
Oracle Net
Fetched
Lost
Discarded
56. Transparent Application Failover (TAF)
●For OCI drivers only
●Automates reconnect
●Allows resumable queries (session state restored in 12.2)
●Transactions and PL/SQL calls not resumed (rollback)
Oracle Net
Fetched
Lost Fetched
Discarded
58. Fast Connection Failover and FAN
●Like for planned maintenance, but…
– Connection pool recycles dead connections
– Application must handle all the exceptions
●FAN avoids TCP timeouts!
59. Application Continuity (AC)
●Server-side Transaction Guard (included in EE)
–Transaction state is recorded upon request
●Client-side Replay Driver
–Keeps journal of transactions
–Replays transactions upon reconnect
JDBC thin 12.1, OCI 12.2
60. Application Continuity (AC)
• AC with UCP: no code change
• AC without connection pool: code change
PoolDataSource pds = PoolDataSourceFactory.getPoolDataSource();
pds.setConnectionFactoryClassName("oracle.jdbc.replay.OracleDataSourceImpl");
...
conn = pds.getConnection(); // Implicit database request begin
// calls protected by Application Continuity
conn.close(); // Implicit database request end
OracleDataSourceImpl ods = new OracleDataSourceImpl();
conn = ods.getConnection();
...
((ReplayableConnection)conn).beginRequest(); // Explicit database request begin
// calls protected by Application Continuity
((ReplayableConnection)conn).endRequest(); // Explicit database request end
61. Application Continuity (AC)
srvctl add service –db orcl –service hr
-failovertype TRANSACTION # enable Application Continuity
-commit_outcome TRUE # enable Transaction Guard
-failover_restore LEVEL1 # restore session state before replay
-retention 86400 # commit outcome retained 1 day
-replay_init_time 900 # replay not be initiated after 900 seconds
-notification true
Service definition:
Special configuration to retain mutable values at replay:
GRANT KEEP SEQUENCE ON <SEQUENCE> TO USER <USER>;
GRANT KEEP DATE TIME TO <USER>;
GRANT KEEP SYSGUID TO <USER>;
62. Transparent Application Continuity (TAC)
●“New” in 18c for JDBC thin, 19c for OCI
●Records session and transaction state server-side
●No application change
●Replayable transactions are replayed
●Non-replayable transactions raise exception
●Good driver coverage but check the doc!
●Side effects are never replayed
63. Transparent Application Continuity (TAC)
srvctl add service –db orcl –service hr
-failover_restore AUTO # enable Transparent Application Continuity
-failovertype AUTO # enable Transparent Application Continuity
-commit_outcome TRUE # enable Transaction Guard
-retention 86400 # commit outcome retained 1 day
-replay_init_time 900 # replay not be initiated after 900 seconds
-notification true
Service definition:
Special configuration to retain mutable values at replay:
GRANT KEEP SEQUENCE ON <SEQUENCE> TO USER <USER>;
GRANT KEEP DATE TIME TO <USER>;
GRANT KEEP SYSGUID TO <USER>;
64. Still not clear?
●Fast Application Notification to drain sessions
●Application Continuity for full control
(code change)
●Transparent Application Continuity for good HA
(no code change)
67. Session Failover with TDM
CLIENT
cman
CDBA
PDB1
• Client connects to cman:1521/pdb1
CDBA
68. Session Failover with TDM
CLIENT
cman
CDBA
PDB1
• Client connects to cman:1521/pdb1
• Cman opens a connection to pdb1
CDBA
69. Session Failover with TDM
CLIENT
cman
CDBA
PDB1
• Client connects to cman:1521/pdb1
• Cman opens a connection to pdb1
• Upon PDB/service relocate, cman detects
the stop and closes the connections at
transaction boundaries
CDBA
70. Session Failover with TDM
CLIENT
cman
CDBA
• Client connects to cman:1521/pdb1
• Cman opens a connection to pdb1
• Upon PDB/service relocate, cman detects
the stop and closes the connections at
transaction boundaries
• The next request is executed on the
surviving instance
CDBA
PDB1
71. Session Failover with TDM
CLIENT
cman
CDBA
• Client connects to cman:1521/pdb1
• Cman opens a connection to pdb1
• Upon PDB/service relocate, cman detects
the stop and closes the connections at
transaction boundaries
• The next request is executed on the
surviving instance
• The connection client-cman is intact, the
client does not experience a
disconnection
CDBA
PDB1