Actividad 3 PDF
Actividad 3 PDF
Actividad 3 PDF
ACTIVIDAD 3
PRESENTADO POR:
CATEDRATICO:
FACULTAD DE INGENIERIA
SANTIAGO DE CALI
2020
Introducción
Generalmente existen necesidades puntuales en las organizaciones que se pueden atender con
sentencias agrupadas sobre el código sql que dan lugar a un plan ejecución sobre procedimientos
almacenados (store procedure), funciones y disparadores (triggers) que permita potenciar y
flexibilizar el mismo sql, compilando mejor a la ejecución de instrucciones y automatizando algunos
procesos que no requieren la intervención directa de un usuario de la base de datos. Todo ello requiere
necesariamente crear objetos dentro del sistema gestor que representen un modelo relacional
normalizado dando optimas soluciones a las necesidades de consulta.
Tabla de contenido
1 Objetivos .............................................................................................................. 4
3 Definiciones ......................................................................................................... 8
10 Conclusiones................................................................................................... 24
11 Bibliografía ..................................................................................................... 25
1 Objetivos
OBJETIVO: Reconocer.
TEMA: Administracion de bases de datos.
Reconocer la importancia profesional de los roles, permisos y usuarios dentro de las
organizaciones y sus acciones dentro de la estructura orgánica de los departamentos de tecnología
en las organizaciones.
OBJETIVO: Identificar.
TEMA: Administracion de bases de datos.
Identificar y conocer la funcionalidad de algunas de las utilidades que se requieren para el manejo
de las bases de datos.
.
2 ¿Qué es la Instancia ASM Automatic Storage Management?
ASM son las siglas de Automatic Storage Management, que es un producto de Oracle que hace de
gestor de volúmenes lógicos y/o sistema de ficheros para albergar los ficheros de las bases de datos
de la misma compañía. De esta forma, cuando se crea una base de datos Oracle se puede escoger que
el almacenamiento para sus archivos sea ASM en vez de un sistema de archivos normal. ¿Pero qué
es en realidad ASM? ASM es una instancia Oracle, con su SGA y sus procesos background, que
interactúan con las instancias de la base de datos "cliente" para proporcionarle la información
necesaria para que pueda leer y escribir en los archivos de datos (datafiles, control files, redo logs,
archived logs, flashback logs, spfiles, RMAN backups, Incremental tracking bitmaps y datapumps
dumpfiles). Es importante notar que ASM no sirve los bloques de datos a las instancias "cliente", sino
que son ellas mismas las que acceden a los discos para leer o escribir. ASM lo único que hace es
proporcionarle metainformación sobre dónde leer o escribir los datos.
La instancia ASM, como instancia que es, en vez de montar una base de datos monta disk groups,
que son agrupaciones de ASM disks que se usan de forma transparente como si fuera uno sólo. Para
verlo con más facilidad, es como si los disk groups fueran tablespaces y los ASM disks, datafiles. Los
ASM disks pueden ser LUNs, discos físicos, particiones de discos físicos o incluso volúmenes
lógicos, aunque Oracle no recomienda esto último porque existiría solapamiento de funciones entre
el volume mánager instalado y el propio ASM.
ASM puede dar servicio tanto a una base de datos única como a un RAC (Real Application Clúster),
que de hecho es donde es más habitual instalarlo. En un RAC, ASM corre en cada nodo y se comunica
con el resto de ASMs del RAC a través de la interconexión, pero no nos perdamos en la configuración
de RAC y ASM.
Retomando el término disk group, como hemos dicho, un fichero de las bases de datos "cliente" se
asigna a un único disk group (un fichero sólo se asocia a un disk group, pero un disk group tiene
multitud de ficheros). Las extensiones de los ficheros se distribuyen homogéneamente entre los ASM
disks que conforman el disk group equilibrando así la carga de trabajo de los discos y mejorando el
rendimiento general del sistema. Normalmente, las instancias usan sólo 2 disk groups para alojar
todos sus archivos, una para datos y otra para fast recovery area.
Otra de las funcionalidades de ASM es que permite añadir o eliminar en caliente ASM disks
redistribuyendo el contenido del disk group entre los ASM disks que haya. Si se quiere eliminar un
ASM disk, antes ASM tiene que redistribuir los datos del disco a eliminar entre los restantes. Si se
añade un ASM disk, ASM redistribuye el contenido del disk group entre todos los ASM disks, dado
que ahora hay uno más. Lo más interesante es que esta operación la hace ASM en caliente permitiendo
a las instancias acceder a sus ficheros mientras se está produciendo el rebalanceo.
Además de poder hacer redistribución (striping), ASM puede hacer redundancia (mirroring) de los
datos. Para ello, al crear un disk group se indica el failure group asociado y ASM distribuye cada
copia a un fail group distinto. La idea del fail group es coger los ASM disks del disk group y hacer
grupos distintos, los llamados fail groups, de forma que cada grupo esté protegido de los fallos que
pueda tener el otro. Ahora bien, en función del tipo de contingencia para la que nos queramos proteger
tendremos una agrupaciones u otras. Por ejemplo, un disk group con dos ASM disks podemos
definirlo con dos fail groups, cada uno con un sólo disco. Así, la avería de un disco no me dejaría sin
datos (tengo otro réplica del afectado). Pero si hay una avería de la controladora de los discos, que es
común para ambos, nos quedaríamos sin acceso a los datos. Entonces habría que escoger discos
distintos en distintas controladoras. ¿Y si se avería el hardware en donde residen ambas
controladoras? De acuerdo, pues usamos dispositivos de almacenamiento absolutamente distintos.
Con relación a la redundancia, también se puede hacer réplica de los datos duplicándolos o
triplicándolos. Cuando se define el disk group se indica si la replicación será EXTERNAL (sin
replicación ASM), NORMAL (se duplican los datos) o HIGH (se triplican los datos). En una
configuración NORMAL serán necesarios dos fails groups y en HIGH, tres fails groups.
como LVM.
La siguiente descripción es válida para sistemas Oracle 10g, 11g en Windows y no es válida para
sistemas Oracle 11gR2: En una consola DOS de windows el usuario debe ubicarse dentro del
directorio HOME de oracle en el subdirectorio database Crear un archivo llamado init+ASM.ora
dentro de la carpeta anterior conteniendo el siguiente parámetro:
INSTANCE_TYPE = ASM
Establecer ORACLE_SID:
set ORACLE_SID=+ASM
Crear servicio dedicado a la instancia ASM:
sqlplus / as sysdba
Dentro de sqlplus crear la instancia e iniciarla por primera vez:
startup nomount;
La instancia se ha creado con éxito y está lista para asignación de grupos de discos
También es posible realizar esta operación usando el asistente de configuración de bases de datos de
Oracle, seleccionando la opción Crear instancia ASM
Con la llegada de la versión 11gR2 este asistente ya no contiene la opción de crear una instancia
ASM y es necesaria la instalación de Oracle Grid infrastructure y tener presente el servicio de
Cluster (CSS) para trabajar con ASM.
3 Definiciones
Un trigger o disparador es un objeto que se asocia con tablas y se almacena en la base de datos. Su
nombre se deriva por el comportamiento que presentan en su funcionamiento, ya que se ejecutan
cuando sucede algún evento sobre las tablas a las que se encuentra asociado. Los eventos que hacen
que se ejecute un trigger son las operaciones de inserción (INSERT), borrado (DELETE) o
actualización (UPDATE), ya que modifican los datos de una tabla.
La utilidad principal de un trigger es mejorar la gestión de la base de datos, ya que no requieren que
un usuario los ejecute. Por lo tanto, son empleados para implementar las REGLAS DE NEGOCIO
(tipo especial de integridad) de una base de datos. Una Regla de Negocio es cualquier restricción,
requerimiento, necesidad o actividad especial que debe ser verificada al momento de intentar agregar,
borrar o actualizar la información de una base de datos. Los triggers pueden prevenir errores en los
datos, modificar valores de una vista, sincronizar tablas, entre otros.
Ejemplo:
Un sencillo ejemplo (para SQL Server) sería crear un Trigger para insertar un pedido de algún
producto cuando la cantidad de éste, en nuestro almacén, sea inferior a un valor dado.
3.2 Procedimiento almacenado
Un procedimiento almacenado de SQL Server es un grupo de una o más instrucciones Transact SQL
o una referencia a un método de Common Runtime Language (CLR) de Microsoft .NET Framework.
Los procedimientos se asemejan a las construcciones de otros lenguajes de programación, porque
pueden:
• Devolver un valor de estado a un programa que realiza una llamada para indicar si la
Ejemplo:
4 ¿Qué es una tabla DUAL?
La tabla DUAL es una tabla especial de una sola columna presente de manera predeterminada en
todas las instalaciones de bases de datos de Oracle. Se utiliza para seleccionar una seudocolumna
como SYSDATE o USER. La tabla tiene una sola columna VARCHAR2(1) llamada DUMMY que
tiene un valor de 'X'.
Ejemplo:
La tabla dual es una tabla comodín, la cual existe en el sistema de base de datos Oracle como una
tabla por defecto la cual tiene un solo campo (DUMMY) y un solo registro (X).
La tabla dual se utiliza como recurso para poder realizar querys más dinámicos o ejecutar una función
para mejorar una consulta.
Output:
Ejemplo:
Se requiere por medio de una consulta realizar una lista de 3 ciudades de Colombia.
Output:
5 ¿Qué es un tablespace?
Un tablespace es una unidad lógica de almacenamiento dentro de una base de datos Oracle.
Cada tablespace se compone de, al menos, un datafile y un datafile solo puede pertenecer a un
tablespace.
Cada tabla o índice de Oracle pertenece a un tablespace, es decir cuando se crea una tabla o índice se
crea en un tablespace determinado.
Los tablespace son estructuras donde se almacenan los objetos del esquema de la base de datos, tales
como tablas, índices, etc. con la particularidad de poderse repartir en varios ficheros. Por tanto, las
bases de datos tienes varios tablespaces y estos a su vez varios datafiles. Un datafile sólo pertenece a
un tablespace y sólo pertenece a una Base de Datos.
• Tablespace SYSTEM:
Base de Datos.
• Tablespaces TEMPORALES:
pueden crear objetos permanentes como pueden ser los índices, las
Un datafile es la representación física de un tablespace. Son los "ficheros de datos" donde se almacena
la información físicamente. Un datafile puede tener cualquier nombre y extensión (siempre dentro de
las limitaciones del sistema operativo), y puede estar localizado en cualquier directorio del disco duro,
aunque su localización típica suele ser $ORACLE_HOME/Database. Un datafile tiene un tamaño
predefinido en su creación (por ejemplo, 100Mb) y este puede ser alterado en cualquier momento.
Cuando creemos un datafile, este ocupará tanto espacio en disco como hayamos indicado en su
creación, aunque internamente esté vacío. Oracle hace esto para reservar espacio continuo en disco y
evitar así la fragmentación. Conforme se vayan creando objetos en ese tablespace, se irá ocupando el
espacio que creó inicialmente.
Un datafile está asociado a un solo tablespace y, a su vez, un tablespace está asociado a uno o varios
datafiles. Es decir, la relación lógica entre tablespaces y datafiles es de 1-N, maestro-detalle.
7 ¿Qué es un rol y un permiso en la base de datos?
En general se emplean para asignar los privilegios relacionados con los usuarios finales de las
aplicaciones de un sistema o para asignar roles a otro roles
• Un rol puede tener privilegios del sistema y privilegios de objetos del schema.
usuario.
Privilegios/Permisos
Entendemos por usuario a cualquier persona que accede al sitio web. Los usuarios se pueden
agrupar en roles en función de las operaciones que se les permite realizar. Es decir, que cada rol se
caracteriza por disponer de una serie concreta de permisos. Se entiende por permiso la posibilidad
de ejecutar determinadas operaciones o no sobre los diferentes elementos del CMS.
Podemos definir a los usuarios como toda persona que tenga todo tipo de contacto con el sistema de
base de datos desde que éste se diseña, elabora, termina y se usa.
Un privilegio es un derecho para ejecutar un tipo particular de sentencia ó para acceder un objeto de
otro usuario.
• Explícitamente.
El objetivo de los roles es permitir una mejor administración de los privilegios, por lo general, se
deberían garantizar privilegios a los roles y no a los usuarios individuales
Tipos De Usuarios
• Visitante: usuario que simplemente podrá leer o buscar en los contenidos y no necesita
autentificarse.
• Editor: gestiona a los usuarios y todos los contenidos y no tiene porque tener nociones
técnicas del funcionamento del sistema. Puede ser p.ej. el propietario de una tienda virtual o
sistema, configurando o modificando cualquier parámetro de éste. Este usuario tiene control
total sobre el sitio web, por lo que puede realizar cualquier operación de configuración o
Un usuario puede realizar cualquier tarea dentro de la base de datos, entre las que se incluyen
El Big Data es un concepto relativamente reciente que ha venido para quedarse. Derivado de la
evolución de Internet, está presente en cualquier foro empresarial, viene incluido como disciplina
formativa en cualquier programa académico relacionado con las nuevas tecnologías y es uno de los
requisitos indispensables para la incorporación de nuevos profesionales del sector en cualquier tipo
de organización.
Los “datos masivos” o “datos a gran escala” son la nueva base sobre la que se sustenta cualquier
sistema informático del momento. Su objetivo: convertir datos en información que facilite la toma de
decisiones; un hecho que está generando grandes oportunidades de negocio en la era actual. Según se
desprende de la guía de Empleo IT: 17 profesiones con futuro’, elaborada por Deloitte e Infoempleo,
el perfil Big Data Architect es uno de los que más futuro tiene dentro del sector IT.
La arquitectura de Big Data consiste en tratar y analizar grandes volúmenes de datos que no pueden
ser gestionados de manera convencional, al superar las capacidades de otras herramientas de software
utilizadas convencionalmente para el almacenamiento, gestión y procesamiento de datos. El
arquitecto de datos trabaja de cerca con el cliente y con otros profesionales como el “arquitecto de
soluciones” y es capaz de traducir los requisitos empresariales del cliente en una solución de Big
Data.
Este profesional tiene un profundo conocimiento de las nuevas tecnologías, entiende la relación entre
ellas y sabe cómo se pueden integrar y combinar para resolver eficazmente cualquier problema
relacionado con los datos. El Big Data Architect tiene la capacidad de diseñar sistemas de
procesamiento de datos a gran escala para la empresa y puede diseñar sistemas y modelos para
manejar grandes y diferentes variedades de datos, dependiendo del volumen, velocidad o veracidad
de los mismos.
El arquitecto de Big Data necesita unas habilidades que aúnan las habilidades numéricas con las
sociales. Por su condición tecnológica, un experto en Big Data tendrá que saber de programación,
estadística y tener conocimientos matemáticos, en técnicas de análisis y de computación. Pero
también necesita buenas habilidades comunicativas, sobre todo para transmitir al resto de la
organización lo relacionado con la identificación de problemas de negocio, la definición del mejor
modelo de datos a aplicar para solucionar dichos problemas, o para presentar y explicar el resultado
del análisis de datos y su nivel de confiabilidad.
9 Caso Practico
Un listado de todos los empleados que pertenecen a los departamentos de Administración o IT.
2. En el grupo de trabajo determinar 10 consultas donde se realicen subconsultas, entre las tablas,
definirlas y mostrar el resultado.
B) Una función (FN_CALCULA_SENA) que calcule el 1% para SENA. Dentro de esta función debe
invocar la función FN_CALCULA_SB
10 Conclusiones
• http://basesdedatosoracle.blogspot.com/2011/11/introduccion-asm.html
• https://es.wikipedia.org/wiki/Trigger_(base_de_datos)
• https://oracleracnotes.wordpress.com/2008/08/10/%C2%BFque-es-asm/
• http://oracle-y-yo.blogspot.com/2012/01/oracle-asm.html
• https://www.ecured.cu/Procedimientos_almacenados#Ejemplos
• https://docs.oracle.com/cd/E40205_01/html/E23230/gjjew.html
• https://prezi.com/lgtxy00p1gwa/usuarios-privilegios-y-roles-de-las-bases-de-datos/
• https://www2.deloitte.com/es/es/pages/human-capital/articles/big-data-
arquitect.html