PostgreSQL è un sistema di gestione di database relazionali a oggetti open source (ORDBMS) con una solida reputazione di affidabilità e performance. Le sue funzioni principali sono quelle di memorizzare e recuperare i dati in modo sicuro, supportando al contempo le best practices informatiche.
Con oltre 30 anni di sviluppo attivo e il supporto di una community open source dedicata, PostgreSQL compete con i principali database commerciali come SQL Server e Oracle. PostgreSQL è diventato il database relazionale open source preferito da molte organizzazioni.
PostgreSQL utilizza un'architettura client-server che consente al client e al server di risiedere su host diversi della rete. Il programma del server gestisce i file del database e accetta ed esegue più connessioni simultanee al database da parte delle applicazioni client. I client remoti possono connettersi al server attraverso la rete o Internet.
La variabile search_path di PostgreSQL consente di determinare l'ordine di ricerca degli schemi e di stabilire quali di essi non hanno la necessità di utilizzare la qualificazione dello schema.
Il primo schema restituito nel percorso di ricerca è definito schema corrente. Quando si creano nuovi oggetti, come le tabelle, se non si specifica il nome dello schema, la tabella verrà creata nello schema corrente.
La variabile search_path può essere impostata a diversi livelli che indicano a PostgreSQL quale impostazione del percorso di ricerca utilizzare. Questi includono:
PostgreSQL deriva dal progetto POSTGRES avviato nel 1986 presso l'Università della California a Berkeley. Dopo la conclusione del progetto POSTGRES nel 1993, nel 1995 venne creato Postgres95 sulla base del codice POSTGRES e fu aggiunto un interprete del linguaggio SQL in sostituzione del linguaggio di query PostQUEL.
Nel 1996, quando il nome Postgres95 divenne obsoleto, fu scelto PostgreSQL come nuovo nome per indicare il progetto POSTGRES originale e il supporto aggiunto per SQL. Sebbene PostgreSQL sia il nome ufficiale, Postgres è comunque accettato e PostgreSQL è ora comunemente indicato come Postgres.
La ricerca nel testo completo di PostgreSQL consente di cercare un singolo documento o un insieme di documenti in un database completo. Può anche identificare i documenti in linguaggio naturale che soddisfano i requisiti di una query e ordinarli in base alla pertinenza alla query.
Sebbene le clausole LIKE e ILIKE possano eseguire query di ricerca basate su stringhe, le parole del testo non vengono indicizzate, con conseguente peggioramento delle performance. La ricerca nel testo completo indicizza i documenti per ottenere risultati di ricerca più rapidi e supporta i dizionari per un controllo più preciso sulla normalizzazione dei token.
Per implementare la ricerca nel testo completo di PostgreSQL si utilizzano due funzioni:
PostgreSQL è stato ampiamente adottato in diversi settori ed è comunemente utilizzato per il data warehousing e per applicazioni complesse e altamente transazionali che richiedono elevati volumi di dati. Per questi tipi di applicazioni, le performance rappresentano un fattore essenziale.
PostgreSQL è dotato di diverse funzionalità per incrementare e ottimizzare le performance. La versione attuale di PostgreSQL, v14, aggiunge un ulteriore supporto per i tipi di dati complessi e per i dati non strutturati JavaScript Object Notation (JSON). I miglioramenti delle funzionalità di PostgreSQL v14 in termini di simultaneità delle connessioni, parallelismo delle query, workload caratterizzati da un elevato numero di scritture e dalla replica logica testimoniano la costante attenzione di PostgreSQL verso il miglioramento delle performance.
La versione attuale di PostgreSQL è la 14, che è stata rilasciata il 30 settembre 2021. Fornisce un supporto aggiuntivo per i tipi di dati complessi e funzionalità che facilitano il lavoro con JSON e con intervalli di dati non contigui. La versione 14 offre anche funzionalità migliorate per i workload intensivi, i workload distribuiti, l'amministrazione, l'osservabilità e la sicurezza.
Le altre versioni di PostgreSQL ancora supportate sono 13/12/11/10/9.6. Le versioni 9 e 10 sono disponibili per Linux x86-64, Linux x86-32, Mac OS X, Windows x86-64 e Windows x86-32. Le versioni da 11 a 14 sono disponibili solo per Mac OS X e Windows.
Di seguito sono elencati tre vantaggi di PostgreSQL rispetto a SQL Server:
PostgreSQL è un sistema di gestione di database relazionali a oggetti, gratuito e open source, gestito dal PostgreSQL Global Development Group e sostenuto da una community attiva che fornisce continui suggerimenti per le funzionalità nuove ed esistenti. SQL Server è un sistema commerciale proprietario per la gestione dei database creato e gestito da Microsoft. È disponibile in diverse edizioni, da quelle entry-level a quelle aziendali dotate di tutte le funzionalità.
PostgreSQL è ampiamente disponibile su diversi sistemi operativi, tra cui Windows, Linux, OS X, Unix, FreeBSD, HP-UX, NetBSD, OpenBSD e Solaris. SQL Server è disponibile solo su piattaforme Windows e Linux.
PostgreSQL dispone di un solido sistema di gestione della simultaneità con il controllo della concorrenza multiversione, che consente a più processi di accedere e modificare contemporaneamente i dati condivisi. SQL Server consente di identificare i problemi di simultaneità e le query con un tempo di esecuzione lungo, ma i processi sono spesso soggetti a blocchi e stalli.
Di seguito sono elencati diversi casi d'uso di PostgreSQL:
Le moderne applicazioni dei siti web gestiscono fino a centinaia di migliaia di richieste al secondo inviate dai clienti. Per questo motivo, la scalabilità è un fattore importantissimo per la maggior parte delle organizzazioni.
Come database relazionale a oggetti, PostgreSQL offre funzionalità sia relazionali che orientate ai documenti nello stesso prodotto, per supportare un'ampia gamma di applicazioni. PostgreSQL funziona bene con i più diffusi framework web moderni come Django e Node.js, e con linguaggi come Java, Python, Ruby on Rails e PHP. PostgreSQL offre inoltre una funzionalità di replica che consente di effettuare lo scale-out di qualsiasi numero di server di database.
Le organizzazioni finanziarie di tutte le dimensioni utilizzano PostgreSQL come database principale per applicazioni e prodotti. PostgreSQL è completamente conforme alle proprietà ACID (Atomicità, Coerenza, Isolamento e Durata) ed è ideale per i workload OLTP (Online Transaction Processing). Si integra anche con software matematici come Matlab e R per eseguire l'elaborazione di analytics e di business intelligence.
Utilizzato con PostGIS, un estensore di database spaziale, PostgreSQL offre un supporto aggiuntivo per l'esecuzione di query di localizzazione su oggetti geografici in SQL e per l'analisi dei dati spaziali. PostGIS è altamente conforme agli standard, fornisce centinaia di funzioni per l'elaborazione di dati geometrici in vari formati e può essere utilizzato sia con QGIS che con GeoServer per facilitare la gestione dei geodati.
Ecco le risposte alle domande più comuni su PostgreSQL:
PostgreSQL è un sistema di gestione di database relazionale a oggetti. MySQL è un sistema di gestione di database relazionali (RDBMS). Postgres è incentrato sull'estensibilità e sulla conformità agli standard.
Dal punto di vista RDBMS, Postgres è transazionale e conforme alle proprietà ACID, con funzionalità per viste aggiornabili e materializzate, trigger e chiavi esterne. PSQL supporta anche i tipi di dati JSON per la memorizzazione di dati JSON e funzioni e operatori specifici per JSON per l'esecuzione di query non relazionali.
MySQL è un RDBMS che memorizza i dati in tabelle con righe e colonne. È la scelta ideale se si desidera un RDBMS caratterizzato da una sicurezza elevata e focalizzato sull'integrazione e sull'estensibilità per le applicazioni web e le soluzioni personalizzate.
PostgreSQL è un database relazionale a oggetti che include sia le funzionalità dei database relazionali che le funzionalità NoSQL per l'esecuzione di query su dati non strutturati. Scegli PostgreSQL se hai la necessità di procedure complesse, integrazione, progetti molto elaborati e integrità dei dati.
Ecco alcune differenze tra i due sistemi:
PostgreSQL supporta sia i dati relazionali che quelli orientati ai documenti e consente di memorizzare e sottoporre a query diversi tipi di dati nelle stesse tabelle. La velocità, la sicurezza e la solidità di PostgreSQL lo rendono adatto alla maggior parte delle applicazioni. Grazie ai continui miglioramenti in termini di performance ed efficienza, gli utenti stanno abbandonando database commerciali consolidati come Oracle per passare a PostgreSQL.
Offri una Modern Data Experience™ con la velocità, le performance e l'affidabilità dello storage NVMe e degli array all-flash di Pure Storage®.
Premiato come DBMS dell'anno nel 2020 (oltre che nel 2017 e nel 2018), PostgreSQL è sempre più utilizzato grazie alle velocità delle performance e all'affidabilità che offre. I nostri test dimostrano che PostgreSQL fornisce performance migliori sullo storage FlashArray™ rispetto a un sistema SAS-DAS comparabile. FlashArray//X offre performance costanti per i workload dei database e funzionalità aziendali avanzate che non sono disponibili con i sistemi DAS.
Scegli lo storage NVMe e NVMe-oF end-to-end ottimizzato per le performance di FlashArray//X per i tuoi workload tier 0 e tier 1.
Hai domande o commenti sui prodotti o sulle certificazioni di Pure? Siamo qui per aiutarti.
Prenota una demo per vedere come puoi trasformare i tuoi dati in risultati concreti con Pure.
Telefono: +39 02 9475 9422
Media: pr@purestorage.com
Pure Storage Italia
Spaces c/o Bastioni di Porta Nuova, 21
Milano, 20121