viernes, 31 de diciembre de 2021

Retrospectiva del 2021

Si bien no fue un año tan complicado como el 2020, el 2021 fue otro año de la "nueva normalidad". De a poco nos fuimos adaptando a esta realidad cambiante que generó la epidemia de COVID-19 y si bien se extrañan algunos aspectos de la vida de antes, en gran parte retomamos las actividades habituales.

Este fue un año un poco menos fructífero con respecto a mi actividad con Oracle, pero puedo destacar algunos hitos importantes:


Certificaciones y Acreditaciones

Nuevamente Oracle incluyó un plan de capacitaciones y certificaciones gratuitas a partir de septiembre, por lo que pude rendir la certificación "Oracle Autonomous Database Cloud 2021 Certified Specialist" y tengo pensado rendir un par mas antes de fines de febrero



Comunidad Oracle

Los cambios en la comunidad hacen un poco menos gratificante participar en los foros, pero igualmente sigo aportando cuando encuentro algún tema en el que puedo colaborar. Sumé cerca de cien respuestas correctas a lo largo del año pese a la gran disminución en la actividad en los foros.



Eventos

Este año el evento anual para Latinoamérica se realizó en el mes de Noviembre, nuevamente el forma 100% virtual, y volví a participar en el mismo. Los detalles del mismo pueden encontrarlo en este artículo del blog.



Blog

Otro año en el que no pude dedicarme a escribir tantos artículos técnicos, pero traté de mantener el ritmo con novedades y noticias del mundo Oracle, alcanzando nuevamente mas de 40 articulos en el año (números similares a 2019 y 2020). La idea es continuar generando material técnico en castellano, a la vez que compartir noticias relacionadas con el mundo Oracle.




Programa Oracle ACE

Nuevamente mantuve el nivel Oracle ACE (tercer año consecutivo), lo cual es un enorme orgullo!


Todo el programa Oracle ACE esta cambiando fuertemente y veremos que nos deparará el 2022. Por lo pronto, en estos primeros siete meses del periodo de ACE (va desde Junio a Mayo) ya alcance los puntos requeridos para mantenerme otro año mas en el programa!.


Otras Actividades

Durante el año escribí algunas reviews de productos Oracle:



jueves, 23 de diciembre de 2021

Oracle Autonomous Database - Calculando el espacio utilizado



Cuando usamos una base de datos autónoma Oracle en OCI, y mas aún cuando lo hacemos con una cuenta Always Free, es importante saber cual es el espacio utilizado y cuanto espacio disponible nos queda en nuestra base de datos.

La forma mas sencilla de saber cuanto espacio se utiliza es mediante la Consola de Servicio (Service Console) disponible en OCI, a la cual podemos acceder desde la página principal de nuestra base de datos autónoma, como vemos a continuación:




Una vez que accedemos a la consola, solo tenemos que expandir la opción de almacenamiento utilizado (Storage used) para saber no solo que capacidad de almacenamiento ya fue asignada (Storage Allocated), sino también que porcentaje del mismo ha sido utilizado:


Esta información nos sirve para saber los totales generales, pero a continuación veremos algunos scripts para desglosar en detalle como se encuentra asignado y utilizado este espacio.

¿Qué Esquemas Usan el Espacio?

Para saber que esquemas son los que usan mas espacio, podemos usar esta sencilla query:

SELECT ownerSUM(bytes)/1024/1024/1024 AS GB_Usados FROM dba_segments GROUP BY owner ORDER BY GB_Usados DESC;
En nuestro caso, vemos los resultados de la misma, donde aparece un esquema "SSB" con mas de 160 Gb de datos, lo cual no coincide con lo que vimos anteriormente:




A no preocuparse! Este esquema forma parte de los esquemas de ejemplo de Oracle, y se encuentra en un tablespace de solo lectura llamado "SAMPLESCHEMA", compartido entre todas las bases de datos de la instancia, y no es tenido en cuenta al calcular el espacio de la base de datos.

Si ejecutamos la siguiente query descartando los objetos del esquema "SAMPLESCHEMA" podemos confirmar que el espacio realmente utilizado por nuestros datos coincide con lo que vemos en la consola:

SELECT SUM (bytes)/1024/1024/1024 as GB_Usados FROM dba_segments WHERE tablespace_name <> 'SAMPLESCHEMA';



Si queremos saber que objetos en particular son los que mas espacio consumen, podemos usar la siguiente query (sin olvidarse de excluir el tablespace con los ejemplos):

SELECT owner, segment_name, SUM(bytes)/1024/1024/1024 AS GB_Usados 
FROM dba_segments 
WHERE tablespace_name <> 'SAMPLESCHEMA'
GROUP BY owner, segment_name 
ORDER BY GB_Usados DESC;



¿Qué otras cosas consumen espacio?

En las bases de datos autónomas, no solo los tablespaces consumen espacio. Los archivos en el filesystem también cuentan en el espacio total. Para saber que archivos podemos estar teniendo, debemos validar los distintos directorios definidos en nuestra base de datos autónoma. Podemos ver que directorios están definidos con el siguiente script:

SELECT directory_name FROM dba_directories WHERE origin_con_id != 1;



Una vez que sabemos que directorios posee nuestra base de datos, podemos consultar los archivos que existen en los mismos, su tamaño y cuando fueron creados:

SELECT 'DATA_PUMP_DIR' AS Dir, object_name, created, bytes/1024/1024/1024 AS GB_Usados FROM DBMS_CLOUD.LIST_FILES('DATA_PUMP_DIR'
UNION ALL
SELECT 'SQL_TCB_DIR'object_name, created, bytes/1024/1024/1024 AS GB_Usados FROM DBMS_CLOUD.LIST_FILES('SQL_TCB_DIR'
ORDER BY GB_Usados DESC;


¿Cuanto espacio tenemos Asignado?

Para saber el espacio total asignado a cada tablespace, podemos usar la siguiente query, la cual nos devuelve el espacio asignado a cada tablespace y el espacio asignado en total:

SELECT tablespace_name, GB_Asignados, SUM (GB_Asignados) OVER() as TotalGB 
FROM
(   SELECT tablespace_name, SUM (bytes)/1024/1024/1024 as GB_Asignados 
    FROM dba_data_files WHERE tablespace_name <> 'SAMPLESCHEMA'
    GROUP BY tablespace_name
    UNION ALL
    SELECT tablespace_name, SUM (bytes)/1024/1024/1024 as GB_Asignados 
    FROM dba_temp_files
    GROUP BY tablespace_name
)
ORDER BY GB_Asignados DESC;
El resultado de la misma coincide con lo mostrado en la consola, como podemos ver a continuación


El tablespace "DBFS_DATA" no es mas que una representación de los datos almacenados en el file system, los cuales consultamos anteriormente en la sección "¿Qué otras cosas consumen espacio?". En la misma vimos como obtener la información directamente desde el file system, pero podemos hacer lo mismo filtrando por el tablespace "DBFS_DATA".



De esta manera podemos controlar el espacio asignado y utilizado por nuestra base de datos autónoma, y llegado el caso tomar acciones para liberar espacio de ser requerido.

miércoles, 22 de diciembre de 2021

Capacitaciones y Certificaciones Oracle Cloud Gratuitas hasta fin de Febrero 2022


En septiembre de este año Oracle University anunció un conjunto de capacitaciones y certificaciones de Oracle Cloud Infrastructure (OCI) disponibles en forma 100% gratuitas, las cuales mencione en este artículo.

En el día de hoy Oracle anunció la extensión de este programa, que originalmente finalizaba el 31 de diciembre, hasta el 28 de febrero del año próximo.

Las certificaciones disponibles son:

Tal como describí en el artículo anterior, la forma de acceder a estas certificaciones es muy sencilla. Solo es necesario seguir estos pasos:

Activar la suscripción deseada

Tan sencillo como hacer click en el botón "Enroll in this path" en la página de la certificación deseada



Tomar la capacitación gratuita

Las mismas constan de videos, acceso a material de estudio, y material de Lab para practicar en vivo.


Todas las certificaciones ofrecen una capacitación general sobre el proceso de certificación, y acceso a un examen de prueba que simula el examen de Certificación final.

Inscribirse en el Examen de Certificación

La inscripción es gratuita!



Oracle REST Data Services (ORDS) 21.4 ya está disponible


El viernes pasado fue anunciada la disponibilidad de la última version de Oracle REST Data Services (ORDS). Con este anuncio se completa la actualización a la ultima versión de toda la gama de herramientas para acceder a las bases de datos Oracle (se complementa con SQL Developer y SQLCl).

Esta versión incluye la resolución de algunos bugs previos, la actualización a la biblioteca Jetty y lo que es mas interesante, una actualización de SQL Developer Web.

ORDS 21.4 puede ser descargado desde la página de descargas,  y se puede consultar la Release Notes correspondiente a la versión, la cual incluye la lista de correcciones y cambios.

La instalación es muy rápida y sencilla, y en pocos segundos podemos contar acceso a los servicios de ORDS.

¿Qué hay de nuevo en ORDS 21.4?

Oracle REST Data Services (ORDS) sirve de puente entre HTTPS las bases de datos Oracle, proporcionando una API REST de gestión de bases de datos que incluye SQL Developer Web, una puerta de enlace PL/SQL, SODA para REST y la capacidad de publicar servicios web RESTful para interactuar con los datos y los procedimientos almacenados en la base de datos. A continuación veremos las nuevas características de la versión 21.4, disponibles desde el Launchpad de ORDS:



Scheduling

La funcionalidad de Scheduling permite acceder a algunas funcionalidades de DBMS_SCHEDULER (consultar el estado y/o log de ejecución de trabajos de Oracle Scheduler) y en próximas versiones se podrán crear nuevos JOBS y agendas.




APEX Workspaces

Esa funcionalidad permite consultar, crear y borrar workspaces de APEX, obtener las URL de cada uno de ellos y ver los detalles de los usuarios de base de datos asociados a ellos.




martes, 21 de diciembre de 2021

Oracle Spatial Studio 21.3 Disponible

Hace unas semanas se encuentra disponible la última versión de Oracle Spatial Studio (21.3), herramienta de visualización de datos que nos permite visualizar, explorar y analizar datos geoespaciales.



La versión 21.3 incluye muchas mejoras, como ser:

  • Posibilidad de unir datos no geoespaciales a datos que contienen información geográfica (por ejemplo, unir indices o valores por país a datos geográficos de cada país) pudiendo de esta forma analizar en forma gráfica los mismos.
  • Aplicar esquemas de colores diferentes a distintos datos.
  • Obtener información (como ser coordenadas) o agregar marcadores mediante Right-click en un gráfico.

Esta versión puede ser descargada desde la página de descargas de Oracle Spatial Studio. Tambien puede consultar la pagina Introducción a Oracle Spatial Studio.

lunes, 20 de diciembre de 2021

SQLCl 21.4 ya está disponible. ¿Qué hay de nuevo?

Como mencioné en el artículo "SQL Developer 21.4.1 / SQLCl 21.4 disponibles" el jueves pasado, Oracle SQLCl 21.4 ya está disponible, y trae novedades muy interesantes principalmente el uso de Data Pump.


Data Pump

SQLCl 21.4 incorpora comandos para utilizar Data Pump. Invocando el comando "datapump" (o simplemente "dp", que es una forma abreviada) podemos realizar operaciones de importación y exportación de datos desde una base de datos Oracle.


Por ejemplo, el comando "dp export" inicia en forma automática un export del esquema actual:


** Datapump Command START ** at 2021.12.20-10.55.05
Initiating DATA PUMP
DATABASE TIME ZONE: VERSION:32 CON_ID:0
Log Location: DATA_PUMP_DIR:ESQL_2104.LOG
Starting "DEMO"."ESQL_2104":
Processing object TYPE SCHEMA_EXPORT/TABLE/TABLE_DATA
Processing object TYPE SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object TYPE SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
Processing object TYPE SCHEMA_EXPORT/STATISTICS/MARKER
Processing object TYPE SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object TYPE SCHEMA_EXPORT/SEQUENCE/SEQUENCE
Processing object TYPE SCHEMA_EXPORT/TABLE/TABLE
Processing object TYPE SCHEMA_EXPORT/TABLE/COMMENT
Processing object TYPE SCHEMA_EXPORT/PROCEDURE/PROCEDURE
Processing object TYPE SCHEMA_EXPORT/PROCEDURE/ALTER_PROCEDURE
Processing object TYPE SCHEMA_EXPORT/VIEW/VIEW
Processing object TYPE SCHEMA_EXPORT/TABLE/INDEX/INDEX
Processing object TYPE SCHEMA_EXPORT/TABLE/CONSTRAINT/CONSTRAINT
Processing object TYPE SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT
Processing object TYPE SCHEMA_EXPORT/TABLE/TRIGGER
. . exported "DEMO"."UNTAPPD"                          805.4 KB    2168 ROWS
. . exported "DEMO"."all_the_hrs_1"                    900.9 KB    1773 ROWS
. . exported "DEMO"."DEMO_HR2_EXPORT_JOB_1"            988.7 KB    1771 ROWS
. . exported "DEMO"."ESQL_3082"                        560.7 KB    1719 ROWS
. . exported "DEMO"."EMPLOYEES"                        17.08 KB     107 ROWS
. . exported "DEMO"."LOCATIONS"                        8.437 KB      23 ROWS
. . exported "DEMO"."JOB_HISTORY"                      7.195 KB      10 ROWS
. . exported "DEMO"."JOBS"                             7.101 KB      19 ROWS
. . exported "DEMO"."DEPARTMENTS"                      7.125 KB      27 ROWS
. . exported "DEMO"."COUNTRIES"                        6.367 KB      25 ROWS
. . exported "DEMO"."REGIONS"                          5.546 KB       4 ROWS
Master TABLE "DEMO"."ESQL_2104" successfully loaded/unloaded
******************************************************************************
Dump file SET FOR DEMO.ESQL_2104 IS:
  /u01/app/oracle/admin/orclcdb/dpdump/5A33DEF16CD21C76E14701020A7B04AA/ESQL_2104.DMP
Job "DEMO"."ESQL_2104" successfully completed at Mon DEC 20 10:55:42 2021 elapsed 0 00:00:37
DataPump Operation STATUS 'COMPLETED'
Jobname = ESQL_2104
** Datapump Command END ** at 2021.12.20-10.55.43
SQL>;


Para ver mas detalles, consulten el vide de Jeff Smith:



jueves, 16 de diciembre de 2021

SQL Developer 21.4.1 / SQLCl 21.4 disponibles

SQL Developer 21.4 ya recibió su primer actualización a la versión 21.4.1, debido a la resolución de bugs relacionados con la vulnerabilidad descubierta en Apache Log4J.


El mismo puede descargarse aquí. Toda la información sobre SQL Developer 21.4 pueden encontrarla en el artículo "SQL Developer 21.4 disponible!" escrito apenas hace dos días! Tambien Data Modeler fue actualizado y puede ser descargado aquí.


Asimismo en la misma página ya se encuentra disponible SQLCl 21.4 (SQLCl no usa Apache Log4J así que no hay que preocuparse por eso). Esta versión incluye la solución a varios bugs reportados y una nueva funcionalidad (soporte de Data Pump) la cual explicaremos en un articulo en estos días!


Un par de mejoras a Oracle Autonomous Database

Oracle Autonomous Database no deja de incorporar mejoras. En este artículo vamos a mencionar dos características que facilitan la administración de bases de datos autónomas.

Inicio y Apagado programado

Ahora es posible programar en que momentos iniciar o detener una base de datos autónoma que reside en Shared Exadata Infrastructure. Esta característica es por demás de útil para entornos de desarrollo o testing, donde podemos definir en forma automática cuando detener las instancias y ahorrar dinero.

La opción se encuentra disponible en el menú de "More Actions" (por el momento no se encuentra disponible para bases de datos Always Free) y es sencilla de definir, como vemos a continuación:

Imagen cortesía de @SinanPetrus


Clonado de Base de Datos Cross-Region

Ahora es posible clonar una base de datos a otra Región. Hay una nueva opción en la pagina de clonado de base de datos que permite elegir la Región destino. En el ejemplo que les muestro a continuación, como mi cuenta es Always Free tengo disponible solo una región, pero en cuentas normales sería posible elegir otra región distinta a la de la base de datos de origen:



martes, 14 de diciembre de 2021

SQL Developer 21.4 disponible!

Ayer Oracle anunció la disponibilidad de SQL Developer 21.4, la última versión del año de la IDE gratuita para interactuar con bases de datos Oracle.



Esta versión, así como la herramienta SQLcl, pueden ser descargados desde la página de descargas de SQL Developer, la cual también incluye una sección con información sobre como realizar la instalación.


Algunos links útiles:


Para consultas y dudas, recomendamos usar el foro de SQL Developer en Oracle Community.


Como es habitual, la versión 21.4 de SQL Developer Data Modeler fue también liberada en el día de ayer.