Você está na página 1de 9

ARQUITECTURA DEL GESTOR (POSTGRESQL)

2.1 CARACTERISTICAS DE POSTGRESQL La ltima serie de produccin es la 9.1. Sus caractersticas tcnicas la hacen una de las bases de datos ms potentes y robustas del mercado. Su desarrollo comenzo hace ms de 16 aos, y durante este tiempo, estabilidad, potencia, robustez, facilidad de administracin e implementacin de estndares han sido las caractersticas que ms se han tenido en cuenta durante su desarrollo. PostgreSQL funciona muy bien con grandes cantidades de datos y una alta concurrencia de usuarios accediendo a la vez a el sistema.

Generales

Es una base de datos 100% ACID. Soporta distintos tipos de datos: adems del soporte para los tipos base, tambin soporta datos de tipo fecha, monetarios, elementos grficos, datos sobre redes (MAC, IP ...), cadenas de bits, etc. Tambin permite la creacin de tipos propios.

Incluye herencia entre tablas, por lo que a este gestor de bases de datos se le incluye entre los gestores objeto-relacionales. Copias de seguridad en caliente (Online/hot backups) Unicode Juegos de caracteres internacionales Regionalizacin por columna Multi-Version Concurrency Control (MVCC) Multiples mtodos de autentificacin Acceso encriptado via SSL SE-postgres

Completa documentacin Licencia BSD Disponible para Linux y UNIX en todas sus variantes (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64) y Windows 32/64bit. Alta concurrencia Mediante un sistema denominado MVCC (Acceso concurrente multiversin, por sus siglas en ingls) PostgreSQL permite que mientras un proceso escribe en una

tabla, otros accedan a la misma tabla sin necesidad de bloqueos. Cada usuario obtiene una visin consistente de lo ltimo a lo que se le hizo commit. 2.1.1 ESTRUCTURA DE MEMORIA Y PROCESOS DE LA INSTANCIA La arquitectura de POSTGRESQL tiene tres componentes elementales, la estructura de memoria para almacenar los datos y el cdigo ejecutable, los procesos que corre el sistema de base de datos y las tareas de cada usuario conectado a la base de datos, y los archivos que sirven para el almacenamiento fsico, en disco, de la informacin de la base de datos.

Estructura de memoria Hay dos clases de memoria, una de ellas compartida por todos los usuarios conectados y otra dedicada al trabajo de cada uno de ellos El rea global del sistema o SGA (Systen Global Area) es el rea compartida por todos los usuarios y se divide en tres partes: Fondo comn compartido (Shared Spool), en ella se conserva el diccionario de datos y las reas compartidas de las rdenes SQL que se solicitan para su procesamiento. rea de memoria rpida (Database Buffer Cache), donde permanecen los datos trados por las rdenes SQL de los usuarios conectados a la base de datos. rea de registros restaurados (Redo Log Buffer), aqu se registran los cambios hechos a la base de datos.

Por cada sesin de usuario se crea tambin, en memoria, un rea especfica llamada rea global de programa o PGA (Programa Global Area), esta rea no se comparte con las otras sesiones de usuario PROCESOS DE LA INSTANCIA Se denomina instancia al conjunto de estructuras de memoria y procesos de fondo que acceden a los archivos de base de datos. Es posible que una misma base de datos sea accedida por mltiples instancias; cada una de ellas reside en servidores. Como Postgres es orientado al objeto, la idea fundamental es la de una clase, donde todas las instancias de esa clase tienen los mismos atributos y cada atributo es de un tipo especco. Adems, cada instancia posee un identicador de objeto nico (OID). La relacin que se hace entre SQL y el modelo de programacin orientada a objetos es como sigue: una tabla corresponde a una clase, una la corresponde a una instancia de una clase y las columnas a los atributos. Creacin de una nueva Clase Para crear una clase debemos especicar el nombre de la clase, ademas de los nombre de los atributos y sus tipos de la siguiente forma: CREATE TABLE guitarras( marca varchar(20), precio int, num_frets int, num_cuerdas int, origen varchar(30) ); debemos cuidarnos del hecho de que el sistema distingue entre maysculasminsculas. Llenar una Clase con instancias La declaracin insert es para llenar una clase con instancias, es decir, desde el punto de vista de SQL es llenar una tabla con datos. Su sintaxis es la siguiente: INSERT INTO guitarras VALUES('Gibson', 650000, 22, 6, 'USA'); Actualizaciones Update nos permite realizar actualizaciones de instancias que ya existen.

2.1.2 ESTRUCTURAS FSICAS DE LA BASE DE DATOS Es como se guardan los datos en disco. Solo es importante conocerlos si es DBA o desarrollador del motor. Zona Memoria Compartida Uno de los aspectos ms importantes es que PostgreSQL no debera compartir acceso a disco con el sistema operativo, esto es, si es posible que PostgreSQL est en una particin distinta a root (incluso un disco separado, de ser recomendable); por lo que la opcin instalar y usar no debera ser para instalaciones en produccin de PostgreSQL 9.2. Socket de TCP/IP Sus opciones de conectividad abarcan TCP/IP, sockets Unix y sockets NT, adems de soportar completamente ODBC. El puerto de escucha TCP del servidor; 5432 de forma predeterminada. Tenga en cuenta que el mismo nmero de puerto se utiliza para las direcciones IP de todo el servidor. Este parmetro slo se puede configurar en el arranque del servidor. Almacenamiento en disco Algunos de los lmites de PostgreSQL son:

Lmite

Valor Ilimitado (Depende almacenamiento) 32 TB 1.6 TB 1 GB de tu sistema de

Mximo tamao base de dato

Mximo tamao de tabla Mximo tamao de fila Mximo tamao de campo

Mximo numero de filas por Ilimitado tabla Mximo numero de columnas 250 - 1600 (dependiendo del tipo)

por tabla Mximo numero de indices por Ilimitado tabla

Ficheros Ficheros WAL: PostgreSQL utiliza los denominados ficheros WAL (Write Ahead Log / REDO) para guardar toda la informacin sobre las transacciones y cambios realizados en la base de datos. Gestor de ficheros (File Manager o File System). Encargado de asignar espacio en disco y mantener la estructura de los ficheros donde se almacenarn los datos. Adems es el responsable de localizar el bloque de informacin que se requiere solicitndoselo al Gestor de discos del S.O. y proporcionndoselo al Gestor de Datos. Puede implementarse simplemente como un interfaz al Gestor de Ficheros del Sistema Operativo o el SGBD puede tener uno propio. Gestor de datos (Data Manager). Es el principal componente del SGBD. Entre sus funciones podemos citar:

Acceso a los datos interactuando con el gestor de ficheros propio o del S.O. Asegura que se cumplen los requisitos para mantener la integridad y consistencia de los datos, adems de controlar la seguridad. Sincroniza las operaciones de los usuarios que estn accediendo concurrentemente a la BD. Interviene tambin en operaciones de respaldos y recuperaciones.

2.1.3 REQUERIMIENTOS PARA INSTALACIN.


Un descompresor de ficheros Zip Windows XP los maneja automticamente; si no tienes uno disponible, instlate WinZip, Microsoft Installer. Presente por defecto en Windows 2000, Me y XP, Windows 8 Puedes comprobar si lo tienes instalado seleccionando "Ejecutar..." en el men Inicio y escribiendo MSIEXEC. Si no aparece un cuadro de dilogo informndote de la versin, debes instalar una versin apropiada:

Sistema operativo: Windows 95/98/Me, NT/2000/XP, Windows 8. Otro tipo de sistema operativo: GNU/Linux (*),cualquier Unix (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64) Anda a partir de 512 MB RAM pero de 2GB en adelante ser funcional. 30 megabytes de espacio en disco duro para el cogido fuente. 5 megabytes de espacio en disco duro para la instalacion de los ejecutables. 1 megabyte extra para las bases de datos basicas. 3 megabytes de espacio en disco duro para el tarball con el codigo fuente. Procesador Intel 486 o superior

2.1.4 INSTALACIN DEL SOFTWARE DE BD EN MODO TRANSACCIONAL Una base de datos en modo transaccional significa que la BD ser capaz de que las operaciones de insercin y actualizacin se hagan dentro de una transaccin, es un componente que procesa informacin descomponindola de forma unitaria en operaciones indivisibles, llamadas transacciones, esto quiere decir que todas las operaciones se realizan o no, si sucede algn error en la operacin se omite todo el proceso de modificacin de la base de datos, si no sucede ningn error se hacen toda la operacin con xito. Una transaccin es un conjunto de lneas de un programa que llevan insert o update o delete. Todo aqul software que tiene un log de transacciones (que es la "bitcora" que permite hacer operaciones de commit o rollback), propiamente es un software de BD; aqul que no lo tiene (v.g. D-Base), propiamente no lo es. En la figura se muestran los pasos (simplificados) para acceder a los datos. El interfaz de usuario est representando al procesador de consultas (usuarios online complejos), al programa de aplicacin compilado o a sentencias del LDD compiladas (ADB).

A continuacin se tiene un grfico que ilustra de manera general los componentes ms importantes en un sistema PostgreSQL.

2.1.5 VARIABLES DE AMBIENTE Y ARCHIVOS INSTALACIN. VARIABLES DE ENTORNO

IMPORTANTES PARA

Antes de arrancar el servidor de base de datos debemos crear la variable de entorno PGDATA y modificar la variable PATH indispensable para que PostgreSQL sepa donde se encuentran las datafiles del database system para el super usuario postgres y donde se encuentran los ejecutables. Para crear una variable de entorno tenemos que exportarla comando exportseguido del nombre de la variable y su parmetro as: con el

postgres@debian:~$export PGDATA=/usr/local/pgsql/data/ postgres@debian:~$export PATH=$PATH:/usr/local/postgresql-8.4.0/bin/ Si queremos que cuando nos loguiemos como Postgres nos cargue las variables de ambiente automticamente para que no tengamos que hacer el export cada vez que vamos a arrancar el servidor de bases de datos; editamos el archivo/home/postgres/.profile e ingresamos las siguientes lineas al final del archivo: export export PGDATA=/usr/local/pgsql/data/ export PATH=$PATH:/usr/local/postgresql-8.4.0/bin/ o escribiendo estos comandos desde la shell: postgres@debian:~$ echo export PGDATA=/usr/local/pgsql/data/ >> /home/postgres/.profile ; echo export PATH=\$PATH:/usr/local/postgresql8.4.0/bin/ >> /home/postgres/.profile cuando hayamos editado el archivo /home/postgres/.profile recargamos los archivos con el comando source as: postgres@debian:~$source /home/postgres/.profile Si queremos podemos hacer lo mismo con el archivo /home/postgres/.bachrc. Para listar las variables de entorno usamos el comando env y para eliminar una variable usamos unset pasndole como parmetro el nombre de la variable a borrar. ARCHIVOS IMPORTANTES Los archivos principales de PostgreSQL:

pg_hba.conf: Este fichero se utiliza para definir los diferentes tipos de accesos que un usuario tiene en el cluster, es decir, para definir como, donde y desde que sitio un usuario puede utilizar nuestro cluster PostgreSQL. pg_ident.conf: Este fichero se utiliza para definir la informacin necesaria en el caso que utilicemos un acceso del tipo ident en pg_hba.conf . postgresql.conf: En este fichero podemos cambiar todos los parametros de configuracion que afectan al funcionamiento y al comportamiento de

PostgreSQL en nuestra maquina.Los cambios que realicemos en este fichero afectaran a todas las bases de datos que tengamos definidas en nuestro cluster PostgreSQL. La mayoria de los cambios se pueden poner en produccion con un simple 'reload' (/usr/local/bin/pg_ctl -D /var/pgsql/data reload), otros cambios necesitan que arranquemos de nuevo nuestro cluster (/usr/local/bin/pg_ctl -D /var/pgsql/data restart). 2.1.6 PROCEDIMIENTO GENERAL DE INSTALACIN 2.1.7 PROCEDIMIENTO PARA CONFIGURACIN DE UN DBMS. 2.1.8 COMANDOS GENERALES DE ALTA Y BAJA DEL DBMS

Você também pode gostar