UNIVERSIDAD
YACAMBU
VICERECTORADO
DE ESTUDIOS VIRTUALES
ESPECIALIZACION
EN GERENCIA MENCION SISTEMAS DE INFORMACIÓN
SISTEMA DE INFORMACIÓN GERENCIAL
Profesor: Yaros Pérez
FASE III
Trabajo 4
AUTORA: MARISOL
ESCALANTE M
1.- ¿Que es Software Libre? Decreto 3390
(23-12-2004)
Artículo 2: A los efectos del
presente decreto se entenderá por:
Software Libre: Programa de computación cuya licencia
garantiza al usuario acceso al código fuente del programa y lo autoriza a
ejecutarlo con cualquier propósito, modificarlo y redistribuir tanto el
programa original como sus modificaciones en las mismas condiciones de
licenciamiento acordadas al programa original, sin tener que pagar regalías a
los desarrolladores previos.
Estándares Abiertos: Especificaciones técnicas, publicadas y controladas por alguna
organización que se encarga de su desarrollo, los cuales han sido aceptadas por
la industria, estando a disposición de cualquier usuario para ser implementada
en un software libre o propietario, promoviendo la competitividad,
interoperatividad o flexibilidad.
Distribución Software Libre Desarrollado con
Estándares Abiertos para el Estado venezolano: Un paquete
de programas y aplicaciones de informática elaborados utilizando software libre
con estándares abiertos para ser utilizados y distribuidos entre distintos
usuarios.
2.- ¿Cual es la diferencia entre Postgres
y ORACLE.
Postgres
PostgreSQL es un Sistema de
Gestión de Bases de Datos Objeto-Relacionales (ORDBMS) que ha sido desarrollado
de varias formas desde 1977. Comenzó como un proyecto denominado Ingres en
También podemos
definirlo como un
servidor de base de datos objeto relacional
libre,
liberado bajo la licencia BSD. Como muchos otros proyectos open source, el desarrollo de PostgreSQL no es manejado por una sola compañía sino que es
dirigido por una comunidad de desarrolladores y organizaciones comerciales las
cuales trabajan en su desarrollo, dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).
En 1986 otro equipo dirigido por Michael Stonebraker de Berkeley
continuó el desarrollo del código de Ingres
para crear un sistema de bases de datos objeto-relacionales llamado Postgres. En 1996, debido a un nuevo esfuerzo de
código abierto y a la incrementada funcionalidad del software, Postgres fue renombrado a PostgreSQL,
tras un breve periplo como Postgres95. El proyecto PostgreSQL
sigue actualmente un activo proceso de desarrollo a nivel mundial gracias a un
equipo de desarrolladores y contribuidores de código abierto.
PostgreSQL está ampliamente
considerado como el sistema de bases de datos de código abierto más avanzado
del mundo. Posee muchas características (las cuales serán discutidas en detalle
en la sección denominada ``Juego de Características de PostgreSQL'')
que tradicionalmente sólo se podían ver en productos comerciales de alto
calibre.
PostgreSQL provee nativamente
soporte para números de precisión arbitraria, texto de largo ilimitado,
figuras geométricas (con una variedad de funciones asociadas), dirección Ip (IPv4 e IPv6),
bloques de direcciones estilo CIDR, direcciones MAC.
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.
ORACLE
Oracle es
básicamente una herramienta cliente/servidor para la gestión de Bases de Datos.
Oracle como
antes he mencionado se basa en la tecnología cliente/servidor, pues bien, para
su utilización primero sería necesario la instalación de la herramienta
servidor (Oracle 8i) y posteriormente podríamos
atacar a la base de datos desde otros equipos con herramientas de desarrollo
como Oracle Designer y Oracle Developer, que son las herramientas básicas de
programación sobre Oracle.
Para desarrollar en Oracle utilizamos PL/SQL un lenguaje de 5ª generación,
bastante potente para tratar y gestionar la base de datos, también por norma
general se suele utilizar SQL al crear un formulario.
3.- Fortalezas y Debildades de Postgres
Oracle soporta consultas en paralelo cosa que postgre aun no ha implementado
PostgreSQL tiene 5 lenguajes procedurales
a diferencia de oracle que solo tiene 1
En postgreSQL
es posible desarrollar tus propios tipos de datos, mientras que en oracle no.
Las herramientas de configuración de oracle son tal ves las mejores en
el mercado.
Oracle tiene muchos más parámetros de configuración que postgre, sin embargo muchos de ellos son solo conocidos por
la misma gente de oracle que manipulan solo si se
recibe el soporte oficial de oracle.
PostgreSQL (licencia BSD), Oracle
(licencia comercial - oracle al revés es “elcaro”)). Además de eso para tener acceso a Oracle Profesional tendría que pirateármelo a diferencia de
PostgreSQL que basto con un emerge para probarlo en
mi sistema.
PostgreSQL, presenta
mejores ventajas (innovación y libertad ante todo).
4.- Ubuntu, Apache.
Características.
Ubuntu: Es una distribución Linux que ofrece un sistema
operativo predominantemente enfocado a ordenadores de escritorio aunque también
proporciona soporte para servidores.
Características:
Basada
en la distribución Debian.
Disponible
en 4 arquitecturas: Intel x86,
AMD64,
SPARC
(para esta última sólo existe la versión servidor).
Los
desarrolladores de Ubuntu se basan en gran medida en
el trabajo de las comunidades de Debian y GNOME.
Las
versiones estables se liberan cada 6 meses y se mantienen actualizadas en
materia de seguridad hasta 18 meses después de su lanzamiento.
La
nomenclatura de las versiones no obedece principalmente a un orden de
desarrollo, se compone del dígito del año de emisión y del mes en que esto
ocurre. La versión 4.10 es de octubre de 2004, la 5.04 es de abril de 2005, la 5.10 de octubre
de 2005,
la 6.06 es de junio
de 2006,
la 6.10 es de octubre
de 2006,
la 7.04 es de abril
de 2007
y la 7.10 es de octubre
de 2007.
El
entorno de escritorio oficial es Gnome
y se sincronizan con sus liberaciones.
Para
centrarse en solucionar rápidamente los bugs,
conflictos de paquetes, etc. se decidió eliminar ciertos paquetes del componente
main,
ya que no son populares o simplemente se escogieron de forma arbitraria por
gusto o sus bases de apoyo al software
libre. Por tales motivos inicialmente KDE no se encontraba con
más soporte de lo que entregaban los mantenedores de Debian
en sus repositorios, razón por la que se sumó la comunidad de KDE distribuyendo la distro llamada Kubuntu.
De
forma sincronizada a la versión 6.06 de Ubuntu,
apareció por primera vez la distribución Xubuntu,
basada en el entorno de escritorio XFce.
El
navegador web oficial es Mozilla Firefox.
El
sistema incluye funciones avanzadas de seguridad y entre sus políticas se
encuentra el no activar, de forma predeterminada, procesos latentes al momento
de instalarse. Por eso mismo, no hay un firewall
predeterminado, ya que no existen servicios que puedan atentar a la seguridad
del sistema.
Para
labores/tareas administrativas en terminal incluye
una herramienta llamada sudo
(similar al Mac OS X), con la que se evita el uso del usuario root
(administrador).
Mejora
la accesibilidad
y la internacionalización, de modo que el software
está disponible para tanta gente como sea posible. En la versión 5.04, el UTF-8 es la codificación
de caracteres en forma predeterminada.
No
sólo se relaciona con Debian por el uso del mismo
formato de paquetes deb, también tiene uniones muy fuertes con esa
comunidad, contribuyendo con cualquier cambio directa e inmediatamente, y no
solo anunciándolos. Esto sucede en los tiempos de lanzamiento. Muchos de los
desarrolladores de Ubuntu son también responsables de
los paquetes importantes dentro de la distribución de Debian.
Todos
los lanzamientos de Ubuntu se proporcionan sin costo
alguno. Los CDs de la distribución se envían de forma gratuita a
cualquier persona que los solicite mediante el servicio ShipIt (la versión 6.10 no se llegó a distribuir de
forma gratuita en CD, pero la versión 7.04 sí). También es posible descargar
las imágenes ISO
de los discos por transferencia directa o bajo la tecnología Bittorrent.
Ubuntu no cobra honorarios por la
suscripción de mejoras de la "Edición Enterprise".
Apache: Apache
es el programa servidor HTTP que utilizamos en Valliniello.
Gracias a él podemos practicar la creación y publicación de documentos HTML de
la misma forma que se hace en Internet con una estabilidad y eficacia
ampliamente comprobada en la gran cantidad de servidores apache actualmente en
uso.
Se
puede decir que Apache es el servidor HTTP más importante de Internet.
Características:
Apache es
uno de los mejores servidores de Web utilizados en la red Internet desde hace
mucho tiempo, únicamente le hace competencia un servidor de Microsoft, el
IIS. Por lo que éste servidor es uno de los mayores triunfos del software
libre, que tanto gusta a los usuarios de LINUX.
Es un servidor de Web
flexible, rápido y eficiente, continuamente actualizado y adaptado a los nuevos
protocolos (HTTP 1.1)
La versión actual del apache es
la 1.2.4 (1.3 ya está en beta). En la nueva versión se incluyen características
como el soporte para Windows NT y Windows 95, así como la inclusión de cuatro
dígitos en las fechas para evitar los problemas del año 2000.
Es el que da vida a
Internet, y gracias al cual, los clientes y servidores se permiten comunicar.
Su funcionamiento básico consiste en que el cliente establece una conexión,
utilizando el protocolo TCP, con el servidor; Y luego genera una petición, el
servidor le responde y se cierra la conexión. En la versión (http 1.0), el cliente sólo podía invocar tres operaciones
en el servidor.
5.- Postgres con Linux.
Características.
PostgreSQL es un servidor de base de datos relacional orientada a objeto publicado
bajo licencia libre BSD, una buena alternativa a MySQL.
Su instalación es ilimitada. Con PostgreSQL, nadie puede demandarlo por violar acuerdos de
licencia, puesto que no hay costo asociado a la licencia del software.
Los modelos de negocios más rentables con
instalaciones a gran escala.
No existe la posibilidad de ser auditado para
verificar cumplimiento de licencia en ningún momento.
Es flexibilidad para hacer investigación y
desarrollo sin necesidad de incurrir en costos adicionales de licenciamiento.
Existen varias herramientas gráficas de alta
calidad para administrar las bases de datos y para hacer diseño de bases de
datos.
Muchas organizaciones, incluyendo grandes
corporaciones, instituciones gubernamentales y pequeños negocios en línea usan PostgreSQL para manejar sus datos más valiosos y
aplicaciones de misión crítica.
Multitareas describe la habilidad de ejecutar
aparentemente, al mismo tiempo, numerosos programas sin obstaculizar la
ejecución de cada aplicación. Esto se conoce como multitareas preferente,
porque cada programa tiene garantizada la posibilidad de correr, esto es, cada
programa no se ejecuta sino que hasta que el sistema operativo lo aparta para
permitir que otros programas corran. Este tipo de multitareas es exactamente lo
que Linux hace.
La capacidad de Linux para asignar
tiempo del microprocesador a numerosas aplicaciones simultáneas se prestó como
consecuencia a servir a numerosas personas al mismo tiempo, cada una ejecutando
una o más aplicaciones. La particularidad en realidad destacada de Linux y sus
características de multiusuario y multitareas, es que más de una persona puede
trabajar en la misma versión de la misma aplicación de manera simultánea, desde
las mismas terminales o desde terminales separadas. Esto no debe confundirse
con numerosos usuarios que actualizan un archivo a un tiempo, particularidad
que es potencialmente desconcertante y peligrosa a la vez que indeseable.
Una de las formas de levantar el servicio de postgres es que siempre que prendamos nuestro Linux, se levante como un servicio mas, lo que resulta muy cómodo, así se configura el script una vez y siempre queda levantado como un servicio más. Para esto tenemos que hacer dos pasos, ver en que nivel se levanta nuestro Linux y poner el script en el directorio correspondiente o mejor dicho el link en el directorio correspondiente).
Para saber en que modo estamos arrancando nuestro Linux tenemos que editar el archivo /etc/inittab, y hay que ver un parámetro en una fila en particular.
6.- Como seria el
análisis y diseño de un sistema de información usando Postgres.
El análisis
y diseño de un sistema de información al utilizar un manejador de base de datos
Postgres permitirá obtener:
-Un excelente
optimizador de consultas
-Soporte para muchas características avanzadas
de SQL, Write-ahead logging, puedes escribir funciones (procedimientos
almacenados) en varios lenguages (pl/pgsql, pl/perl,
pl/python, pl/r), triggers, vistas, índices
funcionales y parciales, tipos de datos
Extensibles, etc etc.
-En el análisis de los datos:
·
Permite tipos de datos tales como números en coma
flotante, enteros, cadenas de caracteres, monedas y fechas; pero como es bien
sabido, esto no basta para satisfacer las necesidades de las aplicaciones del futuro.
Por lo tanto permite herencia, nuevos
tipos de datos y manejo de funciones.
· Se proporciona un conjunto de operadores y funciones que permiten realizar
operaciones geométricas.
· PostgreSQL aporta tipos para
almacenar direcciones P y direcciones MAC, para evitar el uso del tipo cadena
de caracteres para esta tarea, puesto que aporta restricciones y funciones
asociadas a estos tipos de datos.
· Incluye dentro del tipo de datos numérico el tipo serial, que permite crear
identificadores únicos para entradas en las tablas.
7.- Elaborar un
plan de migración de ORACLE a Postgre para una
empresa administrativa.
Para
realizar una migración de Oracle a Postgree se plantean dos formas:
-Crear
archivos planos con cada una de tus tablas, delimitando cada campo con un carácter
o un tab. Luego cargar las tablas en Postgres con el
comando \copy.
- Haz un dump de tus datos, de tal manera que
generes el esquema de tu BDi (creación de tablas, índices,
constrains, etc.). Carga tu dump
en postgres con el comando \i.
8.- Caso Práctico:
Suponga que a usted lo contratan como Asesor para elaborar un sistema de
información de Ventas de Tickets vía WEB usando Postgres para un Stadium de
Béisbol. Cuales serian sus recomendaciones y pasos a seguir.
Pasos
bajo el sistema operativo LINUX:
1)
Instalar nuestro servidor de base de datos.
# cd
/usr/ports/databases/postgresql81-server/
# make
config
Tan solo dejamos
las opciones por defecto y presionamos OK.
# make install
# make clean
Ya tenemos nuestro
servidor y cliente instalado en el sistema. Después de terminada la instalación
se nos indica que se debe agregar postgresql_enable="YES"
a nuestro archivo /etc/rc.conf
para iniciar nuestro servidor una vez iniciado nuestro computador. Entonces el
siguiente comando nos servirá:
# echo 'postgresql_enable="YES"' >> /etc/rc.conf
En el mensaje de instalación, primero se debe usar el
comando initdb, que nos sirve para crear una nueva 'database cluster', que no es más que una colección de base
de datos que serán manejadas por una única instancia del servidor.
Ejemplos de archivos de configuración se encuentran en: /usr/local/share/postgresql/
# mkdir
/usr/local/pgsql/data
# chown pgsql:pgsql /usr/local/pgsql/data
Si todo sale bien ya podemos hacer uso del programa initdb de la siguiente forma:
# su -l pgsql -c "initdb -D /usr/local/pgsql/data
-W -A md5"
Para poder hacer uso de PostgreSQL
debemos haber creado nuestro cluster(initdb(1)) que se localizará en /usr/local/pgsql/data/. Con el argumento -D indicamos el lugar donde nuestro
cluster será almacenado. La opción -W nos permitirá setear
nuestra clave de super usuario llamado pgsql. Finalmente, con el argumento -A podemos indicar el
método de autentificación para usuarios locales(en
éste caso: md5(1)).
Para más opciones de configuración de PostgreSQL
también se pueden consultar los archivos /usr/local/pgsql/data/pg_hba.conf y /usr/local/pgsql/data/postgresql.conf.
Recomendaciones:
-
Buscar
toda la información necesaria para poder realizar el diseño de la base de
datos, ya que se debería normalizar para que no existan campos redundantes.
-
Se
bebería implantar en una maquina que posee buen espacio en disco, ya que PostgreSQL
es una base de datos, y como cualquier base de datos, los requerimientos
crecerán a medida que incremente el uso de PostgreSQL.
-
Sobre
una máquina Linux media, necesitará aproximadamente 50 MB de disco duro para
desempaquetar el código fuente, y otros 60 MB para compilarlo. Si selecciona
ejecutar los tests de regresión, necesitará 30 MB
adicionales. Dependiendo de las opciones de configuración que elija, PostgreSQL puede tomar de
-
Planificar
con anticipación la cantidad de datos que va a almacenar.
-
Antes
de instalar PostgreSQL, se recomienda que compruebe
su sistema de archivos para asegurarse de que tiene suficiente espacio en disco
en la partición sobre la cual pretende instalar
-
Este
sistema es vía WEB por lo tanto se debe tener un servidor Web como apache el
cual debe ser configurado de acuerdo a los requerimientos del usuario.
El uso de software libre desarrollado con
estándares abiertos fortalecerá la industria del software nacional, aumentando y
fortaleciendo sus capacidades http://www.scribd.com/doc/9756/Decreto-3390-Software-Libre
PostgreSQL tiene 5 lenguajes procedurales
a diferencia de oracle que solo tiene 1 http://tuxtor.shekalug.org/?p=48
Apache
es el programa servidor HTTP que utilizamos en Valliniello. http://www.geocities.com/SiliconValley/Campus/2208/WEapache.html#carac
Muchas organizaciones, incluyendo grandes
corporaciones, instituciones gubernamentales y pequeños negocios en línea usan PostgreSQL http://www.solucioneslinux.com.mx/index.php?option=content&task=view&id=3&Itemid=25
Para
saber en que modo estamos arrancando nuestro Linux http://www.postgresql.cl/colabora/inst_pg_01_cf.htm