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 for Experienced Database Users.
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 tablespaces temporales y de datos por defecto 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 conjunto de caracteres es Unicode AL32UTF8.
-
Cifrado de datos almacenados: los datos almacenados se cifran mediante el algoritmo AES256 (clave del cifrado avanzada estándar de 256 bits).
Nota: las bases de datos de IA autónomas 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;
-
Compresión de Datos: para las cargas de Trabajo de procesamiento de transacciones de IA autónoma, la compresión no está activada por defecto. Para las cargas de trabajo de Autonomous AI Lakehouse, la compresión híbrida de columnas 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_compressionen el comandoCREATE TABLEoALTER TABLE. -
Acceso a la Base de Datos: no tiene acceso directo al nodo de base de Datos o al sistema de archivos local, ni 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 de Autonomous AI Transaction Processing. Sin embargo, para las cargas de trabajo de Autonomous 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_clauseo 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 la creación del í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 el valor 1 para especificar las ejecuciones en serie:
ALTER INDEX *index_name* NOPARALLEL;o bien,
ALTER INDEX *index_name* PARALLEL 1;
-
Las últimas funciones de la 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 la infraestructura de Exadata dedicada de Oracle Autonomous AI Database, 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 en una infraestructura de Exadata dedicada impone controles de seguridad y realiza tareas administrativas de bases 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 de ANY (como SELECT ANY TABLE, CREATE ANY PROCEDURE) mantienen el bloqueo COMMON_SCHEMA_ACCESS, y un usuario ADMIN no puede utilizarlo en los esquemas del usuario común.
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 la base de datos de IA autónoma.
Notas
-
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; -
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
La base de datos de IA autónoma configura los parámetros del proceso de inicialización de la base de datos automáticamente al aprovisionar una base de datos. 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
Nota: 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 la base de datos de IA autónoma
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 en función de la zona horaria por defecto de la base de datos de IA autónoma, la hora universal coordinada (UTC) o la zona horaria definida en la base de datos.
| Propiedad | Descripción | |
|---|---|---|
| Tipo de parámetro | Booleano | |
| Valor por defecto | FALSE |
|
| Modificable | ALTER SESSION, ALTER SYSTEM |
|
| Rango de los valores | TRUE |
FALSE |
Zona horaria de base de datos de IA autónoma 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 como UTC-5.
ALTER DATABASE SET TIME_ZONE='-05:00';
Este ejemplo 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 de horario de ahorro de energía:
ALTER DATABASE SET TIME_ZONE='America/New_York';
Nota: Debe reiniciar la instancia de la base de datos de IA autónoma 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 UTC (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 Configuración de la zona horaria de la base de datos 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 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.
Nota: 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, DML y operaciones 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
Nota: 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 está en 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