miércoles, 25 de septiembre de 2013

Instancias de un SGBD y su aplicación

La instancia es la unión de los procesos y de las estructuras de memoria, los cuales se hallan en ejecución para el acceso de los usuarios a los datos a través de diferentes aplicaciones como por ejemplo administración, desarrollo y otras aplicaciones de usuario final.

 
Tipos de instancias

Online Transaction Processing (OLTP): compra/venta, telemarketing
Segmentos cortos de rollback
Shared Pool muy largo
Redo log suficiente
Indices en discos separados
Segmentos temporales pequeños

DecisionSupportSystems (DSS): datawarehouse
Segmentos largos de rollback
Shared Pool relativamente corto
Redo log suficiente
Indices apropiados
Segmentos largos de temporal
ParallelQuery en la medida de lo posible (si está disponible)

Los usuarios que deseen conectarse a una base de datos, se conectan a lo que se conoce como la instancia de la base de datos (del inglés instance).

Es el modo más sencillo de trabajo, el usuario dispone de un software en su máquina local, por lo que se encuentra en el lado del cliente, capaz de conectar con el SGBD. En ese momento se lanza un proceso de usuario. Ese proceso deberá comunicarse (a través de las redes apropiadas) con el proceso de servidor, un programa lanzado en el lado del servidor que está permanentemente en ejecución.

El proceso de servidor comunica a su vez con la instancia de la base de datos, otro proceso en ejecución a través del cual se accede a la base de datos.


Configurar instancias

Cada instancia de Motor de base de datos debe configurarse satisfacer los requisitos de rendimiento y disponibilidad definidos para las bases de datos hospedadas por la instancia.El Motor de base de datos incluye opciones de configuración que controlan comportamientos como el uso de recursos y la disponibilidad de características como la los comportamientos de control como el uso de los recursos y la disponibilidad de características como auditoría o recursividad de desencadenador.
 
Es el conjunto de procesos del servidor que permiten el acceso a la base de datos. Es un conjunto de estructuras de datos y procesos en memoria. Está formado por:
 
SGA. Area global de sistema. Se trata de la zona de memoria común para todos los procesos de servidor, contien las siguientes estructuras de datos fundamentales:
Buffer de caché de base de datos. Almacena bloques de datos leídos de la base de datos a fin de que las próximas consultas no necesiten acudir a disco y se las pueda servir de estos datos en la caché.
Buffer redo log. Estructura que almacena los datos anteriores y posteriores a cada instrucción y así facilitar tanto su anulación, como su realización en caso de problemas.
Large pool. Área de la memoria que proporciona espacio para los datos necesarios para realizar operaciones de backup y restauración, así como los datos de sesión y otros que permitan aliviar el trabajo de la instancia.
Shared pool. Consta de la caché del diccionario de datos y de la caché de instrucciones SQL, PL/SQL. De esa forma se acelera la ejecución de consultas e instrucciones que utilicen los mismos metadatos o bien que se traten de instrucciones parecidas a otras anteriormente ejecutadas.
Java Pool. Sólo se usa si hemos instalado Java para agilizar el proceso de las instrucciones en ese lenguaje.
Procesos en segundo plano. Programas en ejecución que realizan las tareas fundamentales sonre la base de datos, entre ellos:
DBWR. Escribe los datos del buffer de cache de la base de datos de la SGA a la base de datos en disco (a los archivos de datos). Eso no ocurre en todo momento, sino cuando se produce un evento de tipo checkpoint.
Un checkpoint ocurre cuando se ha consumido un tiempo determinado por el DBA, que se establece para que cada cierto tiempo los datos pasen a grabarse en ficheros de datos y así asegurarles en caso de problemas. El hecho de que esto se haga solo cada cierto tiempo (el tiempo establecido para el checkpoint) se debe a que, de otro modo, el funcionamiento sería muy lento si se accediera más a menudo al disco.
LGWR. Es el proceso que genera escrituras secuenciales en los redo logs (archivos log de rehacer) que son los archivos que guardan la información necesaria para poder recuperar un estado anterior en los datos.
Las instrucciones DML están limitadas por la velocidad de este proceso al guardar los datos. LGWR escribe desde el buffer del caché redo en el SGA hacia los archivos redo en disco.
CKPT. Proceso encargado de comunicar la llegada de un checkpoint, punto de control que ocurre cíclicamente (y que se puede modificar poe el DBA) tras el cual se deben de escribir los datos de memoria a los archivos de datos.
SMON. System Monitor.Proceso encargado de monitorizar el sistema para que funcione correctamente tras un error grave. Además se encarga de la optimización del sistema mejorando el espacio en disco y elimando definitivamente (mediante rollbacks) datos irrecuperables.
PMON. Process Monitor.Se encarga de la comunicación con la PGA y especialmente con el proceso servidor para manejar la conexión con el cliente, eliminado transacciones de usuarios erróneas (por desconexión por ejemplo) y liberando la memoria que se reservó para los usuarios.
ARCn. Proceso de archivado de los archivos Redo. Sirve para que esos datos siempre estén disponibles. Sólo funciona en modo ARCHIVELOG de la base de datos.
 
Aplicaciones
Un ejemplo de instancia en un lenguaje de programación visual, sería tomar o arrastrar un objeto de la barra de herramientas o de la lista de librerías y colocarlo en el escritorio o escenario de trabajo (estamos creando una instancia de ese objeto, una copia). Si arrastramos 10 botones al entorno visual de trabajo, estamos creando una instancia del botón original, si a cada botón le cambiamos el nombre, tendremos 10 botones que heredan las mismas propiedades y métodos del objeto original. Tenemos como resultado que con un solo botón hicimos 10 y nuestro archivo pesara como si tuviese uno solo.
De esta forma, partiendo de lo que conforma a un objeto original (propiedades y métodos) se reutilizan sus funciones creando una instancia del mismo en distintas partes del programa donde se necesite. Si el objeto original cambia o le es agregado algún nuevo atributo, las instancias lo heredaran puesto que son una copia del objeto original.

sábado, 21 de septiembre de 2013

costo-beneficio de tres SGB Para reporte control de pacientes de una red de clinicas veterinarias

SMBD Costo Beneficio
Mysql Mysql garantiza una licencia libre solamente si la aplicación que la usa es liberada bajo la licencia GPL. Si quiero crear un software propietario, usando una BD libre, no podre utilizar Mysql de manera libre, si no pagando una licencia. 1. Mysql Software es Open Sourse
2. Velocidad al realizar las operaciones, lo que le hace uno de los gestores con mejor rendimineto.Bajo costo en requerimientos para la elaboracion de base de datos, ya que debido a su bajo consumo.
3. Puede ser ejecutado en una maquina con escasos recurso sin ningun problema.
4. Facilidad de configuracion e instalacion
5. soporta gran variedad de Sistemas Operativos.
6. Baja probabilidad de corromper datos, inlcuso si los errores no se producen en el propio gestor, si no en el sistema en el que esta.
7. su conectividad, velocidad y seguridad hacen de Mysql Server altamente apropiado para acceder bases de datos en internet.
8. El software Mysql usa la licencia GPL
Oracle Named User  Software Update License & Support Procesor License Software Update License & Support 1. Puede ejecutarse en todas las plataformas.
DataBase Products 2. Oracle soporta todas las funciones que se esperan de un servidor.
Oracle Database  $ 180.00  $39.60  $5,500.00  $1,276.00  3. Permite el uso de particiones para la mejora de la eficiencia. 
Standard Edition Ore  $ 350.00  $77.00  $ 17,500.00  $ 3,850.00  4. El software del servidor puede ejecutarse en multitud de sistemas operativos 
Estándar Edition  $ 850.00  $ 209.00  $ 47,500.00  $ 10,450.00  5. Existe inlcuso una version personal para Windows 9x, lo cual es un punto a favor para los   desarrolladores que se llevan trabajo a casa. 
Enterprise Edition  $ 480.00  $ 101.20  -   - 
Personal Edition  -   -   $ 23,000.00  $  5,060.00  6. oracle es la base de datos con mas orientacion hacia internet. 
Mobile Server  $ 200.00  $ 44.00  $ 10,000.00  $   2,200.00
SqlServer DataBase Products  1.Es un Sistema de Gestion de Base de Datos relacionales. 
Enterprise  $   6,874.00  2. Puede ser util para manejar y-o obtener datos de la red de redes 
Business Inteligence  $   8,592.00  3. Ofrece una potente forma de unir SQL e Internet 
Standard Edition Ore  $   1,793.00  4. Utilizar una extension al SQL estandar, que se denomina Transact SQL. 
Cliente Access License  $      209.00  5. El transact SQL, soporta la definicion, modificacion y eliminacion de base de datos, tablas, atributos, indices, etc. 
 6. Para Empezar SQL Server nos permite olvidarnos un poco de los ficheros que forman la base de datos. En Acess tenemos que abrir el fichero.mdb para ver el contenido. 
 7. si trabajamos en una red local nos permite agergar otros servidores de SQL Server. 

jueves, 5 de septiembre de 2013

Instalacion de SGBD en diferentes plataformas

 
Instalacion de Oracle
Video tutorial para la instalacion de Oracle en Windows 7
 
 
Cómo instalar Oracle Database 11g Release 2 y SQL Developer 3.2 en el ordenador bit Windows 8 64
 
 
Instalacion de oracle 10g en ubuntu 12.04
 
 
 
Instalación MySQL en Linux
 
En este ocasión, revisaremos como se instala MySQL Server en Ubuntu Linux, es importante mencionar que las distribuciones modernas de Linux, tienen un administrador de paquetes el cual permite instalar y desinstalar software de una manera mucho mas fácil, MySQL es parte de los paquetes en este tipo de repositorios y a través de administradores de paquetes de este tipo, es posible instalarlo.
Adicionalmente, a la opción de instalar MySQL por medio de administradores de paquetes, también es posible instalarlo a través del instalador MySQL tar gz, pero este procedimiento lo describiremos mas adelante.
Aun recuerdo los tiempos en los que gran parte del software para linux, se tenia que obtener el código fuente, compilar y resolver dependencias de librerías en función de la distribución de linux a utilizar, esos tiempos han cambiado y ahora es muy sencillo instalar software en distribuciones modernas de linux como por ejemplo: Ubuntu.
 
En ubuntu, existe un “package manager” conocido como “synaptic package manager“, el cual es posible lanzarlo en el Menú: System -> Administration -> Synaptic Package Manager, a través de synaptic, podemos seguir los siguientes pasos para poder instalar en menos de 5 minutos, la ultima versión disponible del binario MySQL Server Community.
Nota.- el administrador de paquetes “synaptic“, instala de forma automatizada todas las librerías y prerrequisitos ( creación de usuario y grupo mysql) en el sistema operativo Ubuntu Linux
Paso 1.- Lanzar Synaptic Package Manager; Menu System -> Administration -> Synaptic Package Manager
 
Paso 2.- Buscar MySQL Server, en el repositorio (ingresar mysql-server, en la caja de texto de “Quick Search”)

Paso 3.- Instalación MySQL Server
 
 
Paso 4.- Asignación de password para cuenta root ( administrador ) de MySQL
 
 
Paso 5.- Validación de paquetes instalados

Paso 6.- Ingreso a la consola de MySQL
Para ingresar a la consola de comandos de MySQL, lanzamos una terminal a través del Menú: Applications -> Accessories -> Terminal
 
 
 
 
 
Instalando PostgreSQL en Linux
 
En este pequeño taller voy a dar unas pequeñas pautas para instalar PostgreSQL.
 
  • Nos ponemos
  • como root para empezar a trabajar
  • Creamos
  • el grupo y usuario postgres
  • Descargamos las
  • fuentes de PostgreSQL y las descomprimimos
  • Preparamos las
  • fuentes para ser compiladas
  • Compilamos e instalamos
  • las fuentes
  • Instalamos la Base
  • de Datos
  • Asignamos los directorios
  • a sus respectivos propietarios
  • Creamos
  • un usuario de prueba

Adquirimos permisos de root para no tener

ningún problema

Obtenemos login
como root con el comando su -l:
 
$ su -l
Password:
#
Notar que el signo $
ha cambiado por #. Si es así, habremos obtenido
permisos de root, cosa que usaremos para tareas muy determinadas, ya que
podemos dañar el sistema.
Añadimos el grupo
mysql y creamos el usuario mysql dentro del grupo mysql:
 
# groupadd postgres
# useradd -g postgres postgres

Bajamos las fuentes y las preparamos para compilarlas

Descargamos las

(NOTA: son unos 7 Mb)
 

 
Descomprimimos
las fuentes:
 
# gunzip postgresql-7.x.x.tar.gz
# tar -xvf postgresql-7.x.x.tar
Preparamos las
fuentes para compilarlas:
 
# cd postgresql-3.x.x
# ./configure
Ahora
nos disponemos a compilar las fuentes de PostgreSQL:
 
# gmake && gmake
install && echo "Bien compilado e instalado"

 

Configuración Post-Instalación

Vamos
a crear un directorio data y asignamos los directorios a sus propietarios:
 
# mkdir /usr/locl/pgsql/data
# chown postgres /usr/local/pgsql/data
Ahora
nos ponemos como postgres para instalar la BD:
 
# su - postgres
$ /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
Ahora
iniciamos la BD:
 
$ /usr/local/pgsql/bin/postmaster
-D /usr/local/pgsql/data

Administración básica de Usuarios

En esta
sección vamos a explicar muy por encima la forma de crear y borrar usuarios
de PostgreSQL
Bien,
lo primero, es crear un enlace al cliente:
 
$ logout
# ln /usr/local/pgsql/bin/psql /usr/bin/psql
# su - postgres
$
Ahora
lo tenemos más sencillo para acceder, ahora arrancamos el cliente:
 
$ psql
postgres=#
Para
crear usuarios, usamos el comando CREATE USER, que tiene la siguiente sintaxis:
 
CREATE USER username
[ WITH
[ SYSID uid ]
[ PASSWORD 'password' ] ]
[ CREATEDB | NOCREATEDB ] [ CREATEUSER | NOCREATEUSER ]
[ IN GROUP groupname [, ...] ]
[ VALID UNTIL 'abstime' ]
Entonces, creamos
un usuario llamado pedro:
 
postgres=# CREATE USER pedro
postgres-# WITH PASSWORD 'p3dr0'
postgres-# NOCREATEDB
postgres-# NOCREATEUSER
postgres-# ;
CREATE USER
postgres=#
Ya tenemos a pedro en nuestra BD.
Ahora
borraremos a pedro:
 
postgres=# DROP USER pedro;
DROP USER

Herramientas de Administración más Recientes SGBD

Mejoras de instalación
Ahora uno puede utilizar el comando de validación de una copia de DB2 llamado db2val, para rápidamente verificar que la instalación y configuración de DB2 Express-C es correcta.

Mejoras de almacenamiento

"Cuántos datos puede almacenar DB2?" es una pregunta común por usuarios o futuros usuarios de DB2. Con cada versión del producto, el equipo de desarrolladores de IBM DB2 continúa empujando los límites. Para la versión 9.7 de DB2, los límites del tamaño para tablas de espacio largas y temporales se han cuadriplicado. Por ejemplo, una tabla de espacio usando una página de tamaño 32KB ahora puede guardar 64 TB. Anteriormente "solo" podia guardar 16 TB.

Mejoras en seguridad

En versiones anteriores de DB2, el administrador del sistema (system administrator) tenía acceso practicamente a todo. Con DB2 9.7, el modelo de seguridad ha sido mejorado para permitir una separación de tareas. Esto minimiza el riesgo de exponer datos y ayuda a organizaciones a cumplir con los requerimientos de seguridad de algunos gobiernos. Hay varios nuevos niveles de autoridades administrativas. Dos de estos nuevos niveles son DATAACCESS y ACCESSCTRL, que puede utilizar para dar a usuarios acceso a datos o garantizar acceso a datos, respectivamente. Esto significa que un administrador de seguridad puede revocar estos niveles de autoridad a un administrador de sistemas o a un administrador de base de datos (DBA), que esencialmente dejaria a ese usuario sin acceso a ningun dato.
El refresco 9.7.2 de DB2 tambien incluye mejorias en cuanto auditoría que permite el replay de actividades de base de datos pasadas. Por ejemplo, si tiene que analizar como un determinado pedido que ocurrió unos años atrás afectó algunas tablas, ahora puede usar la información de auditoría para obtener lo que necesita para este análisis.


MY SQL

Con esta versión de MySQL, Oracle y la comunidad de desarrolladores han fortalecido la forma en que el software se encarga de la replicación de datos, así como han buscado insistentemente reducir los tiempos de respuesta del software ante consultas complejas.
En lo que respecta a la replicación, MySQL introduce, de forma nativa, identificadores de transacciones globales (GTID), unas soluciones que aseguran que el sistema pueda realizar un seguimiento de datos a medida que se repite en diferentes servidores. De este modo, GTID facilitará el proceso de cambiar automáticamente a un servidor duplicado caso de fallo en el original.

Acelerar las consultas

MySQL 5.6 también ofrece una serie de nuevas características que deberían acelerar las consultas. Con la nueva versión, los usuarios podrán consolidar varias consultas o conjuntos de resultados en una sola unidad de trabajo. Así, se puede asignar la fecha y hora actual como valor predeterminado para las columnas DATETIME, o acelerar el tiempo de consulta para determinar el mejor orden de ejecución de filesort y las consultas por el campo ORDER BY.
MySQL también puede entregar resultados de la consulta sobre el popular formato JSON (JavaScript Object Notation), útil para la integración de datos con las aplicaciones web.
Tal vez la característica más notable es la inclusión de una API (Application Programming Interface) que permite a las aplicaciones acceder directamente a datos del núcleo del motor de la base de datos InnoDB, en lugar de pasar por la interfase basada en SQL.

Actualizacion de Oracle


Mejor experiencia del usuario, mayor seguridad y más opciones de almacenamiento
Estas son algunas de las mejoras clave en Oracle Virtual Desktop Infrastructure (VDI) 3.4 y el software del servidor Sun Ray Software 5.3:

  • Mayor variedad de opciones de almacenamiento: además de aprovechar la integración con las capacidades analíticas y de desempeño de Oracle’s Sun ZFS Storage Appliances, Oracle Virtual Desktop Infrastructure 3.4 ahora permite el soporte a las soluciones de almacenamiento de terceros y de almacenamiento local, lo cual ofrece a los clientes una amplia variedad de opciones de almacenamiento al diseñar implementaciones o aprovechar sus inversiones existentes en almacenamiento.


  • Escalabilidad de gestión más simple: la nueva función de Global VDI Centers en Oracle Virtual Desktop Infrastructure 3.4 permite la creación de múltiples implementaciones de VDI, administradas en forma independiente, que automáticamente direccionan a los usuarios al grupo adecuado de servidores cuando se conectan.
  • Estas son algunas de las mejoras de Sun Ray 3 Series Clients y las PC que ejecutan el nuevo software de Oracle Virtual Desktop Client 3.1


Mejor experiencia de usuario



  • Mejoras a la aceleración de multimedia logran una perfecta experiencia del usuario de escritorio. Las nuevas funciones incluyen la aceleración de Adobe Flash y Windows Media Player en los dispositivos Sun Ray 3 Series Client y video de capacidad HD de 720p en Sun Ray 3 Plus Clients y PC con Oracle Virtual Desktop Client 3.1.
  • Hot-desking más inteligente: nuevas funciones de reconocimiento de la ubicación del usuario hacen que las aplicaciones tengan más capacidades dinámicas, como follow-me-printing, además de permitir acceso más seguro a los usuarios. Las nuevas funciones de auto-resizing (ajuste automático del tamaño) automáticamente se adaptan al tamaño de pantalla del escritorio virtual cuando se mueve entre dispositivos.
  • Mejor soporte de tarjeta inteligente: Oracle Virtual Desktop Infrastructure y Sun Ray Software ahora soportan el estándar Extended Application Protocol Data Unit (APDU) para tarjetas inteligentes que permiten que una mayor cantidad de información se almacene en estas tarjetas y se intercambie con aplicaciones, posibilitando mayor funcionalidad al usuario.
  • Mayor seguridad: Sun Ray 3 Series Clients ahora respalda una autenticación más sofisticada a la red que utiliza Protocolos de Autenticación Extensible 802.1X para asociar la dirección virtual del dispositivo con la identidad del usuario antes de la autorización de acceso.
  • Mejor soporte USB para Sun Ray 3 Series Clients: ofrece un desempeño de almacenamiento masivo USB cinco veces más rápido y brinda acceso a un rango más amplio de dispositivos USB.

Cuestionario

  
1.-¿Cuáles son las inconvenientes de un sistema gestor de base de datos?
Problemas de seguridad, Problemas de automicidad, redundancia, dificultad en el acceso de datos, aislamiento de datos, problemas de integridad, anomalias en el acceso concurrente.
2.- Indique los pasos importantes para configurar una base de datos para una empresa dada.
1. Determinar la finalidad de la BD.
2. Determinar en el acceso necesario de la BD.
3. Determinar las tablas que necesitan en la BD.
4. Determinar a que tablas pertenecen cada campo.
5. Identificar el campo o los campos con valores unicos.
6. Determinar las relaciones entre las tablas.
7. Perfeccionar el diseño.
8. Introducir datos y crear otros.
3.- Explique la diferencia entre independencia de datos física y lógica.
Los programas de aplicacion se dice que muestran indepencia fisica de datos si no dependen del esquema fisico, y por lo tanto, no deben ser modificados si cambia el esquema fisico.
La independencia fisica es la capacidad de modificar el esquema fisico, sin necesidad de recibir los datos programas de aplicación.
La independencia lógica es la capacidad de modificar el esquema conceptual sin necesidad de reescribir los programas de aplicación.
 
 
4.-Explique cinco responsabilidades del Sistema Gestor de la Base de Datos.
  • Proporciona la capacidad de almacenamiento de datos, acede y utilizarlos.
  • Durabilidad.
  • consistencia.
  • Recuperacion de fallos.
  • Proporciona un mecanismo capas de ocupar los datos.
  • El espacio de memoria para datos del cliente, seria muy poco, hay que pensar en grande.
  • para que crear algo no durable, si solo sera el uso por corto tiempo.
  • Tiene que ser consistente, para que al uso diario no sea productivo.
  • Facilmente tiene que recuperarse un fallo, ya que depende del creado.
  • Que la BD, de abasto para tipo de datos que necesite el usuario.
  • Interaccion con el gestor de fichero: no se podria recuperar archivos almacenados
  •  Poner en practica la seguridad: usuarios no autorizados pueden acceder a la base de datos.
  •  
  •  Copias de seguridad: los datos podrán perderse de manera permanente.
  •  
  • Controlar las concurrencias: se prdrian violar las restricciones de integridad a pesar del cumplimiento de la propia integridad en cada transaccion.

4.-¿Cuáles son las cinco funciones principales del administrador de la base de datos?
 
· Definicion del esquema.
 
· Definicion de la estructura y del metodo de acceso.
 
· Modificacion del esquema y de la organizacion fisica.
 
· Concesion de autorizacion para el acceso a los datos.
 
· Mantenimiento rutinario.
 
5.-Indique 5 aplicaciones que usted perciba que se usa una base de datos para almacenar datos persistentes.
 
· Escuelas
 
· Empresas
 
· Bancos
 
· Venterinaria