Libertonia
Portada · Todo · Software Libre · Desarrolladores · Comunidad · Internet · Tecnología · Meta · Diarios
Introducción a PostgreSQL

Documentación
Por soho501
departamento BBDD , Sección Software Libre
Puesto a las Fri Jan 10th, 2003 at 09:59:26 AM CET

"En los últimos años, el software de bases de datos ha experimentado un auge extraordinario, a raíz de la progresiva informatización de casi la totalidad de las empresas de hoy día. No es extraño pues, que existan multitud de gestores de bases de datos, programas que permiten manejar la información de modo sencillo. De este modo tenemos Oracle, Microsoft SQL Server, Borland Interbase entre otras. Las soluciones software que hemos citado son comerciales. Como siempre, en el mundo del software libre, siempre que se necesita algo, tarde o temprano se implementa.... "

 


Así es como comienza este "mini-tutorial" de PostgreSQL , desarrollado por dos estudiantes de ingeniería informática de la ULE, como complemento a un trabajo de la asignatura de bases de datos.

En él se analizan desde la instalación de PostgreSQL :

"Vamos a describir el proceso de instalación de PostgreSQL para Linux. En nuestro caso hemos utilizado la distribución RedHat 8.0. .RedHat utiliza un sistema de gestión de paquetes denominado RPM que permite instalar fácilmente el gestor de base de datos. Además PostgreSQL viene incluido en la distribución estándar por lo que simplemente hemos de instalar los paquetes q nos interesen:..." "En caso de no usar distribuciones basadas en RPM o simplemente por gusto, podemos bajar el código fuente de PostgreSQL de su web. Una vez bajado, lo descomprimimos... "..

Hasta una pequeña introducción a Pgaccess :

"Hasta ahora, hemos realizado toda la configuración de Postgres mediante órdenes en una línea de comandos. Esto suele intimidar a algunos usuarios (los no acostumbrados a sistemas Unix). Para ellos se desarrolló una potente herramienta, llamada pgaccess. Está programado utilizando las librerías tcl/tk por lo que puede correr en cualquier plataforma a la que haya sido portado tcl/tk Windows, Unix, Mac...). Pgaccess es libre como todo el software que estamos utilizando...."

Pasando por la administración remota con Openssh :

"En Linux (o Unix) posiblemente ya tengamos el cliente ssh instalado. Si no es así nos dirigiremos al sitio oficial de OpenSSH de donde bajaremos los fuentes, los compilaremos e instalaremos. Dependiendo de la distribución que usemos será más fácil o más difícil encontrar paquetes precompilados que nos ahorren el trabajo.
Suponiendo que ya tenemos el cliente instalado, es hora de acceder a la máquina remota. Sin entrar en detalles, diremos que basta con:... "

El tutorial se enfoca desde un ejemplo (que es el programa que se realizó para la asignatura), de una base de datos que se desea implementar :

"Se desea implementar una base de datos para facilitar la gestión y administración de un cementerio, en dicha base de datos se contemplan diferentes categorías laborales, distintos tipos de enterramiento, facturas por los servicios prestados, incluso se permite que una familia posea su propio panteón para un determinado número de personas. El cementerio está dividido en sectores, teniendo estos una capacidad y extensión variable que ha de quedar reflejada..."

El programa de acceso a la bd esta escrito en Python (por razones que el propio autor comenta en el tutorial) y su código fuente se puede ver en este link(tb se puede copiar es GPL)

Espero que a alguien le sirva de algo :p

< VIM: búsqueda y reemplazamiento (11 comments) | ¿Qué es el Software Libre? (11 comments) >
Enlaces Relacionados
· Oracle
· Microsoft SQL Server
· Borland Interbase
· este "mini-tutorial"
· PostgreSQL
· ULE
· Pgaccess
· OpenSSH
· Python
· este link
· More on Documentación
· Also by soho501

Menu
· crear cuenta
· FAQ
· búsqueda
· Fuentes de Noticias

Login
Nueva cuenta
Usuario:
Contraseña:

Ver: Modo: Orden:
Introducción a PostgreSQL | 15 comentarios (15 temáticos, editoriales, 0 ocultos)
Todo con software libre (4.60 / 10) (#2)
por Ariel a las Fri Jan 10th, 2003 at 12:24:40 AM CET
(Información Usuario) http://www.milugar.net

En este trabajo intentamos mostrar cómo casi cualquier problema puede resolverse mediante software libre. De paso huíamos del Microsoft SQL Server que teníamos (y tenemos) que usar en las prácticas :(

En este caso, además de utilizar sólo software libre, ocurre que además todas las herramientas utilizadas se pueden obtener gratuitamente, por lo que el beneficio es doble. Por un lado potenciamos el uso del soft libre (lo que a un empresario supongo que le dé igual), pero por otro, nos estamos ahorrando una enorme cantidad de dinero (que esto si le importa) en:

  • Gestor de Bases de datos: No sé lo que cuesta MS-SQL Server u Oracle. Pero sí sé que mucho. Nosotros con psql (la consola de PostgreSQL) y Pgaccess tenemos todo lo que necesitamos. Además para aquellos que necesiten soporte, aquí pueden encontrarlo.


  • Suite Ofimática: Para realizar la documentación se necesitan ciertas herramientas. Al menos una apliacación para diseñar diagramás y demás. Uno puede usar MS-Visio por unos 500$ o bien usar Dia con el que (al menos en cosas sencillas) se trabaja bastante más rápido.
    También necesitaremos escribir la documentación. Podemos utilizar MS-Word en la línea anterior. Obtendremos ficheros a los que buena parte del mundo no podrá acceder (*.doc) y la mitad de los que lo hagan lo harán mediante software ilegal (~ pirata). También podemos utilizar OpenOffice, o abiword... Nosotros utilizamos emacs (que no se enfaden los vim-eros que por aquí he visto muchos), scite y kate para escribir el SGML y luego pasarlo a DocBook. Resultado: un html de una calidad impecable, índices y tablas de contenidos autogeneradas y una presentación de lo más profesional :)


  • Desarrollo de Software: Podríamos haber utilizado Delphi, C++ Builder, Kylix, VisualBasic (arggghhhhhh!)... Súmenle las correspondientes licencias. En su lugar hemos utilizado Python que por su naturaleza permite desarrollar muy muy rápido (esto nos hacía falta) código de gran calidad. Como ya conocíamos Python y la conexión Python-Postgres era sencilla, la conclusión era clara.


  • Sistema Operativo: Qué bien va Postgres sobre Linux :) Sobre windows no hemos probado (¿a quién se le iba a ocurrir utilizar un gestor de bbdd que tenga que ejecutarse durante 24h al dia, 365 días al año en windows, que te "aconseja" reiniciar al instalar el mirc?) pero eso sí, si usamos windows, habría que sumar el coste de la licencia...


  • ... y seguro que me dejo alguna que otra cosa (lo de la administracion remota de la bbdd desde clientes windows o linux es una pasada, felicidades a la gente de Openssh).

    Conclusión: Que a ver si nos ponen buena nota :)
    --
    Un saludo,
    Visita mi lugar


    Y... porqué no Firebird? (3.33 / 3) (#11)
    por myDaemon a las Sat Jan 11th, 2003 at 05:26:08 PM CET
    (Información Usuario)

    Hola,

    sin entrar en guerras santas pro-BBDD ;), ¿por qué no Firebird? Es GPL al igual que PostgreSQL, y para lo que veo que hiciste te valdría perfectamente.

    Dejo claro que no conozco PostgreSQL más que por encima (lo básico), pero en su momento (hablo de un año atrás, más o menos) me pareció lenta en comparación con Firebird, que ni siquiera había alcanzado la v1.0.

    Ahora con la 1.5 Firebird incluso va mejor. Yo tengo ahora la Alpha5 en Windows y Linux y puedo decir que es bastante estable (tratándose de una v. alpha) y tremendamente rápida incluso con recursos limitados. Y te lo digo también desde la perspectiva "profesional" de verla correr con aplicaciones de gran demanda en el menor tiempo... Además, la creación de UDFs me parece muy sencilla y soporta muchas características que otros gestores no tiene (mySQL no, desde luego).

    En cuanto a conectividad (ODBC, JDBC), Firebird tampoco se queda atrás. Yo la he usado en pruebas con PHP y otros, y funcionaba.

    Yo siempre he oido que PostgreSQL disponía de mejores características en cuanto a orientación
    a objetos y cosas por el estilo. Pero yo cuando trabajo con un gestor lo que quiero es velocidad y estabilidad, mucho de ambos... y Firebird lo tiene.

    Vuelvo a repetir que PostgreSQL me es bastante desconocido. Que quede claro. No pretendo comenzar ningún debate, tan sólo conocer razones técnicas.

    Por eso pregunto; si tienes argumentos técnicos que me aclare cúal sería mejor para qué, me gustaría conocerlos. Nunca se sabe demasiado....

    Un saludo a todos

    Alberto


    [ Padre ]


     
    Dudas de novato sobre *SQL (2.00 / 1) (#3)
    por oneth a las Fri Jan 10th, 2003 at 11:05:45 AM CET
    (Información Usuario)

    La verdad es que todavía no estoy muy puesto en esto de las BBDD. Mi primera práctica la hice en Oracle porque es el gestor que tenemos en la facultad. La BBDD de mi web está en MySQL por motivos de comodidad en los inicios.

    Llegado el momento de elegir un gestor para trabajar de forma más seria, se me ocurre rebuscar por ahi información y me encuentro con las "limitaciones" del MySQL en cuanto a que no abarca todos los posibles querys SQL y alguna otra cosa por ahi sobre indices y demás. ¿Comparte estos problemas el PostgreSQL? Y aún más interesante ¿se usa a nivel profesional? Porque he visto anuncios en los tablones de la facultad pidiendo gente para el Oracle o incluso en diseño web con ayuda de mySQL, pero nada de momento para Postgre :(

    ¿Como está de extendido el soporte de Postgre en los distintos lenguajes? Por ejemplo en php creo recordar que está soportado, en Phyton veo que también, ¿en Java?

    Si me convences igual mi práctica de BBDD2 será en Postgre ^^

    P.D.: Es un pecado lo de no haber usado nada de nada el vi ¬¬ Aunque sólo fuese para hacer el README mítico que se coloca en cualquier lado xDDDDD

    [ Padre ]


    ¡Viva PosgreSQL! (4.00 / 3) (#5)
    por canuto a las Fri Jan 10th, 2003 at 01:40:17 PM CET
    (Información Usuario)

    ¿Comparte estos problemas el PostgreSQL?
    Pues la mayoría de ellos no. MySQL fue un gestor de BBDD que simpre ha estado orientado a la rapidez, descuidando mucho las características avanzadas que debe tener un SGBD moderno.
    Sin embargo, PostgreSQL ha sido todo lo contrario. Con muchas más posibilidades, su rendimiento ha sido siempre inferior a MySQL, aunque ésto ha cambiado mucho desde las últimas versiones de PostgreSQL.

     
    Y aún más interesante ¿se usa a nivel profesional?
    Yo trabajé no hace mucho durante un par de años en un pequeño ISP que también estaba metido en temas de programación de sitios web con integración de bases de datos, y siempre utilizábamos postgreSQL. Es más estable que una roca. Para alguna cosilla utilizamos MySQL, y era más inestable.

     
    Porque he visto anuncios en los tablones de la facultad pidiendo gente para el Oracle o incluso en diseño web con ayuda de mySQL, pero nada de momento para Postgre
    La verdad es que se ve más por ahí MySQL, pero quizá sea por inercia, ya que hay cantidad de proyectos libres que se integran con MySQL y no con PosgreSQL, aunque últimamente parece que la cosa está cambiando un poco...

     
    ¿Como está de extendido el soporte de Postgre en los distintos lenguajes? Por ejemplo en php creo recordar que está soportado, en Phyton veo que también, ¿en Java?
    En PHP te puedo asegurar que va de puta madre (2 años de experiencia), y en Java también va bastante bien, he estado cacharreando bastante con él.

     
    Si me convences igual mi práctica de BBDD2 será en Postgre
    Yo te animo a que uses PostgreSQL en vez de MySQL, no te arrepentirás...
    Sobre el tema de shells gráficos para PosgreSQL, puedes usar pgacces (que viene incluído en posgreSQL), o bien alguna de las herramientas programadas en Java que son compatibles con muchos de los SGBDs existentes y su uso es transparente respecto a ellos.

    [ Padre ]


    me habeis convencido ^^ (1.00 / 1) (#9)
    por oneth a las Fri Jan 10th, 2003 at 11:53:55 PM CET
    (Información Usuario)

    De momento ya lo tengo instalado, a ver si bajo algun GUI de aministracion y empiezo a trastear un poco. Todo sea por ampliar horizontes ;)

    [ Padre ]


     
    Hay bastante soporte (2.00 / 1) (#4)
    por Heimy a las Fri Jan 10th, 2003 at 12:34:39 PM CET
    (Información Usuario)

    Que yo recuerde, hay driver ODBC y JDBC, aparte de los que has mencionado para PHP y Python, por supuesto para Perl, y también lo hay para Ruby. Con eso, y la lib original (en C), y algún que otro wrapper que hay rondando por ahí para C++, creo que tenemos cubierta una buena parte del espectro de los lenguajes que pudiera necesitar un programador en Linux, y también en Windows (ODBC).

    [ Padre ]


     
    También usamos vi (2.00 / 2) (#8)
    por Ariel a las Fri Jan 10th, 2003 at 08:15:23 PM CET
    (Información Usuario) http://www.milugar.net

    P.D.: Es un pecado lo de no haber usado nada de nada el vi ¬¬ Aunque sólo fuese para hacer el README mítico que se coloca en cualquier lado xDDDDD

    vi fue mi más fiel compañero de fatigas cuando editaba los ficheros de configuración de Postgres (sobre todo el pg_hba.conf para los permisos de acceso :) En serio, me encanta vi, aunque para escribir documentos grandes, me gusta tener una barra de scroll. Para ficheros pequeños, pruebas o modificaciones siempre usaré vi

    ¿Por qué vi VS emacs? Lo mejor es vi Y emacs (o emacs Y vi, no empecemos ;) )
    --
    Un saludo,
    Visita mi lugar
    [ Padre ]


    algun dia me pondre con el emacs (1.00 / 1) (#10)
    por oneth a las Fri Jan 10th, 2003 at 11:57:21 PM CET
    (Información Usuario)

    :) Si es q aun no controlo ni lo mínimo del vim como para ponerme con otro nuevo xD Tiempo al tiempo, malo será q verano no tenga unos dias para dedicarle. El mismo dia me pondré a practicar tb con Perl y Phyton q son otras de mis "asignaturas pendientes" :(

    [ Padre ]


     
    buen documento, pero..... (3.00 / 1) (#13)
    por egapaz a las Wed Jan 15th, 2003 at 10:31:19 AM CET
    (Información Usuario)

    ¿no hay manera de imprimirlo de una tacada entero en vez de hacerlo navegando pagina a pagina? no he sido capaz de encontrar todo el tutorial completo, y cuando algo merece la pena me gusta tenerlo en papel.


    Un saludo y felicidades por tu trabajo.




    Eso tiene fácil solución. (2.00 / 1) (#14)
    por Ariel a las Wed Jan 15th, 2003 at 06:38:10 PM CET
    (Información Usuario) http://www.milugar.net

    Si tienes interés, ponte en contacto conmigo y te envío una versión "imprimible", bien en un solo html, bien en pdf, como quieras. De todas formas, a ver si me acuerdo de colgar los fuentes en sgml.
    --
    Un saludo,
    Visita mi lugar
    [ Padre ]


    El pdf colgado en laweb (2.00 / 1) (#15)
    por Ariel a las Wed Jan 15th, 2003 at 07:47:57 PM CET
    (Información Usuario) http://www.milugar.net

    Las iamgenes salen cortadas por algun despiste al escribir el sgml. De todas formas, para imprimir comodamente sirve: http://users.servicios.retecal.es/tjavier/docfinal/Introducci%F3n_a_PostgreSQL.html
    --
    Un saludo,
    Visita mi lugar
    [ Padre ]


    Eso es ser rapido (2.00 / 1) (#16)
    por egapaz a las Thu Jan 16th, 2003 at 09:32:12 AM CET
    (Información Usuario)

    ...y no un p.IV/amd ;-)
    Muchas gracias otra vez.

    [ Padre ]


     
    las tres "B", Bueno, Bonito y.... Barato (2.00 / 1) (#6)
    por chico a las Fri Jan 10th, 2003 at 04:48:34 PM CET
    (Información Usuario) http://www.loeda.net

    Soy de la generación de Clipper y dBase, en mi vida profesional lidio con MSSql Server, pero cuando descubri MySql me encanto, pero si la comparamos com SQLServer deja que desear, un dia me tope con PostGresql y ya no lo cambio por nada (tambien recomiendo probar SAPDB), el tutorial esta bien para empezar.
    Se recomienda leer Practical PostgreSQL de la editorial O`REILLY, el ISBN 1-56592-846-6, es mi libro de referencia para trabajar con esta fantastica base de datos



     
    Aprovechando que hablamos de bases de datos... (2.00 / 1) (#7)
    por PaulNaschy a las Fri Jan 10th, 2003 at 07:04:02 PM CET
    (Información Usuario)

    ... ¿alguien conoce alguna base de datos (o al menos un proyecto) que implemente de una forma razonablemente fiel el modelo relacional?. Aunque pensemos que las bases de datos pueden dividirse en las "no-libres" (Access, Sql-Server etc...) y las "libres" en realidad creo importante empezar a destacar una subdivisión entre aquellas que se ciñen al modelo relacional y aquellas que no.

    Recomiendo encarecidamente leer el libro de C.J Date "Introducción a los Sistemas de Bases de Datos", que aunque es un libro bastante grueso (+800 páginas) proporciona una visión fabulosa del modelo relacional de verdad y no el "pseudo-modelo" que propone SQL. En algunas partes es bastante teórico y contiene mucha matemática y formalismos pero despues de leerlo te produce la sensación de "Dios mío, todo el mundo está implementando algo equivocado". Al menos es lo que me pasó a mí despues de leerlo y por eso busco alguna base de datos más ceñida al modelo relacional

    Utilizo mucho PostgreSQL y tiene características muy potentes presentes en SGBD que valen mucho dinero pero ni PostgreSQL ni MySQL ni ninguna otra que yo conozca que sea libre o no (incluyendo a Oracle y DB2) se ciñen un poquito a dicho modelo. De hecho, los nuevos sistemas objeto-relacionales y los orientados a objetos puros caen en lo que C.J Date llama "el gran error garrafal" (es solo una sección de 3/4 páginas, leedlo). Os aseguro que despues de leerlo te cambia bastante los esquemas.

    Aunque solo sea por curiosidad también agradecería que alguien me dijera si existe alguna que empiece a implementar SQL3, aunque ni siquiera sé si SQL3 ha sido aprobado ya. Gracias



    lentitud o teoría != practica (3.00 / 1) (#12)
    por musg0 a las Sat Jan 11th, 2003 at 08:19:41 PM CET
    (Información Usuario) http://helvete.escomposlinux.org

    sin tener mucha idea del tema creo que el problema que describes puede ser que teóricamente el modelo relacional puede ser muy bueno pero en la práctica, implementarlo en código puede ser bastante lento.

    Supongo que las implementaciones atajarán las partes que puedan para conseguir una velocidad con la que se pueda trabajar de forma diaria.

    He visto incluso diseños de bases de datos mal hechos queriendo, porque una vez probadas en acción al hacer el select con un "join" de más de 5 tablas las consultas se hacían eternas.

    [ Padre ]


     
    Introducción a PostgreSQL | 15 comentarios (15 temáticos, editoriales, 0 ocultos)
    Ver: Modo: Orden:

    ecol Logo Powered by Scoop
    Todas las Marcas Registradas y copyrights de esta página son propiedad de sus respectivos dueños.
    Los comentarios son propiedad del que los escribe.
    Los iconos de las noticias y el logotipo son propiedad de Javier Malonda.
    El Resto © 2002 Escomposlinux.org y aledaños.

    Puedes sindicar los contenidos de libertonia en formato RSS 1.0 y RDF 0.9. También se puede sindicar la cola de envíos pendientes de moderación.

    El proyecto escomposlinux.org está dedicado a la memoria de tas

    crear cuenta | faq | búsqueda