sábado, 8 de enero de 2022

ORACLA y CONTENEDORES 12C

 

Creación de un cdb pdb de 12c para múltiples inquilinos

1.1 crear declaración de base de datos conectable para crear pdb

Clon basado en semilla de pdbseed
Pasos de creación:
(a) Utilice la declaración create pdb:

SQL> create pluggable database pdborcl admin user pdbadmin identified by oracle  file_name_convert=('pdbseed','pdborcl');
  • 1

Observaciones:
1. Si el parámetro de conversión no está configurado, pdb usará el método de administración omf para ver el estado
2. Cuando existe db_create_file_dest (es decir, usando el método OMF), no es necesario agregar file_name_convert. En este momento, se usará el método de nomenclatura omf para generar el archivo de datos.
3. En el entorno rac, la estructura del directorio de archivos se puede crear de antemano en el grupo de discos asm. Si se usa omf, use file_name_convert para convertir la ruta y especifique explícitamente la ruta absoluta de pdbseed (sistema, sysaux, temp). Por ejemplo, cree una base de datos conectable pdborcl admin usuario admin identificado por oracle file_name_convert = ('+ DATA / ORCL / 77408ECCA64E8959E0530B0410AC5685 / DATAFILE / system.267.988496155', '+ DATA / pdborcl / system.dbf', '+ DATAECDCADCADATA / 775408 .268.988496159 ',' + DATA / pdborcl / sysaux.dbf ',' + DATA / ORCL / 77408ECCA64E8959E0530B0410AC5685 / TEMPFILE / temp.269.988496161 ',' + DATA / pdborcl / temp.dbf ');

(b) Consulta cdb, estado de pdb

SQL> select pdb_name,status from cdb_pdbs;

PDB_NAME   STATUS
---------- ----------
PDB$SEED   NORMAL
PDBORCL    NORMAL


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

© Abrir pdb

SQL> alter pluggable database pdborcl open;

Pluggable database altered.

  • 1
  • 2
  • 3
  • 4

(d) Verificar el estado

SQL> show pdbs;

    CON_ID CON_NAME   OPEN MODE  RESTRICTED
---------- -------------- 
         2 PDB$SEED     READ ONLY  NO
         3 PDBORCL      READ WRITE NO

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

(e) Ver el nombre del servicio


SQL> select name from v$services;

NAME
-------------------------------------
orclXDB
orcl
SYS$BACKGROUND
SYS$USERS
pdborcl


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

También puede especificar la ruta del archivo de datos a través del parámetro PATH_PREFIX, y Oracle creará automáticamente el directorio, de la siguiente manera:

SQL> create pluggable database cs admin user admin identified by oracle PATH_PREFIX='/u01/app/oracle/oradata/orcl/cs/' file_name_convert=('pdbseed','cs');

Pluggable database created.

SQL> select name from v$datafile;
/u01/app/oracle/oradata/orcl/cs/system01.dbf
/u01/app/oracle/oradata/orcl/cs/sysaux01.dbf
/u01/app/oracle/oradata/orcl/cs/undotbs01.dbf
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

SQL> create pluggable database test admin user admin identified by oracle file_name_convert=(‘pdbseed’,‘test’);
create pluggable database test admin user admin identified by oracle file_name_convert=(‘pdbseed’,‘test’)
*
ERROR at line 1:
ORA-65005: missing or invalid file name pattern for file -
+DATA/ORCL/FD9AC20F64D244D7E043B6A9E80A2F2F/DATAFILE/system.266.987717117

1.2 instrucción dbca crea pdb

[oracle@orcldb ~]$ dbca -silent -createPluggableDatabase -sourceDB orcl -pdbName pdborcl -createPDBFrom default -pdbadminusername padmin -pdbadminpassword oracle -pdbdatafiledestination /u01/app/oracle/oradata/orcl/pdborcl
Creating Pluggable Database
2% complete
6% complete
11% complete
20% complete
46% complete
Completing Pluggable Database Creation
53% complete
Executing Post Configuration Actions
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/orcl/pdborcl/orcl.log" for further details.


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

Nota: El parámetro después de -sourceDB es un nombre único para la base de datos RAC o SID

Dos, 12c de mantenimiento diario

2.1 Crear un usuario en cdb

Creación de usuarios en cdb
create user c##cdbadmin identified by oracle;
 Autorización
grant dba to c##cdbadmin;

  • 1
  • 2
  • 3
  • 4
  • 5

2.2 Conectarse a pdb

Hay dos formas de conectarse a pdb

(A) Cambiar dentro de sqlplus
select name,open_mode from v$pdbs;
alter session set container='';
 Crea usuarios de la forma habitual
 (B) Conéctese a través de tnsname
sqlplus sys/oracle@pdborcl

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

Abra todos los pdb a la vez

alter pluggable database all open;

 Inicie pdb en estado de solo lectura
alter pluggable database pdborcl open read only;
  • 1
  • 2
  • 3
  • 4

Cerrar todos los pdbs a la vez

alter pluggable database all close immediate;
  • 1

2.3 Cambiar el nombre de la base de datos pdb

Operar en pdb

SQL> alter session set container=pdborcl;

Session altered.

SQL> startup restrict;
Pluggable Database opened.

SQL> alter pluggable database pdborcl rename global_name to pdborclnew;

Pluggable database altered.

SQL> show con_name

CON_NAME
------------------------------
PDBORCLNEW

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

2.4 Limitar el tamaño total del disco que puede usar pdb

Ejecutar en pdb

alter pluggable database pdborcl storage(maxsize 10G);
  • 1

2.5 Ver el historial de operaciones de pdb

select db_name,con_id,pdb_name,operation,op_timestamp,cloned_from_pdb_name from cdb_pdb_history;
  • 1

## 2.6 Desactivar la función RESULT CACHE
Bug 20985596 : ORA-00600[KPP_CONCATQ:2] OCCURS WHEN SQL EXECTING
alter system set result_cache_mode=manual;
alter system set result_cache_max_size=0;
alter system set “_optimizer_ads_use_result_cache”=false;

Tres, clon pdb

12c r1 12c r2 diferencia:
Al clonar en Oracle 12.1, la biblioteca debe cerrarse y debe iniciarse en estado de solo lectura
En Oracle 12.2, no es necesario cerrar la biblioteca, puede clonar directamente en línea

3.1 método de clonación dbca gui

step 1

step 2

step 3

step 4

step 5

step 6

Nota: El pdb clonado en modo interfaz gráfica de usuario creará el espacio de tabla de los usuarios de forma predeterminada, y el pdb se abrirá automáticamente después de que se complete la creación.

3.2 Clon del comando create pluggable

Pasos:
Ejecutar en cdb:

create pluggable database pdborclclone from pdborcl 
file_name_convert=('pdborcl','pdborclclone')
service_name_convert=('pdborcl','pdborclclone');
  • 1
  • 2
  • 3

Al crear un PDB, solo puede clonar el modelo de definición de datos de la base de datos sin datos (los datos de la tabla o índice creado por el usuario se descartan) y especificar NO DATA al crearlo.

create pluggable database pdb2 from pdb1 no data;
  • 1

3.3 Clonar pdb de forma remota

1. Cree un dblink en el nuevo host de cdb

SQL> create database link pdbclone connect to pdbadmin2 identified by oracle using '172.16.4.110:1521/pdborclnew';
  • 1

2. Clonar el pdb de origen

SQL> create pluggable database pdborclnew3 from pdborclnew@pdbclone file_name_convert=('/u01/app/oracle/oradata/orcl/pdborclnew','/u01/app/oracle/oradata/orcl/pdborclnew3');
  • 1

3. Abra pdb en el nuevo host de cdb.

SQL> alter pluggable database all open;
  • 1

Observaciones: el permiso del usuario pdbadmin2 en dblink es pdb_dba

Cuatro, pdb eliminar

4.1 eliminación gráfica de dbca

step1

step2

step3
eliminado

4.2 soltar comando borrar

1 cerrar pdb

alter pluggable database pdborclclone close immediate;
  • 1

2 eliminar pdb
Si el pdb no está desconectado, se puede eliminar mediante la inclusión de archivos de datos

drop pluggable database pdborclclonbe including datafiles;
  • 1

Cinco, pdb marcar

5.1 Desenchufe dbca gráficamente

step 1

step 2

step 3

Después de desconectar, el archivo de datos se borrará

5.2 Desenchufe por comando

Cierre pdb primero

alter pluggable database pdborclclone2 close immediate;
  • 1
Luego ejecute el comando de desconexión 
alter pluggable database pdborclclone2 unplug into '/unplug/pdborclclone2.xml';

  • 1
  • 2
  • 3

Necesito eliminar pdb en cdb después de desconectar

drop pluggable database pdborclclone2;
  • 1

El archivo de datos original de pdb eliminado por el comando seguirá existiendo y el archivo temporal se eliminará

Seis, inserto pdb

6.1 inserción gráfica dbca

step 1

step 2

step 3

step 4

6.2 Insertar en modo sqlplus

step 1
Comprueba la compatibilidad

set serveroutput on
declare
compatiable constant varchar2(3) :=
case dbms_pdb.check_plug_compatibility(
pdb_descr_file => '/unplug/pdborclclone.xml',
pdb_name => 'pdborclclone')
when true then 'yes'
else 'no'
end;
begin
dbms_output.put_line(compatiable);
end;
/
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
 select message,action from pdb_plug_in_violations;
   Compruebe si el resultado devuelto es sí
  • 1
  • 2

step 2
ejecutar pdb insert

 create pluggable database pdborclclone3 using '/unplug/pdborclclone2.xml' nocopy;--Si se inserta la ruta de la base de datos
  • 1

Observaciones: 1 pdb creado por este método. La ruta del archivo de datos utilizada sigue siendo la anterior
2 La versión de base de datos 12c r2 no se puede insertar en 12c r1 y probar, y la declaración de verificación de compatibilidad devuelve no

6.3 Insertar el pdb de una máquina extranjera

(1) Extraiga pdb en la base de datos de origen y genere un archivo xml
(2) Copie los archivos de datos y los archivos xml de la base de datos pdb de origen en el host de destino
(3) Comprobación de compatibilidad

set serveroutput on
declare
compatiable constant varchar2(3) :=
case dbms_pdb.check_plug_compatibility(
pdb_descr_file => '/unplug/pdborcl2.xml',
pdb_name => 'pdborcl2')
when true then 'yes'
else 'no'
end;
begin
dbms_output.put_line(compatiable);
end;
/
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

(4) Creación de declaraciones
Las observaciones que utilizan el parámetro nocopy significan que no es necesario copiar el archivo de datos de la tabla temporal

SQL> create pluggable database pdborcl3 using '/unplug/pdborcl2.xml' 
file_name_convert=('/u01/app/oracle/oradata/orcl/pdborcl2','/u01/app/oracle/oradata/orcl/pdborcl3');


create pluggable database pdborcl using '/unplug/pdborcl.xml' nocopy;
  • 1
  • 2
  • 3
  • 4
  • 5

Observaciones: no hay problema para insertar después de eliminar pdb

Siete, copia de seguridad y recuperación de cdb y pdb

7.1 cdb de copia de seguridad rman

La copia de seguridad en cdb hará una copia de seguridad de todas las bases de datos, incluido pdb

7.2 pdb de copia de seguridad rman

Dos caminos
(a) pdb se conecta a rman a través de tns
Igual que el método de respaldo sin múltiples inquilinos
(b) Hacer una copia de seguridad de pdb en cdb
Conéctese directamente a cdb para hacer una copia de seguridad de pdb

 backup pluggable database pdborcl format '/u01/rman/pdborcl_full_%U.bak';
  • 1

7.3 Utilice rman para restaurar cdb y pdb

La base de datos pdb se puede restaurar en el estado de montaje de cdb

restore pluggable database pdborclclone3;
recover pluggable database pdborclclone3;
  • 1
  • 2

Puede restaurar pdb en el estado abierto de cdb

restore pluggable database pdborclclone3;
recover pluggable database pdborclclone3;
  • 1
  • 2

Ocho, 12c em manager se conecta a pdb

El número de puerto se puede asignar en pdb y el pdb se puede conectar solo a través de em
exec dbms_xdb_config.sethttpsport(5501);

miércoles, 15 de abril de 2020

Estudiando OCI "Oracle Cloud Infrastructure"


Primero entendiendo que es OCI: Oracle Cloud es una nube empresarial de segunda generación que ofrece un potente rendimiento informático y de redes, y una completa gama de servicios de infraestructura. Creada desde cero para satisfacer las necesidades de las aplicaciones de misión crítica, Oracle Cloud admite todas las cargas de trabajo heredadas, al tiempo que ofrece herramientas modernas de desarrollo en la nube, para que las empresas puedan aportar su pasado a medida que construyen su futuro (oracle.com).
Oracle Cloud ofrece una completa gama de computación en la nube, desde desarrollo de aplicaciones y analítica empresarial hasta administración de datos, integración, seguridad, inteligencia artificial (IA) y blockchain.

Dado que esta en nuestro mundo tecnológico, y no podemos quedarnos atrás, nos vemos en el camino de adquirir nuevos conocimintos.

Pos acá comparto material rescatado de los cursos y que nos servirán para entender este mundo.

Oracle Cloud Infrastructure

Modelos de servicio en la nube:

IaaS : Infraestructura como servicio
Responsabilidad de OCI (redes, almacenamiento, servidores, virtualización), su responsabilidad (SO, middleware, tiempo de ejecución, datos, aplicaciones)
Puede instalar cualquier sistema operativo y aplicaciones
PaaS : plataforma como servicio
Responsabilidad OCI (Redes, almacenamiento, servidores, virtualización, SO, Middleware, tiempo de ejecución), Su responsabilidad (datos, aplicaciones) -
Solo administra tu aplicación. Ejemplo: Funciones de Oracle (oferta sin servidor)
SaaS : software como servicio
Responsabilidad OCI (Redes, almacenamiento, servidores, virtualización, SO, Middleware, tiempo de ejecución, datos, aplicaciones).
Solo un consumo, Ejemplo: aplicaciones ERP, Salesforce

Virtual Cloud Network (VCN) - Virtual Cloud Network: vive dentro de una región de Oracle Cloud y es altamente disponible, seguro y escalable, acceso al entorno posible con CLI, API de Rest. La arquitectura de disponibilidad máxima (MAA) proporciona HA y DR junto con AD + FD.

Región: una ubicación geográfica, un área metropolitana (Amsterdam, Mumbai), un total de 36 regiones estarán en 2020, elija su región más cercana a sus clientes por baja latencia y alto rendimiento. Si una organización desea un alcance global para la disponibilidad del servicio y la recuperación ante desastres, debe tener múltiples regiones y dominios de disponibilidad (anuncios) para usar
Dominio de disponibilidad (AD) : 2-3 DC aisladas ubicadas en una región, conectadas con una red de baja latencia y alto ancho de banda, dos AD no comparten infraestructura física: alimentación / refrigeración, etc.
Dominios de falla (FD) : un DC lógico que tiene una agrupación de H / W e infraestructura dentro de un dominio de disponibilidad (AD), cada AD tiene 3-FD, no compartidos (no compartidos con los FD- tiene rack físico, interruptor TOR, alimentación unidad de distribución)
Compartimento : una colección de servicios relacionados, por ejemplo, componentes de red en un compartimento (VCN, LB) y componentes de almacenamiento (Bloque / archivo / objeto) en el compartimento de almacenamiento. Cada recurso es parte de un solo compartimento, no se puede anidar, pero los recursos se pueden comunicar con otros recursos en compartimentos diferentes, y usted puede dar acceso al grupo de usuarios a compartimentos escribiendo políticas (Creta / actualización)

Servicios de computación:

Modelo de pago por uso (PAYG), varios tamaños de instancias para cada carga de trabajo: CPU / Memoria (RAM) / Ancho de banda, compatible con procesadores Intel y AMD: AMD es un 50% más barato que Intel. Escalado vertical (escalado arriba / abajo), escalado horizontal (escalado / entrada).

Metal desnudo : servidor físico sin virtualización (sin VM), acceso directo H / W, el cliente obtiene servicio completo de metal desnudo, solo Tangente solo, pueden ser casos de uso: cargas de trabajo que requieren un alto rendimiento, una carga de trabajo que no está virtualizada, alguna carga de trabajo requiere un hipervisor específico (Traiga su propio hipervisor), la carga de trabajo que requiere traer su propia licencia (BYOL)
Hosts virtuales dedicados : tiene virtualización, se ha ofrecido como un servicio, lo que significa que VM es un invitado en un servidor host con virtualización basada en hipervisor
Máquina virtual : la instancia de cómputo independiente se ejecuta sobre hardware físico desnudo, un enfoque de múltiples inquilinos: administra el sistema operativo, los parches, los actualiza, ejecuta el código, etc. (que también es un inconveniente)

Motor de contenedores : para Kubernetes es un servicio totalmente administrado, escalable y de alta disponibilidad que puede usar para implementar sus aplicaciones en contenedores en la nube
Funciones : activa el código en respuesta a un evento, consume solo durante la ejecución del evento y solo paga por eso, es un servicio PaaS
Host VM dedicado (DVH) : ejecute su instancia VM en un servidor BM dedicado, una única VM Tenant para un solo cliente, obtendrá BOX completo, propio por usted, por lo que debe pagar por el host + VM, brinda el más alto nivel de seguridad


Servicios de bases de datos
Sistemas VM DB : para un aprovisionamiento rápido
Sistemas BM DB : para un rendimiento rápido
RAC: HA gestionada, también Data Guard
Sistema Exadata DB : administre Exadata, Oracle gestione - infra (almacenamiento, redes, firmware, un hipervisor para usted)
Autónomo - Compartido y dedicado - Autodirigido (parche, actualización, escalado-CPU / almacenamiento), auto-seguro (encriptación, identificación de datos confidenciales, enmascararlo), auto-reparación (protección contra todo tiempo de inactividad)

Servicios de almacenamiento

NVMe local : servicio no persistente, capacidad de terabytes, almacenamiento a nivel de bloque, casos de uso: OLTP, NoSQL, almacén de datos, base de datos en memoria
Volumen de bloque : SSD, capacidad de petabytes, almacenamiento a nivel de bloque, casos de uso-DB, intercambio, VMFS / NTFS, arranque (discos del sistema operativo), bloque (discos de datos), es almacenamiento remoto, visto como SAN
Almacenamiento de archivos : NFS3, jerárquico (carpetas), Exabyte Capacity, casos de uso: la aplicación Oracle (EBS), HPC, proporciona acceso a través de la red (NAS), datos en reposo y cifrado en tránsito para todos los sistemas de archivos
Almacenamiento de objetos : altamente duradero, capacidad de petabytes, casos de uso: video, datos no estructurados, registro, cada objeto almacenado en Bucket (sin jerarquía de carpetas), almacena réplica de datos en anuncios separados por 3, es un servicio de nivel regional, no vinculado a cualquier instancia y el objetivo principal de almacenamiento ilimitado (imágenes, registros, archivos multimedia, copias de seguridad)

Opciones de conectividad:  

Dynamic Routing Gateway (DRG, un enrutador virtual) : para la conectividad local con su VCN, 2 vías puede conectarse
Conexión rápida: velocidad de puerto dedicada de 1 Gbps o 10 Gbps con soporte de Layer3 y BGP, también puede usar para emparejamiento privado y público
IPSec VPN (Sitio-2-sitio): si el cliente tiene requisitos de tráfico cifrados, múltiples túneles IPSec redundantes, uso privado de IP, Enrutamiento posible: BGP y estático
Internet Gateway: - para conexiones de internet bidireccionales, desde y hacia servidores web, por ejemplo
Service Gateway : permite que los recursos en VCN accedan a los servicios públicos de OCI, como el almacén de objetos sin el uso de NAT Gateway o internet, lo que permite el acceso a los servicios de Oracle en la región para proteger sus datos de Internet. ejemplo: conectividad de DB (una red privada) a Object-storage (red pública) para impulsar la copia de seguridad
Puerta de enlace NAT: solo conectividad saliente (no entrante): para que DB tenga actualizaciones o parches de los servicios basados ​​en Internet
Peering :
Interconexión local de VCN: ambos 2-VCN están dentro de la misma región, todos los recursos pueden comunicarse con IP privadas
Interconexión remota de VCN: ambos 2-VCN están en 2 regiones diferentes usando DRG, todos los recursos pueden comunicarse con IP privadas

Opciones de seguridad:

Lista de seguridad : aplicada a subredes (dentro y fuera), instancia a instancia dentro de VCN o fuera de VCN
NSG (grupo de seguridad de red) - nivel de NIC -> consiste en un conjunto de reglas que se aplican al conjunto de niveles de NIC, le brinda un control más granular
Balanceador de carga : frente a Internet (Public LB): asientos entre clientes (público) y servicios de back-end (red privada, aplicación o DB), L4-L7, FT + HA (comprobación de estado y algoritmos LB (round-robin, mínimo) -conexiones, etc.), descarga de SSL. LB privado también es posible -balanceador de carga privado creado en una subred específica de AD, o en una subred regional dentro de una sola región de dominio de disponibilidad (ver el dibujo a continuación)
El servicio de firewall de aplicaciones web protege las aplicaciones del tráfico de Internet malicioso y no deseado + protege cualquier punto de conexión a Internet, está basado en la nube, cumple con la industria de tarjetas de pago (PCI), 50 políticas por inquilino y 100 reglas de acceso por política
IAM (gestión de identidad y acceso): 
IAM es un servicio regional. Los usuarios deben pertenecer a un grupo; el grupo debe tener una política que tenga algún tipo de permisos para la totalidad de la tenencia o para un compartimento

Modelo de facturación + costo + precio
Todas las regiones de OCI tienen el mismo precio.

Factores que afectan el precio
Dimensionamiento de recursos: mayores recursos cuestan más
Tipos de recursos : antes de implementar, verifique qué tipo de recursos necesita
VM vs metales desnudos
VM vs Funciones
BYOL vs DB administrado
Costo de transferencia de datos
Gratis:
Entre instancias en el mismo AD, ya sea entrada (datos entrantes) o Egress (datos saliendo)
Entre AD's, ya sea ingreso o salida (AWS cobra un costo entre DC o AZ)
Entre regiones : las regiones están completamente aisladas
Egreso - de Cobro
Ingress - Gratis
Hacia y desde Internet :
Egreso - de Cobro
Ingress - Gratis
DRG + Fastconnect :
No paga nada (Egress / Ingress) cuando tiene estos dos para la conectividad local, AWS cobra una tarifa por esto.
Con OCI, la primera transferencia de datos salientes de 10 TB es gratuita.
Oracle Cloud Free Tier
Nivel gratuito : $ 300 créditos gratuitos válidos por 30 días, hasta 8 instancias, hasta 5 TB de almacenamiento
Nuevo nivel siempre gratuito : tiempo ilimitado, bases de datos autónomas de 2 oracle, VMS de cómputo 2-OCI, almacenamiento de bloque / objeto / archivo, LB, monitoreo, notificación

Presupuestos

El umbral mensual que puede definir de su gasto de OCI, defina alertas por correo electrónico que se envían cuando se está quedando sin su propio presupuesto
Reglas de alerta: gasto real o gasto previsto: 90% de mi presupuesto
Seguimiento de costos
Agregar etiquetas para todo
Agregar etiquetas en centros de costos - Departamento de finanzas. o Departamento de marketing: ayuda a identificar quién está gastando cuánto

Análisis de costos
Herramienta de visualización: lo ayuda a comprender el patrón de gasto
Puede filtrar los costos por fechas, etiquetas, compartimentos
Para usar el análisis de costos: debe ser miembro del grupo de administración
Modelo de precios
Paga lo que consumas (PAYG)
Se cobra solo por los recursos que consumiste
Sin compromiso inicial (canjear Capex por OPEX)
Cargos por hora
Recomendado para organizaciones que están probando nuevos servicios, creación rápida de prototipos o para escalado elástico.
Flex mensual (créditos universales)
Un mínimo de $ 1000 de cargo mensual y un mínimo de 12 meses de compromiso fijo, facturado por adelantado
Recomendado para clientes con cargas de trabajo de producción predecibles o grandes aplicaciones de larga duración, como recursos humanos, nómina, análisis y más.
Monthly Flex maximiza la reducción de costos con el gasto mensual predecible, similar a su plan telefónico mensual. Ofrece un tiempo de comercialización más rápido al ofrecer a los clientes la opción de usar cualquier servicio IaaS y PaaS.

Traiga sus propias licencias (BYOL)
Aplique sus actuales licencias Oracle locales (solo licencias Exadata) a servicios IaaS y PaaS equivalentes en la nube. Esto le proporciona movilidad completa de la licencia.







SAP "La plataforma de datos para la empresa inteligente"

En mi presentación en SAP FKOM Miami 2019 estuve presentando "La plataforma de datos para la empresa inteligente".

La plataforma SAP HANA con tecnología de bases de datos almacenadas en memoria, trabaja tanto de manera local como en cloud.

El rendimiento en términos analíticos alcanza un nivel por encima de todas las posibilidades gracias al trabajo que hace en tiempo real, así como en la gestión de todo tipo de aplicaciones. Entrega un entorno de datos superior a otra plataforma del mercado debido a que rinde en situaciones en las que los conjuntos de datos a analizar son más profundos de lo habitual.

Sobre la plataforma en sí, SAP lo indica en su sitio:

Una empresa inteligente opera sobre información estratégica proveniente de los datos –y más que nunca, esta información estratégica debe entregarse en tiempo real–. La velocidad es la esencia. La complejidad es el enemigo. La capacidad de conectar todos los tipos de datos a través de fuentes y silos es fundamental para el éxito. Lo que las organizaciones necesitan es una plataforma de datos que esté a la altura de la tarea. Esto es tan cierto para los clientes de SAP como lo es para SAP mismo –por lo cual SAP se ha trasladado a la plataforma SAP HANA® (Rescatado de www.sap.com)

lunes, 29 de julio de 2019

Tecnología de Base de Datos en memoria


La tecnología de base de datos en formato de filas la venimos utilizando hace más de cuarenta años, sin embargo, esta se encuentra obsoleta para los requerimientos de las empresas que están en proceso de su transformación digital.
Las bases de datos tradicionales cuando consultan información en el disco para después subirla a la memoria principal generan cuellos de botella, donde esto dependerá también del tipo de disco que se tenga. Aun así, siendo disco de estado sólido, o tarjetas flash, continúa siendo más lento que la memoria.
Además de brindar tiempos extremadamente rápidos de respuesta a consultas, la analítica en memoria puede reducir o eliminar la necesidad de indexar datos y almacenar datos pre-agregados en cubos OLAP (procesamiento analítico en línea) o tablas agregadas. Esta capacidad reduce los costos de informática y permite una implementación más rápida de aplicaciones de Business Intelligence (inteligencia empresarial) y Business Analytics (analítica empresarial).
Las tecnologías en memoria ayudan a lograr mejoras de rendimiento en transacciones (OLTP) y análisis (OLAP). Dependiendo de su carga de trabajo, pueden permitir multiplicar el rendimiento del procesamiento de transacciones, y hasta por ciento de veces más en el caso de las consultas de análisis, en comparación con las tablas y los índices tradicionales.
Para tal efecto analizamos la tecnología in-memory computing (computación en memoria), que nos habilita el procesamiento de grandes cantidades de datos en la memoria principal (RAM) para ofrecer resultados inmediatos en las transacciones y tareas de análisis.
Hoy en día muchas de las aplicaciones requieren respuestas en tiempo real, donde se pueden utilizar base de datos en memoria como solución. Un ejemplo de ellos sería una aplicación para controlar el tráfico aéreo o venta y reserva de pasajes, o en industrias en las que el tiempo de respuesta es crítico.

¿Qué es Sap Hana?

SAP HANA es una plataforma de computación in-memory que permite acelerar los procesos de negocio, proporciona más Business Intelligence y simplifica el entorno de las tecnologías de la información.
Proporciona todos los servicios para cubrir las necesidades de tratado de datos existentesElimina la carga de tener que mantener sistemas de datos históricos por separado y datos en diferentes almacenes de datos, lo que le permite poder realizar operaciones en tiempo real y tener la capacidad de tomar decisiones de negocio basadas en el análisis de datos con mayor agilidad, lo que es algo necesarios debido a la era de la nueva economía digital en la que nos encontramos.
SAP HANA permitirá a los departamentos de Tecnologías de la Información liberarse de las tareas rutinarias, desgastantes y de poco valor añadido relacionadas con la gestión de datos y bases de datos, este departamento quedaría liberado de este tipo de tareas pudiendo dedicar más tiempo a otro enfoque como es la innovación tecnológica.
SAP HANA combina una base de datos que cuenta con servicios de aplicaciones, analíticas de alta velocidad y herramientas flexibles de adquisición de datos en una única plataforma in-memory. Como cualquier base de datos in-memory, almacena y recupera datos usados por las aplicaciones. También puede actuar como depósito, integrando datos de diferentes fuentes de datos con datos transaccionales en tiempo real para ofrecer información estratégica actualizada. 
La plataforma incorpora visualización de datos y funcionalidades de calidad para acceder y analizar rápidamente datos de cualquier fuente. Ofrece un procesamiento de datos avanzado para datos de texto, espaciales, gráficos y en serie en un único sistema. 

domingo, 2 de octubre de 2016

Ejemplo con DBRM - Database Resource Manager


    La distribución de los recursos no es nueva dentro de una base de datos Oracle, donde existe la posibilidad de distribuir recursos de CPU por medio de DataBase Resource Manager.
En Exadata tenemos también IORM que hablare en otro post

Acá un ejemplo de como implementar DBRM
Se crea un Grupo Consumidor. Se crean las Directivas. Una con utilización del 10%, otra 50%, otra 10% y para otros 10% de utilización de recursos

****************************************
IMPLEMENTANDO RESOURCE MANAGER
****************************************
Limpiar los cambios de las areas pendientes:
exec dbms_resource_manager.clear_pending_area();
Las areas pendientes son creadas:
exec dbms_resource_manager.create_pending_area();
Se crean los Consumer Group
exec dbms_resource_manager.create_consumer_group( 'USUARIO_SQL_GROUP', 'Sessions Usuarios SQL');
exec dbms_resource_manager.create_consumer_group( 'USUARIO_PROCESO_GROUP', 'Sessions Usuarios Proceso');
exec dbms_resource_manager.create_consumer_group( 'USUARIO_SANDB_GROUP', 'Sessions Usuarios Sandb');

Asignar usuarios aun Consumer Group
exec DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING (DBMS_RESOURCE_MANAGER.ORACLE_USER, 'SCOTT', 'USUARIO_SQL_GROUP');
exec DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING (DBMS_RESOURCE_MANAGER.ORACLE_USER, 'HR', 'USUARIO_PROCESO_GROUP');
 
Crear un nuevo resource plan, usando los siguientes PL/SQL.
exec dbms_resource_manager.create_plan( 'DB_ODS_PLAN','Plan for database ODS');
Se crean las Directivas. Una con utilizacion del 10%, otra 50%, otra 10% y para otros 10% de utilización de rescursos
exec dbms_resource_manager.create_plan_directive( 'DB_ODS_PLAN', 'USUARIO_SQL_GROUP', 'Percentage of CPU for APP_1: Usuarios', mgmt_p1 => 10, max_utilization_limit => 40);
exec dbms_resource_manager.create_plan_directive( 'DB_ODS_PLAN', 'USUARIO_PROCESO_GROUP', 'Percentage of CPU for APP_2: Procesos', mgmt_p1 => 50, max_utilization_limit => 100);
exec dbms_resource_manager.create_plan_directive( 'DB_ODS_PLAN', 'USUARIO_SANDB_GROUP', 'Percentage of CPU for APP_3: Sandb', mgmt_p1 => 30, max_utilization_limit => 50);
exec dbms_resource_manager.create_plan_directive( 'DB_ODS_PLAN', 'OTHER_GROUPS', 'Percentage of CPU for OTROS', mgmt_p1 => 10, max_utilization_limit => 100);

Se Valida el Plan y luego se Crea
exec DBMS_RESOURCE_MANAGER.VALIDATE_PENDING_AREA();
exec DBMS_RESOURCE_MANAGER.SUBMIT_PENDING_AREA();

Finalmente Se asigna el Plan a la Base de Datos:
alter system set resource_manager_plan = 'DB_ODS_PLAN' sid='*';

También puedes limitar la cantidad de CPU asignados a la instancia.
Se denomina Instance Caging en 11gR2

alter system set cpu_count=16  sid='*';

****************************************
CONSULTANDO RESOURCE MANAGER
****************************************
Ver todos los resource plans existentes:
SELECT plan, comments, status FROM dba_rsrc_plans;

Revisar los actuales active plans:
SELECT name, is_top_plan FROM v$rsrc_plan;

Consumer groups asignados a usuarios o roles:
SELECT * FROM dba_rsrc_consumer_group_privs;

Actuales consumer groups para sesiones:
set linesize 1000
SELECT sid, serial#, username, resource_consumer_group FROM v$session;

*********************************************************************
Script para generar Carga y probar la utilización de recursos   *****
*********************************************************************
Generar Carga:

DECLARE
    sqrtval NUMBER := 0;
BEGIN
    FOR idx1 IN 1..1000000
        LOOP
            FOR idx2 IN 1..1000000
                LOOP
                    SELECT (SQRT(idx2/idx1)) INTO sqrtval FROM DUAL;
                END LOOP;
        END LOOP;
END;
/

martes, 26 de abril de 2016

Oracle SuperCluster

Imagen: http://www.slideshare.net/OracleHardware/creating-a-maximum-availability-architecture-with-sparc-super-cluster


Oracle SuperCluster es un completo sistema de ingeniería utilizado para consolidación de bases de datos y aplicaciones Oracle. Entrega un rendimiento extremo, disponibilidad y eficiencia.

En su descripción general Oracle indica:
·         Ofrece un rendimiento extremo y 10 veces mejor precio/rendimiento que una solución basada en IBM Power7 + comparable.
·         Basada en el servidor de bases de datos más rápido del mundo, el almacenamiento de bases de datos más rápido del mundo, y el procesador más rápido del mundo.
·         Asegura la mayor disponibilidad, sin fallas, y cero tiempo de inactividad por mantenimiento.
·         Brinda la mayor eficiencia: hasta 10 veces mayor compresión de bases de datos, 3 veces menos gastos administrativos y 5 veces más rápida implementación que los sistemas hechos por usted mismo.
·         Consolida los OLTP y las bases de datos de almacenes de datos más grandes y críticos para la misión en el mismo sistema, por lo que es ideal para las aplicaciones más grandes de toda la empresa.
·         Integra los mejores servidores, almacenamiento, redes y software de Oracle.

Citado de: http://www.oracle.com/lad/engineered-systems/supercluster/supercluster-t5-8/overview/index.html

Todo lo indicado es muy bueno de un producto. Sin embargo, puedo indicar que he tenido la oportunidad de implementar un SuperCluster Full, formateando sus celdas de disco Exadata e instalando en el dominio de base de datos versiones de BD 11g y 12c, tanto en RAC como Standalone las cuales se comportan muy bien sobre Solaris (Un T5-8 Ejecuta Oracle Solaris 10 y 11, y admite Oracle Solaris 8 y 9).
Como toda instalación tiene sus mañas y más que nada porque hay distintos Bug que te afectan, donde hay que aplicar sus respectivos parches al GI y al OH. Ahora, hay que googlear harto y otro tanto en las páginas de  Support, pero todos los errores tienen solución.
A diferencia de un Exadata (que es ideal solo para BD Oracle) acá tenemos un sistema de ingeniería completo e integrado donde no solo podemos correr Zonas con base de datos, sino también tenemos dominios para ejecutar Zonas con Aplicaciones (Ej Weblogic, Bus OSB, etc). Sobre el almacenamiento para las bases de datos tenemos disponible las Celdas Exadata y para aplicaciones un Oracle ZFS Storage, todo conectado por redes InfiniBand donde se obtienen excelentes resultados.