PostgreSQL 9.5: UPSERT, sicurezza a livello di riga e funzionalità per i Big Data

From: gabriele(dot)bartolini(at)2ndquadrant(dot)it
To: pgsql-it-generale(at)postgresql(dot)org
Subject: PostgreSQL 9.5: UPSERT, sicurezza a livello di riga e funzionalità per i Big Data
Date: 2016-01-07 13:56:51
Message-ID: CAHNtfO5LPnLxATkqoma0YDMMQEX8qu90MYtoKnZ7GnefMU8rKQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-it-generale

7 GENNAIO 2016: Il PostgreSQL Global Development Group annuncia il rilascio
di PostgreSQL 9.5. Questa versione aggiunge la funzionalità di UPSERT, la
sicurezza a livello di riga e diverse caratteristiche per i Big Data che
amplieranno il bacino di utenza del più avanzato database al mondo. Con
queste nuove proprietà, PostgreSQL sarà ancor di più la miglior scelta per
le applicazioni di startup, grandi aziende e pubblica amministrazione.

Annie Prévot, CIO del CNAF, la Cassa Nazionale per gli Assegni Familiari
della Francia, afferma: "Il CNAF fornisce servizi a 11 milioni di persone
ed eroga 73 miliardi di Euro ogni anno, attraverso 26 tipi di prestazioni.
Questo servizio, essenziale per la popolazione, si basa su un sistema
informativo che deve essere efficiente e affidabile. Con soddisfazione, il
sistema di CNAF si basa su PostgreSQL per la gestione dei dati."

UPSERT
------

Da molti anni una delle funzionalità più richieste dagli sviluppatori di
applicazioni, "UPSERT" è la forma breve di "INSERT, ON CONFLICT UPDATE" e
permette di trattare in modo identico record nuovi e aggiornati. UPSERT
semplifica lo sviluppo di applicazioni web e mobile incaricando il database
di gestire conflitti fra modifiche concorrenti ai dati. Inoltre questa
funzionalità abbatte l'ultima barriera significativa per la migrazione di
applicazioni legacy MySQL verso PostgreSQL.

Sviluppata nel corso degli ultimi due anni da Peter Geoghegan di Heroku,
l'implementazione di PostgreSQL di UPSERT è notevolmente più flessibile e
potente di quelle offerte da altri database relazionali. La nuova clausola
ON CONFLICT consente di ignorare nuovi dati, oppure di aggiornare diverse
colonne o relazioni in modo da supportare complesse catene ETL (Extract,
Transform, Load) per il caricamento massivo di dati. Inoltre, come tutto
PostgreSQL, è progettata per utilizzo concorrente e per integrarsi con
tutte le altre funzionalità, replica logica compresa.

Sicurezza a livello di riga
---------------------------

PostgreSQL continua a espandere le sue capacità nel campo della protezione
dei dati, aggiungendo il supporto per la sicurezza a livello di riga - in
inglese Row Level Security (RLS). RLS implementa un verso controllo di
accesso al dato per riga e per colonna e si integra con stack esterni di
sicurezza come SE Linux. PostgreSQL è già noto per essere "il più sicuro di
default". RLS consolida questa posizione, rendendolo la migliore scelta per
applicazioni con elevati requisiti di sicurezza dei dati; in particolare,
conformità a PCI, direttiva europea su Data Protection e standard di
protezione dei dati in ambito sanitario.

RLS è l'apice di cinque anni di funzionalità sulla sicurezza aggiunte a
PostgreSQL e comprende l'ampio lavoro svolto da KaiGai Kohei di NEC,
Stephen Frost di Crunchy Data e Dean Rasheed. Grazie a RLS, gli
amministratori di database possono impostare politiche di sicurezza per
gestire quali righe particolari utenti sono autorizzati ad aggiornare o a
vedere. Implementare la sicurezza del dato in questo modo rende il database
resistente a exploit di tipo SQL injection, nonché ad altre falle di
sicurezza a livello applicativo.

Funzionalità per i Big Data
---------------------------

PostgreSQL 9.5 include molteplici funzionalità per database di grandi
dimensioni e per la loro integrazione con altri sistemi Big Data. Tali
funzionalità riaffermano il ruolo dominante di PostgreSQL nel mercato open
source dei Big Data, in forte crescita. Fra queste, vale la pena citare:

Indici BRIN: questo nuovo tipo di indice supporta la creazione di indici
piccoli ma al tempo stesso molto efficienti per tabelle molto grandi,
"naturalmente ordinate". Per esempio, tabelle contenenti dati di log con
miliardi di record possono essere indicizzate e ricercate nel 5% del tempo
richiesto da un indice BTree tradizionale.

Ordinamenti più veloci: PostgreSQL riesce a ordinare più velocemente dati
testuali e di tipo NUMERIC, utilizzando un algoritmo chiamato "chiavi
abbreviate". Questo algoritmo è in grado di accelerare query che
necessitano di ordinare grandi moli di dati da 2 a 12 volte, e di
velocizzare la creazione di indici fino a 20 volte.

CUBE, ROLLUP e GROUPING SET: queste nuove clausole dello standard SQL
permettono di produrre report a più livelli di riepilogo utilizzando una
sola query invece di molteplici, come in passato. CUBE inoltre consente di
integrare PostgreSQL con strumenti di reporting come Tableau, tipici di
ambienti Online Analytic Processing (OLAP).

Foreign Data Wrapper (FDW): i FDW consentono già a PostgreSQL di essere
utilizzato come motore di query per altri sistemi Big Data come Hadoop e
Cassandra. La versione 9.5 aggiunge IMPORT FOREIGN SCHEMA e la propagazione
("pushdown") delle JOIN, rendendo le connessioni per query a database
esterni sia più facili da configurare che più efficienti.

TABLESAMPLE: questa clausola SQL consente di ottenere in modo veloce un
campione statistico di una tabella enorme, senza la necessità di
ordinamenti dispendiosi.

"Il nuovo indice BRIN di PostgreSQL 9.5 è una funzionalità molto potente
che permette a Postgres di gestire e indicizzare volumi di dati che fino ad
ora erano impraticabili, se non addirittura impossibili. È in grado di
portare la scalabilità e le prestazioni oltre i limiti dei tradizionali
database relazionali e rende PostgreSQL una soluzione perfetta per
analytics con Big Data", afferma Boyan Botev, Lead Database Administrator,
Premier, Inc.

Link utili
----------

* Downloads: http://www.postgresql.org/downloads
* Press Kit: http://www.postgresql.org/about/press/presskit95
* Release Note:
http://www.postgresql.org/docs/current/static/release-9-5.html
* Le novità di PostgreSQL 9.4 (in inglese):
https://wiki.postgresql.org/wiki/What%27s_new_in_PostgreSQL_9.5
* Articoli di blog su funzionalità di PostgreSQL 9.5 (in italiano, a cura
di 2ndQuadrant Italia): http://blog.2ndquadrant.it/tag/9-5/

Contattaci
----------

Contatto per la stampa:

Gabriele Bartolini
it(at)postgresql(dot)org
Ufficio: +39 0574 870600
Mobile: +39 338 1566217

Su PostgreSQL
-------------

PostgreSQL è il principale sistema di gestione di database open source, con
una comunità internazionale costituita da migliaia di utenti e sviluppatori
nonché decine di aziende ed enti provenienti da tutte le parti del mondo.
Il progetto PostgreSQL si porta dietro oltre 25 anni di attività di
ingegneria del software, a partire dal campus di Berkeley dell'Università
di California, ed oggi può vantare un ritmo di sviluppo senza uguali. La
gamma di funzionalità mature messe a disposizione da PostgreSQL non
soltanto è in grado di competere con quelle offerte da sistemi di database
proprietari, ma le migliora in termini di funzionalità avanzate,
estensibilità, sicurezza e stabilità. Scopri maggiori informazioni su
PostgreSQL e partecipa attivamente alla nostra comunità su
http://www.postgresql.org e, per l'Italia, http://www.itpug.org.

--
Gabriele Bartolini - 2ndQuadrant Italia - Managing Director
PostgreSQL Training, Services and Support
gabriele(dot)bartolini(at)2ndQuadrant(dot)it | www.2ndQuadrant.it

Browse pgsql-it-generale by date

  From Date Subject
Next Message gabriele.bartolini 2016-08-11 14:15:16 Rilascio aggiornamenti di sicurezza 11 agosto 2016
Previous Message Alessio Gennari 2015-10-06 08:29:11 Re: embedded