Che cos'è PostgreSQL?

Introduzione

Questo testo è la traduzione di “What isPostgreSQL” scritto da Ray Hunter

Un po' di storia

PostgreSQL nacque nelle sale dell'Università dellaCalifornia a Berkley. A quei tempi era conosciuto come"Ingres". Molti sviluppatori collaborarono durantele fasi iniziali di sviluppo del codice base di PostgreSQL.PostgreSQL lasciò Berkley e si trasferì nelregno dell'open source nell'estate del 1996. Questaera una sfida maggiore per gli sviluppatori; tuttavia, fu unperiodo vitale nello sviluppo complessivo di quello che noiconosciamo come PostgreSQL. Nei primi giorni dello sviluppoopen source c'erano 4 sviluppatori principali: ThomasLockhart, Vadim Mikheev, Bruce Momjian e Marc Fournier.

Più sviluppatori contribuivano al codice sorgente epiù funzionalità e codice pulito consolidavanole prestazioni globali di PostgreSQL. Il risultato èun potente RDBM che può competere con molti degliodierni sistemi database commerciali. La crescita dei suoiutenti l'ha fatto diventare un protagonista nellacomunità open source e nella comunità database.

Chi usa PostgreSQL?

C'è talmente tanta gente che usa PostgreSQL che laPostgreSQL Inc. ha creato un sito webche permette di vedere inomi delle compagnie che attualmente stanno usandoPostgreSQL. Una delle maggiori supporter che si èconvertita a PostgreSQL è stata RedHat, che usaPostgreSQL per molti dei suoi database e lo usa in tutte lesue versioni.

La PostgreSQL Inc. gestisce molti dei problemi inerenti illato business dell'applicativo database PostgreSQL e lasua crescita globale. Il primo obiettivo della compagniaè commercializzare, pubblicizzare e promuoverel'uso di questa libera soluzione open source per tutto ilmondo.

Perché usare PostgreSQL?

PostgreSQL è il più avanzato sistema RDBM nellacomunità open source. Alcune delle ragioni per cui sidovrebbe usare PostgreSQL sono elencate di seguito:

1. Supporto per chiavi esterne;

2. Join: inner, left, right, full, outer e natural joins;

3. View (una delle mie funzioni preferite);

4. Trigger: prima e/o dopo le azioni del database;

5. Supporto per sub-select e sub-queries;

6. Funzioni definite dall'utente;

7. Supporto per molti tipi di dati delineati in SQL95 eSQL99;

8. Supporto per costrutti geometrici e vari costrutti direte, come IP e indirizzi MAC (Media Access Control);

9. Supporto per Regole;

10. Indici: Indici essenziali, R-Tree, B-Tree;

11. Transazioni: compatibile con ACID, rollbacks, isolamentodelle transazioni serializzabili;

12. Multi-Versione Controllo di Concorrenza (MVCC).Utilissimo per applicazioni concorrenti.

Molte di queste caratteristiche potrebbero risultare nuove;tuttavia, man mano che si acquista familiarità con isistemi database, cresce anche l'esigenza dicaratteristiche più potenti.

Paragonato ad altri database, PostgreSQL è usato permolte applicazioni che richiedono caratteristiche piùcomplesse. Per esempio, se serve un database che supporta lechiavi esterne, si userà PostgreSQL piuttosto cheMySql. MySql ha tabelle che supportano le chiavi esterne;tuttavia, sono difficilissimi da configurare per gliinesperti. E' più facile usare PostgreSQL inquesto caso, perché la caratteristica ègià supportata e non si devono configurare tabelleaggiuntive.

Fonti

1. Storia di PostgreSQL: http://www.ca.postgresql.org/docs/devhistory.html

2. PostgreSQL: http://www.postgresql.com

3. PostgreSQL Inc.: http://www.pgsql.com

4. Documenti interattivi: http://www.postgresql.org/idocs/

5. Documenti tech: http://techdocs.postgresql.org/

6. PostgreSQL pratico: http://www.commandpoint.com/ppbook/

7. Download PostgreSQL:http://www.us.postgresql.org/sitess.html

8. Developer's corner:http://developer.postgresql.org/index.php

9. Developer's bios:http://developer.postgresql.org/bios.php

Ringraziamo per la gentile concessione Ray Hunter e PHPBeginner.com