stringtranslate.com

Oracle RAC

En informática de bases de datos , Oracle Real Application Clusters ( RAC ), una opción [1] para el software Oracle Database producido por Oracle Corporation e introducido en 2001 con Oracle9i , proporciona software para la agrupación en clústeres y alta disponibilidad en entornos de bases de datos Oracle . Oracle Corporation incluye RAC con Enterprise Edition, siempre que los nodos estén agrupados mediante Oracle Clusterware . [2]

Funcionalidad

Oracle RAC permite que varias computadoras ejecuten el software Oracle RDBMS simultáneamente mientras acceden a una única base de datos , lo que proporciona agrupamiento .

En una base de datos Oracle que no es RAC, una única instancia accede a una única base de datos. La base de datos consta de una colección de archivos de datos , archivos de control y registros de rehacer ubicados en el disco . La instancia comprende la colección de memoria relacionada con Oracle y procesos en segundo plano que se ejecutan en un sistema informático.

En un entorno Oracle RAC, dos o más instancias acceden simultáneamente a una única base de datos. Esto permite que una aplicación o un usuario se conecten a cualquiera de las computadoras y tengan acceso a un único conjunto de datos coordinado. Las instancias están conectadas entre sí a través de una "interconexión" que permite que todas las instancias estén sincronizadas para acceder a los datos.

Objetivos

El objetivo principal de Oracle RAC es implementar una base de datos agrupada para brindar rendimiento, escalabilidad , resiliencia y alta disponibilidad de datos a nivel de instancia.

Implementación

Oracle RAC depende del componente de infraestructura Oracle Clusterware para coordinar varios servidores y compartir el almacenamiento de datos. [3] La tecnología FAN (Fast Application Notification) detecta estados inactivos. [4] Los administradores de RAC pueden usar la srvctlherramienta para administrar las configuraciones de RAC, [5]

Fusión de caché

Antes de Oracle 9, las bases de datos Oracle agrupadas en red utilizaban un dispositivo de almacenamiento como medio de transferencia de datos (lo que significa que un nodo escribía un bloque de datos en el disco y otro nodo leía esos datos desde el mismo disco), lo que tenía la desventaja inherente de un rendimiento mediocre. Oracle 9i solucionó este problema: RAC utiliza una conexión de red dedicada para las comunicaciones internas del clúster.

Dado que todas las computadoras/instancias de un RAC acceden a la misma base de datos, el sistema general debe garantizar la coordinación de los cambios de datos en diferentes computadoras de modo que, siempre que una computadora consulte datos, reciba la versión actual, incluso si otra computadora modificó recientemente esos datos. Oracle RAC se refiere a esta funcionalidad como Cache Fusion . Cache Fusion implica la capacidad de Oracle RAC de "fusionar" los datos en memoria almacenados en caché físicamente por separado en cada computadora en una única caché global.

Redes

El servicio de nombres de cuadrícula de Oracle (GNS) maneja la resolución de nombres en el registro del clúster. [6]

Diagnóstico

El analizador de archivos de seguimiento (TFA) ayuda a recopilar datos de diagnóstico de RAC. [7]

Versiones

Evolución

En comparación con la base de datos Oracle de instancia única, Oracle RAC agrega complejidad adicional. Si bien la automatización de bases de datos tiene sentido para bases de datos de instancia única, se vuelve aún más necesaria para bases de datos agrupadas debido a su mayor complejidad.

Oracle Real Application Clusters (RAC), introducido con Oracle 9i en 2001, reemplaza la opción de base de datos Oracle Parallel Server (OPS). Mientras que Oracle9i requería un clusterware externo (conocido como clusterware de proveedor como TruCluster Veritas Cluster Server o Sun Cluster ) para la mayoría de las versiones de Unix (excepto para Linux y Windows, donde Oracle proporcionaba clusterware gratuito llamado Cluster Ready Services o CRS ), a partir de Oracle 10g, el producto clusterware de Oracle estaba disponible para todos los sistemas operativos. Con el lanzamiento de Oracle Database 10g Release 2 (10.2), Cluster Ready Services pasó a denominarse Oracle Clusterware. Cuando se utiliza Oracle 10g o superior, Oracle Clusterware es el único clusterware que se necesita para la mayoría de las plataformas en las que funciona Oracle RAC (excepto para Tru cluster, en cuyo caso se necesita clusterware de proveedor). Aún se puede utilizar clusterware de otros proveedores, si el clusterware está certificado para Oracle RAC.

En RAC, la transacción de escritura debe tomar posesión del área relevante de la base de datos: por lo general, esto implica una solicitud a través de la interconexión del clúster (red IP local) para transferir la propiedad del bloque de datos de otro nodo al que desea realizar la escritura. Esto lleva un tiempo relativamente largo (desde unos pocos hasta decenas de milisegundos ) en comparación con un solo nodo de base de datos que utiliza operaciones en memoria. Para muchos tipos de aplicaciones, el tiempo dedicado a coordinar el acceso a bloques entre sistemas es bajo en relación con las muchas operaciones en el sistema, y ​​RAC se escalará de manera comparable a un solo sistema. [ cita requerida ] Además, las bases de datos transaccionales de lectura alta (como las aplicaciones de almacenamiento de datos ) funcionan muy bien con RAC, ya que no existe la necesidad de transferencia de propiedad. (Oracle 11g ha realizado muchas mejoras en esta área y funciona mucho mejor que las versiones anteriores para cargas de trabajo de solo lectura. [ cita requerida ] )

La sobrecarga en el control de recursos (o transferencia de propiedad) es mínima para menos de tres nodos, ya que la solicitud de cualquier recurso en el clúster se puede obtener en un máximo de tres saltos (propietario-maestro-solicitante). [ cita requerida ] Esto hace que Oracle RAC sea escalable horizontalmente con muchos nodos. Los proveedores de aplicaciones (como SAP ) utilizan Oracle RAC para demostrar la escalabilidad de su aplicación. La mayoría de los puntos de referencia OLTP más importantes se encuentran en Oracle RAC. Oracle RAC 11g admite hasta 100 nodos. [10]

Para algunas aplicaciones [¿ cuáles? ] , RAC puede requerir una partición cuidadosa de la aplicación para mejorar el rendimiento . Una aplicación que escala linealmente en una máquina SMP puede escalar linealmente con RAC. Sin embargo, si la aplicación no puede escalar linealmente en SMP, no escalará cuando se la migre a RAC. En resumen, la escalabilidad de la aplicación se basa en qué tan bien se escala la aplicación en una sola instancia .

Contexto competitivo

Las arquitecturas de todo y nada compartido tienen ventajas unas sobre otras. Los proveedores de DBMS y los analistas del sector debaten regularmente sobre el tema; por ejemplo, Microsoft promociona una comparación de su SQL Server 2005 con Oracle 10g RAC. [11]

Oracle Corporation ofreció un RDBMS de arquitectura Shared Nothing con la llegada de IBM SP y SP2 con el lanzamiento de las ediciones MPP 7.x, en las que se utilizaron unidades virtuales compartidas (VSD) para crear una implementación de Shared Everything en una arquitectura Shared Nothing.

Todo compartido

Las arquitecturas de uso compartido total comparten tanto los datos en disco como los datos en memoria entre los nodos del clúster, a diferencia de las arquitecturas de uso compartido total que no comparten ninguno de ellos.

Algunas bases de datos disponibles comercialmente ofrecen una arquitectura de "todo compartido". IBM Db2 para z/OS (el sistema operativo para mainframe de IBM ) ha proporcionado una opción de uso compartido de datos de alto rendimiento desde mediados de los años 90, cuando IBM lanzó su infraestructura de agrupación de hardware y software para mainframe. A fines de 2009, IBM anunció DB2 pureScale, un esquema de agrupación de discos compartidos para DB2 9.8 en AIX que imita la implementación de sysplex paralelo detrás del uso compartido de datos de Db2 en el mainframe.

En febrero de 2008, Sybase lanzó su Adaptive Server Enterprise , Cluster Edition. Se asemeja a Oracle RAC en su diseño de uso compartido. [12]

Aunque técnicamente no se comparte todo, Sybase también proporciona una base de datos relacional basada en columnas enfocada en aplicaciones analíticas y de almacenamiento de datos llamada Sybase IQ , que puede configurarse para ejecutarse en un modo de disco compartido.

Las bases de datos nativas de la nube, como Amazon Aurora y POLARDB de Alibaba Cloud , se implementan con una arquitectura de "todo compartido" sobre un sistema de archivos distribuido basado en la nube. [13] [14]

Nada compartido

Las arquitecturas que no comparten nada no comparten ni los datos del disco ni los datos de la memoria entre los nodos del clúster, a diferencia de las arquitecturas que comparten todo, que comparten ambos.

Los productos competitivos que ofrecen arquitecturas sin recursos compartidos incluyen:

Véase también

Referencias

  1. ^ Opciones y paquetes
  2. ^ Ediciones de bases de datos Oracle
  3. ^ Introducción a Oracle Real Application Clusters
  4. ^ Mensah, Kuassi (2006). Programación de bases de datos Oracle con Java y servicios web. Digital Press. pág. 400; 1087. ISBN 978-1-55558-329-3. Recuperado el 11 de septiembre de 2011. El mecanismo de Notificación Rápida de Aplicaciones (FAN) [...] permite la detección rápida de " Instance DOWN" o " Node DOWNeventos [...]
  5. ^ Stoever, Edward (2006). Clústeres Oracle RAC personales: cree computación en red Oracle 10g en casa. Serie Oracle In-focus. Rampant TechPress. pág. 119. ISBN 9780976157380. Recuperado el 30 de mayo de 2013. La configuración de una base de datos RAC requiere herramientas adicionales para administrar el software y sus instancias. Una de esas herramientas es srvctl , que se utiliza para iniciar, apagar y verificar el estado de una base de datos RAC.
  6. ^ Prusinski, Ben; Hussain, Syed Jaffer (23 de mayo de 2011). Oracle 11g R1/R2 Real Application Clusters Essentials. Birmingham: Packt Publishing Ltd (publicado en 2011). ISBN 9781849682671. Recuperado el 23 de marzo de 2018. Oracle 11g R2 RAC introdujo varios nuevos procesos de clusterware en segundo plano. [...] Oracle Grid Naming Service (GNS) funciona como una puerta de enlace entre el mDNS del clúster y los servidores DNS externos. El proceso GNS realiza la resolución de nombres dentro de la arquitectura de registro de Oracle Cluster para Oracle 11g RAC.
  7. ^ Farooq, Tariq; Kim, Charles; Vengurlekar, Nitin; Avantsa, Sridhar; Harrison, Guy; Hussain, Syed Jaffar (12 de junio de 2015). "Solución de problemas y ajuste de RAC". Manual del experto de Oracle Exadata. Addison-Wesley Professional (publicado en 2015). ISBN 9780133780987. Recuperado el 29 de junio de 2017. Lanzada con la versión v11.2.0.4, la utilidad Trace File Analyzer (TFA) Collector es la nueva utilidad integral que simplifica la recopilación de información de diagnóstico de RAC.
  8. ^ "Oracle 12c RAC: Nuevas características". Buscar documentos técnicos . 2015-07-24 . Consultado el 2015-07-24 . Entre las más de 500 nuevas características lanzadas con Oracle 12c Database, varias características muy útiles son específicas de Oracle RAC. Vea las principales nuevas características de 12c RAC, incluidas Oracle ASM Flex, ASM Disk Scrubbing, punto de control de resincronización de disco más rápido, límite de potencia de resincronización más alto y más.
  9. ^ "Oracle Real Application Clusters One Node: Mejor virtualización para bases de datos". Buscar documentos técnicos . 2009-12-09 . Consultado el 2010-04-19 . Oracle RAC One Node proporciona: . Servicios de base de datos de instancia única siempre activos . Mejor consolidación para servidores de base de datos . Virtualización de servidor mejorada . [,,,] si surge la necesidad, actualice a una base de datos Oracle RAC multinodo completa sin tiempo de inactividad ni interrupciones. [...] Oracle Real Application Clusters (RAC) One Node es una nueva opción para Oracle Database 11g Release 2 Enterprise Edition. Proporciona alta disponibilidad mejorada para bases de datos de instancia única,
  10. ^ "agrupamiento" (PDF) . Oracle.com . Consultado el 7 de noviembre de 2012 .
  11. ^ Thomas, Bryan (30 de mayo de 2006). "Soluciones para aplicaciones de bases de datos altamente escalables: un análisis de arquitecturas y tecnologías" (PDF) . Microsoft . Consultado el 9 de septiembre de 2007 .
  12. ^ "Sybase.com". Sybase.com . Consultado el 7 de noviembre de 2012 .
  13. ^ "Almacenamiento y confiabilidad de Amazon Aurora - Amazon Aurora".
  14. ^ "PolarFS: un sistema de archivos distribuido resistente a fallos y con latencia ultrabaja para bases de datos en la nube con almacenamiento compartido". BIBLIOTECA DIGITAL ACM .
  15. ^ "Oracle compra un desarrollador finlandés de código abierto". InfoWorld. 7 de octubre de 2005."Oracle compra SUN; MySQL se bifurca". Linux Magazine. 20 de abril de 2009.
  16. ^ "Balanceo de carga de bases de datos | Alta disponibilidad de MySQL | Scalebase". www.scalebase.com . Archivado desde el original el 29 de junio de 2012.

Enlaces externos