Sei sulla pagina 1di 6

1.

JUSTIFICACIN

El presente informe tiene la finalidad de dar a conocer una gran herramienta de trabajo como es Postgres, usada principalmente para el desarrollo de bases de datos. Entre los sistemas de bases de datos existentes hoy en da, PostgreSQL juega un papel muy importante ya que es un sistema que tiene muchas cualidades que lo hacen una buena alternativa para instalar sistemas en empresas, universidades y una gran cantidad de otras aplicaciones. Este documento est pensado como un material prctico de introduccin a los sistemas de bases de datos relacionales basados en PostgreSQL y no profundiza mayormente en los conceptos, aunque aborda una gran parte de los temas necesarios para iniciar el iniciar de buena forma el estudio, sin descuidar ningn aspecto. En la Universidad Tcnica del Norte, Facultad de Ingeniera en Ciencias Aplicadas se imparte la materia de Base de Datos 3 en la cual Postgres es una herramienta indispensable para el desenvolvimiento de la misma. En la actualidad se puede desenvolver esa herramienta en los sistemas operativos de Windows y Linux en el presente informe se explica como instalar y su funcionamiento en Linux el cual es un sistema operativo libre.

2. OBJETIVOS 2.1. OBJETIVO GENERAL Entender el funcionamiento de Postgres sobre la plataforma de Linux (Fedora). 2.2. OBJETIVOS ESPECIFICOS Investigar las principales fuentes de documentacin y entrenamiento disponibles en internet para aprendizaje y certificacin de PostgreSQL. Instalar PostgreSQL sobre Linux (cualquier versin) en modo personalizado. Revisar el archivo de configuracin de PostgreSQL y explicar cada uno de los parmetros. Investigar las arquitecturas existentes en Postgres.

3. Marco Terico Qu es Postgres? PostgreSQL es un SGBD relacional orientado a objetos y libre, publicado bajo la licencia BSD. Como muchos otros proyectos de cdigo abierto, el desarrollo de PostgreSQL no es manejado por una empresa y/o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyados por organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group). PRINCIPALES CARACTERISTICAS DE POSTGRES 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. Esta estrategia es superior al uso de bloqueos por tabla o por filascomn en otras bases, eliminando la necesidad del uso de bloqueos explcitos.....

Amplia variedad de tipos nativos PosgreSQL provee nativamente soporte para:


Nmeros de precisin arbitraria. Texto de largo ilimitado. Figuras geomtricas (con una variedad de funciones asociadas). Direcciones IP (IPv4 e IPv6). Bloques de direcciones estilo CIDR. Direcciones MAC. Arrays.

Adicionalmente los usuarios pueden crear sus propios tipos de datos, los que pueden ser por completo indexables gracias a la infraestructura GiST de PostgreSQL. Algunos ejemplos son los tipos de datos GIS creados por el proyecto PostGIS. Otras caractersticas

Claves ajenas tambin denominadas Llaves ajenas o Claves Forneas (foreign keys).

Disparadores (triggers): Un disparador o trigger se define como una accin especfica que se realiza de acuerdo a un evento, cuando ste ocurra dentro de la base de datos. En PostgreSQL esto significa la ejecucin de un procedimiento almacenado basado en una determinada accin sobre una tabla especfica. Ahora todos los disparadores se definen por seis caractersticas:

El nombre del disparador o trigger El momento en que el disparador debe arrancar El evento del disparador deber activarse sobre... La tabla donde el disparador se activar La frecuencia de la ejecucin La funcin que podra ser llamada

Entonces combinando estas seis caractersticas, PostgreSQL le permitir crear una amplia funcionalidad a travs de su sistema de activacin de disparadores (triggers).

Vistas. Integridad transaccional. Herencia de tablas. Tipos de datos y operaciones geomtricas. Soporte para transacciones distribuidas. Permite a PostgreSQL integrarse en un sistema distribuido formado por varios recursos (p.ej, una base de datos PostgreSQL, otra Oracle, una cola de mensajes IBM MQ JMS y un ERP SAP) gestionado por un servidor de aplicaciones donde el xito ("commit") de la transaccin globlal es el resultado del xito de las transacciones locales. SISTEMA OPERATIVO FEDORA Es una distribucin Linux para propsitos generales basada en RPM, que se caracteriza por ser un sistema estable, la cual es mantenida gracias a una comunidad internacional de ingenieros, diseadores grficos y usuarios que informan de fallos y prueban nuevas tecnologas. Cuenta con el respaldo y la promocin de Red Hat. El proyecto no busca slo incluir software libre y de cdigo abierto, sino ser el lder en ese mbito tecnolgico.2 3 Algo que hay que destacar es que los desarrolladores de Fedora prefieren hacer cambios en las fuentes originales en lugar de aplicar los parches especficos en su distribucin, de esta forma se asegura que las actualizaciones estn disponibles para todas las variantes de Linux

4. DESARROLLO ARQUITECTURAS EXISTENTES EN POSTGRESQL

En la jerga de bases de datos, Postgres usa un modelo cliente/servidor conocido como "proceso por usuario". Una sesin Postgres consiste en los siguientes procesos cooperativos de Unix (programas): Un proceso demonio supervisor (postmaster), La aplicacin sobre la que trabaja el usuario (frontend) (e.g., el programapsql ), y Uno o ms servidores de bases de datos en segundo plano (el mismo proceso postgres). Un nico postmaster controla una coleccin de bases de datos dadas en un nico host debido a esto una coleccin de bases de datos se suele llamar una instalacin o un sitio. Las aplicaciones de frontend que quieren acceder a una determinada base de datos dentro de una instalacin hacen llamadas a la librera. La libreria enva peticiones de usuario a travs de la red al postmaster ( Como se establece una conexin), el cual en respuesta inicia un nuevo proceso en el servidor (backend) y conecta el proceso de frontend al nuevo servidor. A partir de este punto, el proceso de frontend y el servidor en backend se comunican sin la intervencin del postmaster. Aunque, el postmaster siempre se est ejecutando, esperando peticiones, tanto los procesos de frontend como los de backend vienen y se van. La libreria libpq permite a un nico proceso en frontend realizar mltiples conexiones a procesos en backend. Aunque, la aplicacin frontend todava es un proceso en un nico thread. Conexiones multithread entre el frontend y el backend no estn soportadas de momento en libpq. Una implicacin de esta arquitectura es que el postmaster y el proceso backend siempre se ejecutan en la misma mquina (el servidor de base de datos), mientras que la aplicacin en frontend puede ejecutarse desde cualquier sitio. Debe tener esto en ente, porque los archivos que pueden ser accedidos en la mquina del cliente pueden no ser accesibles (o slo pueden ser accedidos usando un nombre de archivo diferente) el mquina del servidor de base de datos. Tenga en cuenta que los servicios postmaster y postgres se ejecutan con el identificador de usuario del "superusuario" Postgres Note que el superusuario

Postgres no necesita ser un usuario especial (ej. un usuario llamado "postgres"). De todas formas, el super usuario Postgres definitivamente no tiene que ser el superusuario de Unix ("root")! En cualquier caso, todos los archivos relacionados con la base de datos deben pertenecer a este superusuario Postgres. Postgres.

5. CONCLUSIONES Postgres es un DBMS muy completo ya que existen versiones para diferentes plataformas de sistemas operativos.

Podemos concluir que la apariencia de Postgres en modo grfico es igual en Windows y en Linux.

6. RECOMENDACIONES Se recomienda que para la instalacin de Postgres se verifique que exista conexin a internet ya que en Linux la instalacin requiere de internet para descargar los paquetes. 7. BIBLIOGRAFA

Potrebbero piacerti anche