Características de Oracle Database en Autonomous AI Database en infraestructura de Exadata dedicada

En este artículo se proporciona información sobre el uso de las funciones y opciones de Oracle AI Database en Autonomous AI Database on Dedicated Exadata Infrastructure.

Para obtener información equivalente en despliegues de Autonomous AI Database Serverless, consulte Autonomous AI Database para usuarios de bases de datos con experiencia.

Puede aprovisionar una base de datos de IA autónoma con Oracle Database 19c u Oracle AI Database 26ai, según la versión de software de la base de datos de su base de datos de contenedores autónoma (ACD) principal. Por ejemplo, para crear una base de datos de IA autónoma con Oracle AI Database 26ai, debe seleccionar una base de datos autónoma cuya versión de software de base de datos Oracle sea 26ai. Para obtener una lista completa de las funciones de base de datos soportadas por cada una de estas versiones de base de datos, consulte Oracle Database 26ai u Oracle Database 19c en Oracle Help Center.

Autonomous AI Database configura y optimiza su base de datos. No es necesario realizar operaciones de administración para configurar la base de datos. Los comandos SQL utilizados únicamente para la administración de bases de datos no están disponibles en este servicio. Del mismo modo, tampoco están disponibles otras interfaces y utilidades administrativas, como RMAN.

Analicemos cómo se manejan algunas de las funciones clave de la base de datos de Oracle en una base de datos de IA autónoma:

  • Datos y tablespaces temporales: los datos por defecto y los tablespaces temporales de la base de datos se configuran automáticamente. El nombre del tablespace de datos por defecto es DATA.
  • Juego de caracteres de la base de datos: el juego de caracteres de la base de datos es Unicode AL32UTF8.
  • Cifrado de datos almacenados: los datos almacenados se cifran mediante el algoritmo AES256 (clave de cifrado Advanced Encryption Standard de 256 bits).

    Note:

    Las base de datos de IA autónoma creadas antes de septiembre de 2021 utilizan el algoritmo AES128 por defecto.
    Si es necesario, puede cambiar el algoritmo de cifrado de un tablespace mediante el comando ALTER TABLESPACE. Por ejemplo, para cambiar el algoritmo de cifrado del tablespace DATA a AES256, introduzca:
    ALTER TABLESPACE data ENCRYPTION ONLINE USING 'AES256' REKEY;
  • Com compresión de datos: para las cargas de Trabajo de Autonomous AI Transaction Processing, la compresión no está activada por defecto. Para las cargas de trabajo deAutonomous AI Lakehouse, la compresión de columnas híbrida está activada por defecto para todas las tablas.

    Puede activar o desactivar la compresión o especificar métodos de compresión diferentes para las tablas mediante la cláusula table_compression en el comando CREATE TABLE o ALTER TABLE.

  • Acceso a la base de datos: no tiene acceso directo al nodo de base de datos ni al sistema de archivos local, ni a los tablespaces SYSTEM o SYSAUX.
  • Ejecución en Paralelo: por defecto, la ejecución En paralelo (paralelismo dentro de una sentencia SQL) no está activada para las cargas de trabajo deAutonomous AI Transaction Processing. Sin embargo, para las cargas de trabajo deAutonomous AI Lakehouse, la ejecución en paralelo está activada por defecto y el grado de paralelismo para las sentencias SQL se define según el número de CPU del sistema y el servicio del sistema de bases de datos que utilice al conectarse a la base de Datos.
    • Puede modificar el grado de paralelismo de una tabla o de un índice mediante parallel_clause o mediante una indicación. Por ejemplo, puede desactivar DML paralelo en la sesión mediante el siguiente comando SQL:
      ALTER SESSION DISABLE PARALLEL DML;

      Consulte Oracle Database 19c VLDB and Partitioning Guide o Oracle Database 26ai VLDB and Partitioning Guide para más información sobre las operaciones DML paralelas.

    • Si crea un índice manualmente y especifica parallel_clause, el atributo paralelo permanece después de crear el índice. En este caso, las sentencias SQL se pueden ejecutar en paralelo desconocidas para el usuario final. Cambie el valor parallel_clause a NOPARALLEL o defina el atributo PARALLEL en 1 para especificar la ejecución en serie:
       ALTER INDEX index_name NOPARALLEL;

      o bien,

       ALTER INDEX index_name PARALLEL 1; 

Funciones de la última base de datos de IA autónoma

La base de datos de IA autónoma incluye las funciones más recientes de Oracle Database.

La base de datos de IA autónoma incluye funciones que:

  • Automatizan las tareas de gestión de índices, como la creación, la reconstrucción y el borrado de índices en función de los cambios en la carga de trabajo de la aplicación. Consulte Gestión de índices automáticos en la Guía del administrador de Oracle Database 19c o la Guía del administrador de Oracle Database 26ai para más información.

  • Recopile estadísticas en tiempo real de forma automática mientras se ejecuta una carga de trabajo DML convencional. Debido a que las estadísticas pueden quedar desactualizadas entre los trabajos de DBMS_STATS, la recopilación de estadísticas en línea para DML convencional ayuda al optimizador a generar planes más óptimos. Las estadísticas en línea tienen como objetivo reducir la posibilidad de que el optimizador esté mal dirigido por estadísticas desactualizadas. Puede gestionar y acceder a las estadísticas para DML convencional mediante paquetes PL/SQL, vistas del diccionario de datos e indicaciones. Consulte Estadísticas en tiempo Real en Oracle Database 19c SQL Tuning Guide o Oracle Database 26ai SQL Tuning Guide para más información.

  • Recopile estadísticas de forma automática con más frecuencia. La recopilación automática de estadísticas del optimizador de alta frecuencia complementa el trabajo de recopilación de estadísticas estándar. Por defecto, la recopilación se produce cada 15 minutos, lo que significa que las estadísticas tienen menos tiempo para quedarse desactualizadas. Consulte Configuring High-Frequency Automatic Optimizer Statistics Collection en Oracle Database 19c SQL Tuning Guide o Oracle Database 26ai SQL Tuning Guide para más información.

  • Planes de ejecución de cuarentena para sentencias SQL terminadas por el gestor de recursos por consumir demasiados recursos del sistema en una base de datos Oracle. Puede configurar los valores de cuarentena para una sentencia SQL especificando límites en su consumo de recursos mediante los procedimientos del paquete DBMS_SQLQ. Cuando la sentencia SQL cruza cualquiera de estos límites de consumo de recursos, se termina y el plan de ejecución se pone en cuarentena. De esta forma, la base de datos impide que las sentencias SQL que requieren muchos recursos se ejecuten de forma repetida. Consulte la sección sobre la cuarentena de planes de ejecución de sentencias SQL que consumen excesivos recursos del Sistema en Oracle Database 19c Administrator's Guide o Oracle Database 26ai Administrator's Guide para ver más información.

  • Optimice las inserciones de una sola fila de alta frecuencia para aplicaciones, como las aplicaciones de Internet de las cosas (IoT). Consulte Activación del flujo de datos con memoria optimizada en la Guía de ajuste de rendimiento de Oracle Database 19c o la Guía de ajuste de rendimiento de Oracle Database 26ai

Usuario ADMIN y usuario SYS

En Oracle Autonomous AI Database on Dedicated Exadata Infrastructure, el usuario administrativo predefinido es ADMIN. En Oracle Database, el usuario administrativo predefinido es SYS. Aunque estos dos usuarios tienen el mismo propósito en sus respectivas bases de datos, no son iguales y no tienen el mismo juego de privilegios.

Debido a que Oracle Autonomous AI Database on Dedicated Exadata Infrastructure impone controles de seguridad y realiza tareas administrativas de base de Datos, el usuario ADMIN no tiene tantos privilegios como el usuario SYS. A continuación se incluye una lista de los privilegios que el usuario ADMIN no tiene, pero que sí tiene el usuario SYS de una Oracle Database:

ALTER LOCKDOWN PROFILE
BACKUP ANY TABLE
BECOME USER
CREATE ANY JOB
CREATE ANY LIBRARY
CREATE LIBRARY
CREATE LOCKDOWN PROFILE
CREATE PLUGGABLE DATABASE
DEQUEUE ANY QUEUE
DROP LOCKDOWN PROFILE
EM EXPRESS CONNECT
ENQUEUE ANY QUEUE
EXPORT FULL DATABASE
FLASHBACK ANY TABLE
FLASHBACK ARCHIVE ADMINISTER
GRANT ANY PRIVILEGE
GRANT ANY ROLE
IMPORT FULL DATABASE
INHERIT ANY PRIVILEGES
LOGMINING
MANAGE ANY FILE GROUP
MANAGE ANY QUEUE
MANAGE FILE GROUP
USE ANY JOB RESOURCE
USE ANY SQL TRANSLATION PROFILE

Todos los privilegios del sistema con la palabra clave ANY (como SELECT ANY TABLE, CREATE ANY PROCEDURE) mantienen el bloqueo COMMON_SCHEMA_ACCESS, y un usuario ADMIN no puede utilizarlo en los esquemas de usuario comunes.

A diferencia de las bases de datos de Oracle locales, en la que las palabras clave ANY se aplican a todos los usuarios excepto SYS, el privilegio ANY solo funciona con usuarios no comunes en Autonomous AI Database.

Sugerencia:

Para buscar una lista de usuarios comunes, puede ejecutar la siguiente consulta como usuario ADMIN:
select username 
from dba_users 
where common ='YES' 
order by username;

Sugerencia:

Para ver una lista de privilegios que se pueden utilizar con la palabra clave ANY, puede ejecutar la siguiente consulta como usuario ADMIN:
select distinct(privilege)
from dba_sys_privs 
where grantee like 'ADMIN' and privilege like '%ANY%' 
order by privilege;

Parámetros de Inicialización de la Base de Datos

Autonomous AI Database configura los parámetros del proceso de inicialización al aprovisionar una base de datos de manera automática. No es necesario definir ningún parámetro de inicialización para empezar a utilizar el servicio. Sin embargo, puede modificar algunos parámetros si es necesario.

Lista de parámetros de inicialización que se pueden modificar

Note:

Haga clic en un parámetro de inicialización de la siguiente lista para obtener más información al respecto. Para obtener más información sobre los parámetros a los que no se puede hacer clic a continuación, consulte Referencia de Oracle Database 19c o Referencia de Oracle Database 26ai.
ALLOW_ROWID_COLUMN_TYPE
APPROX_FOR_AGGREGATION
APPROX_FOR_COUNT_DISTINCT
APPROX_FOR_PERCENTILE
AWR_PDB_AUTOFLUSH_ENABLED
CONTAINER_DATA
CURRENT_SCHEMA (Session only by using ALTER SESSION)
CURSOR_SHARING
DB_BLOCK_CHECKING
DDL_LOCK_TIMEOUT
FIXED_DATE
GLOBAL_NAMES
HEAT_MAP
IGNORE_SESSION_SET_PARAM_ERRORS
INMEMORY_OPTIMIZED_ARITHMETIC (Allowed only with ALTER SYSTEM)
INMEMORY_QUERY (Allowed with ALTER SYSTEM and ALTER SESSION)
JOB_QUEUE_PROCESSES (You can only lower its value or bring it back to the original value)
LDAP_DIRECTORY_ACCESS
MAX_IDLE_TIME
NLS_CALENDAR
NLS_COMP
NLS_CURRENCY
NLS_DATE_FORMAT
NLS_DATE_LANGUAGE
NLS_DUAL_CURRENCY
NLS_ISO_CURRENCY
NLS_LANGUAGE
NLS_LENGTH_SEMANTICS
NLS_NCHAR_CONV_EXCP
NLS_NUMERIC_CHARACTERS
NLS_SORT
NLS_TERRITORY
NLS_TIME_FORMAT
NLS_TIME_TZ_FORMAT
NLS_TIMESTAMP_FORMAT
NLS_TIMESTAMP_TZ_FORMAT
OPEN_CURSORS (Allowed range of values are 1000 to 4000)
OPEN_LINKS (You must set SCOPE=SPFILE and restart the Autonomous Database after modifying this parameter)
OPTIMIZER_CAPTURE_SQL_PLAN_BASELINES (Session only by using ALTER SESSION)
OPTIMIZER_IGNORE_HINTS
OPTIMIZER_IGNORE_PARALLEL_HINTS
OPTIMIZER_INMEMORY_AWARE (Allowed with ALTER SYSTEM and ALTER SESSION)
OPTIMIZER_MODE
PARALLEL_MIN_DEGREE
PARALLEL_DEGREE_LIMIT
PLSCOPE_SETTINGS
PLSQL_CCFLAGS
PLSQL_DEBUG
PLSQL_OPTIMIZE_LEVEL
PLSQL_WARNINGS
QUERY_REWRITE_INTEGRITY
RECYCLEBIN
RESULT_CACHE_MODE
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
SQL_TRACE (Allowed only with ALTER SESSION)
STATISTICS_LEVEL (Session only by using ALTER SESSION)
SYSDATE_AT_DBTIMEZONE Select a Time Zone for SYSDATE on Autonomous AI Database
TIME_ZONE
UNDO_RETENTION (min=300 and max=86400)

SYSDATE_AT_DBTIMEZONE Seleccione una zona horaria para SYSDATE en Autonomous AI Database

SYSDATE_AT_DBTIMEZONE permite un manejo especial en una sesión para el valor de fecha y hora devuelto en las llamadas a SYSDATE y SYSTIMESTAMP.

Según el valor de SYSDATE_AT_DBTIMEZONE, verá la fecha y la hora según la zona horaria por defecto de la base de datos de IA autónoma, la hora universal coordinada (UTC) o según la zona horaria que defina en la base de datos.

Propiedad Descripción
Tipo de parámetro Booleano
Valor por defecto FALSE
Modificable ALTER SESSION, ALTER SYSTEM
Rango de valores TRUE | FALSE

Zona horaria de Autonomous AI Database por defecto

La zona horaria por defecto de la base de datos de IA autónoma es la hora universal coordinada (UTC) y, por defecto, las llamadas a SYSDATE y SYSTIMESTAMP devuelven la fecha y la hora en UTC.

Para cambiar la zona horaria de la base de datos, puede ejecutar la siguiente sentencia.

En este ejemplo se define la zona horaria de la base de datos en UTC-5.

ALTER DATABASE SET TIME_ZONE='-05:00';

En este ejemplo se define la zona horaria de la base de datos para la costa este de EE. UU.: America/New_York y la hora se ajusta automáticamente en los conmutadores DST:

ALTER DATABASE SET TIME_ZONE='America/New_York';

Note:

Debe reiniciar la instancia de Autonomous AI Database para que se aplique el cambio.

Después de definir la zona horaria de la base de datos, por defecto SYSDATE y SYSTIMESTAMP siguen devolviendo la fecha y la hora en formato UTC (el valor de SYSDATE_AT_DBTIMEZONE es FALSE por defecto). Si define SYSDATE_AT_DBTIMEZONE en TRUE en una sesión, SYSDATE y SYSTIMESTAMP devuelven la zona horaria de la base de datos.

Consulte Setting the Database Time Zone en Oracle Database 19c u Oracle Database 26ai para obtener más información sobre el uso de la cláusula SET TIME_ZONE con ALTER DATABASE.

Uso de SYSDATE_AT_DBTIMEZONE en una sesión

Cuando SYSDATE_AT_DBTIMEZONE es FALSE en una sesión, las llamadas a SYSDATE y SYSTIMESTAMP devuelven valores basados en la zona horaria por defecto de la base de datos de IA autónoma, hora universal coordinada (UTC).

Cuando el valor de SYSDATE_AT_DBTIMEZONE es TRUE en una sesión, las llamadas a SYSDATE o SYSTIMESTAMP devuelven la fecha y la hora según la zona horaria de la base de datos.

Note:

La definición de SYSDATE_AT_DBTIMEZONE en TRUE solo afecta al uso de SYSDATE y SYSTIMESTAMP como operadores en SQL de aplicación (por ejemplo, en consultas, operaciones DML y CTAS). Al utilizar este parámetro, se recomienda que la zona horaria del cliente/sesión coincida con la zona horaria de la base de datos.

Ejemplo

En el siguiente ejemplo, se devuelven fechas y horas para dos zonas horarias diferentes, según el valor del parámetro SYSDATE_AT_DBTIMEZONE:

SQL> SELECT DBTIMEZONE FROM DUAL;

DBTIMEZONE
_____________
-05:00

SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=FALSE;

Session altered.

SQL> SELECT SYSTIMESTAMP FROM DUAL;

SYSTIMESTAMP
______________________________________
27-JAN-22 06.59.45.708082000 PM GMT

SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=TRUE;

Session altered.

SQL> SELECT SYSTIMESTAMP FROM DUAL;

SYSTIMESTAMP
_________________________________________
27-JAN-22 02.14.47.578946000 PM -05:00 

Note:

Cuando se ejecuta una consulta SYSDATE o SYSTIMESTAMP en la hoja de trabajo de SQL de Database Actions, el valor de fecha y hora que se devuelve es UTC (cuando el parámetro SYSDATE_AT_DBTIMEZONE se define en TRUE o FALSE). Para obtener la zona horaria de la base de datos al trabajar en Database Actions, utilice TO_CHAR() de la siguiente forma:

SQL> SELECT TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SS TZH":"TZM') FROM DUAL;

TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SSTZH":"TZM')
___________________________________________________________
2022-01-27T14:15:00 -05:00