PostgreSQL - amministrazione



Documenti analoghi
PostgreSQL 8.4. Associazione Italiana PostgreSQL Users Group ConfSL 2009 Speaker's Corner Bologna, 13 Giugno 2009

Associazione Italiana PostgreSQL Users Group ConfSL 2009 Bologna, 13 Giugno Gabriele Bartolini

Un database libero per la Pubblica Amministrazione Italiana

PostgreSQL, un database libero per la Pubblica Amministrazione Italiana

PostgreSQL, un database libero per la Pubblica Amministrazione Italiana

Introduzione a PostgreSQL e phppgadmin

L o. Francesco Cabras. un sistema integrato per la gestione dei progetti di sviluppo software

Sistemi avanzati di gestione dei Sistemi Informativi

Proposta UNIF Progetto: Portale delle fonti di energia rinnovabile. Obiettivi

C o r s o L i b e r o d i Emiliano Gabrielli <AlberT@SuperAlberT.it> GrUSP.it

DBMS e Linguaggi di programmazione nell'era di Internet

ERP OPEN SOURCE STATO DELL ARTE PRESENTAZIONE EVENTI 2010

Lezione 9. Applicazioni tradizionali

ht://miner Un sistema open-source di data mining e data warehousing per lo studio dei comportamenti degli utenti su Internet

Software per Helpdesk

Gestione di un magazzino: sviluppo di un applicazione web-database

Implementing a new ADT based on the HL7 version 3 RIM. Esempio

Corso di PHP. Prerequisiti. 1 - Introduzione

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Il database management system Access

CONTENUTI 1. INTRODUZIONE CONCETTI BASICI SU EQUINOX CMS XPRESS ACCESSO A EQUINOX CMS XPRESS PAGINA D INIZIO...

Lezione V. Aula Multimediale - sabato 29/03/2008

29 Novembre 2012 Open Source: un opportunità per far evolvere l ICT nelle imprese

MODULO 02. Iniziamo a usare il computer

Sistemi informativi secondo prospettive combinate

Introduzione a phpmyadmin

Software open-source nella Pubblica Amministrazione italiana

Il fenomeno del Software Open Source

Caratteristiche principali. Contesti di utilizzo

Introduzione al Software libero

Internet: Software Open Source e Sistemi operativi. conoscerlo al meglio per usarlo meglio Gabriele Riva - Arci Barzanò

Al giorno d oggi, i sistemi per la gestione di database

L i n u B e s t a Mario Di Raimondo

COME SVILUPPARE UN EFFICACE PIANO DI INTERNET MARKETING

Basi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti

Presentazione della tesi di laurea di Flavio Casadei Della Chiesa. Newsletter: un framework per una redazione web

1. BASI DI DATI: GENERALITÀ

Concetti di base di ingegneria del software

Sistemi avanzati di gestione dei Sistemi Informativi

Descrizione del prodotto WebPEG: Piano Esecutivo Gestione

Database spaziali FOSS e interoperabilità

DATABASE.

DBMS. Esempi di database. DataBase. Alcuni esempi di DBMS DBMS. (DataBase Management System)

Mirco Curzi Ing. Elttronico PhD VII Ciclo - DIIGA

Sommario. Oracle Database 10g (laboratorio) Grid computing. Oracle Database 10g. Concetti. Installazione Oracle Database 10g

Basi di dati (3) Ing. Integrazione di Impresa A.A. 2007/08

Il Sistema Operativo Linux

Sistemi Operativi di Rete. Sistemi Operativi di rete. Sistemi Operativi di rete

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Corso sul pacchetto R

Progetti F.O.S.S. Ieri e Oggi

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Progetto Atipico. Partners

Corso base di Informatica. Microsoft Excel. Microsoft Access INFORMATICA. Docente: Durata: 40 ore. Destinatari

Informatica DR KLOE Calcolo

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

SISTEMI INFORMATICI/WEBGIS PER LA GESTIONE DI DATI AMBIENTALI E TERRITORIALI Povo, Steno Fontanari

PRESENTAZIONE. Chi è B-Bright

Paghe Open. software per l'elaborazione delle paghe

UN PROGRAMMA APPLICATIVO: ACCESS Access è un programma del pacchetto Office che permette di realizzare database

.EVERYWHERE LOGIN. entra nel futuro. partnership signed

Il software per il fund raising delle organizzazioni NON PROFIT

INFN Security Workshop Firenze Settembre IMHO e IMP: una interfaccia Web sicura per la posta elettronica. Raffaele.Cicchese@pr.infn.

Progetto LearnIT PL/08/LLP-LdV/TOI/140001

la tua presenza e il tuo BUSINESS ON-LINE

Soluzioni integrate per la gestione del magazzino

RADAR. Raccolta e Analisi Dati per Attribuzione Rating

Specifiche tecniche e funzionali del Sistema Orchestra

lem logic enterprise manager

Una miniera di dati sul comportamento degli utenti del Web

OPEN SOURCE. Concetti chiave e implicazioni per le scelte aziendali (fornitori e utenti)

Progettazione di una base di dati Ufficio della Motorizzazione

Programmare in ambiente Java Enterprise: l offerta formativa di Infodue

Tool. Basi di Dati e Sistemi Informativi Prof. Marco Di Felice Dott.sa Sara Zuppiroli A.A

Le Basi di Dati. Le Basi di Dati

Content Management Systems

SOMMARIO Introduzione Caratteristiche generali della piattaforma Amministrazione degli utenti 5

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

BackupPC Backup di rete con de-duplicazione

Strumento per l iniezione di guasti software nel sistema operativo GNU/Linux

REALIZZAZIONE DI UN LABORATORIO REMOTO PER ESPERIENZE DI ROBOTICA EDUCATIVA: LATO CLIENT

Linux e Open Source: Libero! Non "gratis"...

Il software di gestione immobiliare più facile da usare. Modulo Web v5.2.

Percorso Formativo. indirizzo. M a r k e t i n g. E - C o m m e r c e

Hardware delle reti LAN

Grid Data Management Services

MonoDay 2010 FSGateway Ing. Torello Querci

Organizzazione delle informazioni: Database

Parallels Plesk Panel

Lorenzo Sarti Materiale didattico sarti

Una metodologia di progettazione di applicazioni web centrate sui dati

La problematica della migrazione. Enrico Gulfi Servizio Organizzazione e Informatica Città di Lugano

Compiere ERP/CRM Compiere per le PMI

I database relazionali (Access)

Migliorare le prestazioni delle PMI collaborando con clienti e fornitori Sviluppo di nuove abilità e strumenti ICT di supporto

Organizzazione tecnico-informatica Ing. Fabio Binotto

Modulo Gestione Interventi Tecnici. Il prezioso assistente che mancava alla tua impresa.

Università Degli Studi Di Milano. PostgreSQL

Schema della base di dati del Catalogo dei Dati della Pubblica Amministrazione Renzo Orsini

Transcript:

PostgreSQL - amministrazione ITPUG - Pisa - 08/05/2009 Gabriele Bartolini Flavio Casadei Della Chiesa Luca Ferrari Marco Tofanari Associazione Italiana PostgreSQL Users Group www.itpug.org Pisa, 8 Maggio 2009 1

ITPUG - Pisa - 08/05/2009 Licenza Creative Commons Attribuzione Non commerciale Condividi allo stesso modo 2.5 Italia http://creativecommons.org/licenses/by-nc-sa/2.5/it/ Questo documenti è un riadattamento di una presentazione realizzata da Devise.IT intitolata Cos'è PostgreSQL, tenutasi il 23 marzo 2009 all'università di Pisa ( http://www.tosslab.it/documentazioneeventi/azstud-2ndquadrant) 2

Cos'è PostgreSQL Introduzione Open-Source La storia di PostgreSQL Panoramica delle funzionalità più importanti I pro e i contro Il futuro di PostgreSQL La comunità di PostgreSQL e ITPUG 3

Introduzione PostgreSQL è noto come il più avanzato sistema di gestione di basi di dati disponibile in open-source Termini: Sistema di gestione di basi di dati (Database Management System DBMS) Open-Source 4

Database e DBMS Un database è una collezione di dati strutturati Un DBMS è un insieme di componenti software in grado di permettere la creazione e la manipolazione di un database Esistono diversi modelli di database e DBMS: Gerarchico Reticolare Relazionale (più diffuso) Object Relational Orientato agli oggetti 5

ORDBMS Object Relational DataBase Management System Un ORDBMS è un DBMS relazionale che: Supporta un modello di database object oriented (implementa oggetti, classi e ereditarietà) L'estensione del modello di dati con tipi di dati e metodi personalizzati PostgreSQL è un ORDBMS 6

Open-Source Il software open-source (a codice aperto) permette lo studio, il riuso e la modifica del codice secondo determinate regole Tali regole sono dette licenze d'uso PostgreSQL è distribuito secondo la licenza BSD, una delle più permissive L'utilizzo, la modifica, la distribuzione del codice di PostgreSQL non comporta nessun esborso di denaro (costi di licenza = 0) Totale libertà aziendale (nessuna restrizione) 7

Licenza BSD Copyright (c) <year>, <copyright holder> All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the <organization> nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. 8

Licenze a confronto: PostgreSQL/MySQL/Oracle Costi per lo studente: PostgreSQL: no Oracle: no MySQL: no Costi per lo sviluppatore (librerie client): PostgreSQL: no Oracle: no MySQL: no se FOSS, sì se commerciale Costi per l'utilizzatore: PostgreSQL: no Oracle: sì MySQL: no se GPL, sì se commerciale Possibilità di redistribuzione: PostgreSQL: sì MySQL: sì se FOSS Cos'è PostgreSQL - 23 marzo 2009 9

Novità nel mercato del database open-source 16 gennaio 2008: Sun Microsystems acquista MySQL AB per la cifra di 1 miliardo di dollari americani 21 aprile 2009: Oracle Corporation acquista Sun Microsystems per circa 7 miliardi e mezzo di dollari americani 10

La storia di PostgreSQL Cos'è PostgreSQL - 23 marzo 2009 Progetto di ricerca nato presso l'università di California (Berkeley): 1986 1993: University Postgres (Michael Stonebraker) 1994 1995: Postgres95 (Jolly Chen e Andrew Yu) 1996 oggi: PostgreSQL: Fase 1, 1996 1998: eliminazione dei crash Fase 2, 1998 2001: aderenza allo standard SQL Fase 3, 2001 2004: robustezza e stabilità Fase 4, dal 2004 in poi: funzionalità di classe enterprise Contributo di centinaia di sviluppatori provenienti da tutto il mondo 11

Postgres o PostgreSQL? Cos'è PostgreSQL - 23 marzo 2009 Il nome ufficiale è PostgreSQL Postgres era il nome iniziale del progetto Con l'aggiunta del supporto SQL (1996) il progetto cambiò nome in PostgreSQL Postgres è considerato un sinonimo (più semplice da pronunciare) 12

Architettura Cos'è PostgreSQL - 23 marzo 2009 Client / Server Scritto in linguaggio ANSI C Utilizza servizi stabili del sistema operativo Altamente portabile: Linux (tutte le distribuzioni): Red Hat, Fedora, CentOS, SUSE, Debian, Ubuntu, Gentoo BSD OS: FreeBSD, OpenBSD, NetBSD UNIX (tutte le principali piattaforme): Solaris, HP-UX, Tru64, AIX Windows, Mac OS e altri sistemi operativi 13

Alcuni casi d'uso Applicazioni OLTP Sistemi di data warehousing e DSS Applicazioni web Applicazioni real-time Sistemi territoriali (estensione PostGIS) 14

Alcune fra le funzionalità principali 1/2 Cos'è PostgreSQL - 23 marzo 2009 Viste Stored procedure (attualmente in 12 linguaggi di programmazione) Trigger Transazioni ACID (MVCC e locking) Estensibilità e funzionalità Object Relational Supporto UNICODE (codifica UTF-8) Interfacce di connessione (ODBC e JDBC) Schemi 15

Alcune fra le funzionalità principali 2/2 Supporto SQL:2003 Ricerca full text (con dizionari, lemmi e sinonimi) Tablespace Array Auto-compressione dei campi testo (> 2000 caratteri) Commit asincrona Two-phase commit Alta disponibilità (Warm Standby) e replication Localizzazione (NLS) Cos'è PostgreSQL - 23 marzo 2009 16

Sicurezza Concetto di sicurezza di default Modello di sicurezza multi-livello (server, database, tabella, colonna) Criptatura completa (SSL) Integrazione con l'infrastruttura aziendale di sicurezza (e.g. GSSAPI, LDAP) Rapido fix dei bug di sicurezza 17

Replica Non è ancora parte integrante di PostgreSQL E' al momento delegata a strumenti esterni: Warm Standby (modulo contrib dalla v. 8.2) Slony Londiste 18

Alcune fra le novità di PostgreSQL 8.4 Note: Lista non ancora definitiva Rilascio previsto per estate 2009 (?) Permessi a livello di colonna Common table expression Window function Collation a livello di database Cos'è PostgreSQL - 23 marzo 2009 19

C'è rivalità fra MySQL e PostgreSQL? Assolutamente NO Target in larga parte diverso Caratteristiche MOLTO diverse (talk apposito!) Personale MySQL nella comunità di Postgres Cos'è PostgreSQL - 23 marzo 2009 20

Alcuni miti da sfatare Cos'è PostgreSQL - 23 marzo 2009 PostgreSQL è lento : Giudizio (fondato) diffuso nei primi anni 2000 Boom di applicazioni web in PHP Paragonato con MySQL (!?!?) Benchmark mono-processo senza tuning Da PostgreSQL 8.0 questo mito è stato sfatato (vedi benchmark Sun) PostgreSQL è difficile da configurare : Giudizio fondato fino a PostgreSQL 8.0 Configurazione di default adatta per l'uso medio 21

Curiosità Cos'è PostgreSQL - 23 marzo 2009 Skype utilizza PostgreSQL come database di backend per memorizzare i profili dei propri utenti Attualmente il database contiene circa 400 milioni di profili Scalabile fino a 1 miliardo di profili Skype sviluppa soluzioni open-source per PostgreSQL (SkyTools) riguardanti : Alta disponibilità (HA) Scalabilità, clustering, partitioning... 22

Alcune ragioni per usare PostgreSQL 1/2 Costo di licenza nullo Assenza di vendor lock-in Assenza di restrizioni sull'utilizzo Funzionalità native mature e stabili: Viste, schemi, stored procedure, trigger, ecc. Multi-piattaforma Stabilità Sicurezza Cos'è PostgreSQL - 23 marzo 2009 23

Alcune ragioni per usare PostgreSQL 2/2 A partire dalla versione 8: funzionalità enterprise-class migliore scalabilità migliori performance adatto per sistemi di supporto alle decisioni Vasta e dettagliata documentazione Efficiente e tempestivo supporto da parte della comunità Alta disponibilità, replica e scalabilità Estensibilità Cos'è PostgreSQL - 23 marzo 2009 24

Alcuni limiti attuali di PostgreSQL Curva di apprendimento ripida (complesso) Carenza di tool grafici per l'amministrazione (pgadminiii e Navicat) Carenza di strumenti di design visuale (ERD, UML) Marketing delegato esclusivamente alla comunità Carenza di supporto professionale 24x7 (ma grossa community) Carenza di applicazioni verticali che ufficialmente lo supportano Carenza di hosting economico Carenza di sistemi Open-Source per il tuning 25

Le fasi dello sviluppo di PostgreSQL 1/2 Cos'è PostgreSQL - 23 marzo 2009 Tutto nasce dal bisogno di nuove funzionalità Bisogni nati per scopi diversi: Commerciali Accademici Interesse personale (in pieno spirito hacker) Presenza occasionale di committenti Le nuove funzionalità vengono proposte in due finestre temporali, chiamate Commit fest Le proposte hanno la forma di vere e proprie patch complete di documentazione 26

Le fasi dello sviluppo di PostgreSQL 2/2 Cos'è PostgreSQL - 23 marzo 2009 Review: ad ogni patch viene assegnato un esperto che dovrà valutare se applicare la patch al codice Beta: viene rilasciata una versione per testing diffuso Fase di pre-rilascio: la comunità prepara gli annunci nelle principali lingue (italiano incluso) Viene rilasciata la versione M.m.0 Inizia il periodo di manutenzione che può durare diversi anni La comunità PostgreSQL supporta le ultime 5 macro release (al momento 8.3, 8.2, 8.1, 8.0, 7.4) 27

La comunità italiana e europea Nata intorno alla lista tecnica psql.it Luglio 2007: primo PostgreSQL Day italiano, Prato Novembre 2007: nasce ITPUG, la prima associazione non-profit per la diffusione di PostgreSQL in Italia Febbraio 2008: nasce PostgreSQL Europe, associazione non-profit per la diffusione di PostgreSQL in Europa Ottobre 2008: primo PostgreSQL Day europeo / secondo PostgreSQL Day italiano, Prato 28

29

ITPUG: cosa è Associazione culturale non-profit Sviluppatori e utenti PostgreSQL italiani Ufficialmente riconosciuta dalle istituzioni Fondata su uno statuto redatto in modo collaborativo e democratico Aperta a tutti Aperta agli individui (non alle aziende) 30

ITPUG: organizzazione Consiglio direttivo: 5 soci Eletti dall'assemblea generale dei soci Prendono decisioni in modo democratico Si ritrovano periodicamente via rete e di persona Chapter regionali: Soci di ITPUG che intendono rappresentare la comunità PostgreSQL in una regione, promuovendo attività culturali in loco compatibili con gli obiettivi dell'associazione 31

ITPUG: alcuni fra i principali obiettivi Cos'è PostgreSQL - 23 marzo 2009 Promuovere PostgreSQL con professionalità verso: Le istituzioni (Pubblica Amministrazione) Le scuole e le università Le aziende Organizzare l'evento PostgreSQL Day italiano ogni anno Attività di marketing per PostgreSQL Partecipare a iniziative/conferenze su software libero e open-source Punto di incontro fra la comunità internazionale e quella italiana Creare progetti che possano migliorare il progetto, soprattutto per quanto riguarda la localizzazione in italiano 32

Conclusioni PostgreSQL è un potentissimo ORDBMS open-source Ha funzionalità molto stabili e standard Ha una comunità molto attiva Può essere lo strumento adatto in moltissimi casi ma non è assolutamente la panacea di tutti i mali Vale la pena approfondirlo in quanto le conoscenze acquisite sono trasferibili 33

Link utili e riferimenti http://www.postgresql.org/ : PostgreSQL http://www.itpug.org/ : Italian PostgreSQL Users Group Slide Un database libero per la Pubblica Amministrazione Italiana : http://www.itpug.org/2008-10-25-itpug-postgresql.pdf 34

Link utili e riferimenti http://www.postgresql.org/ : PostgreSQL http://www.itpug.org/ : Italian PostgreSQL Users Group Slide Un database libero per la Pubblica Amministrazione Italiana : http://www.itpug.org/2008-10-25-itpug-postgresql.pdf Slide distribuite in licenza Creative Commons 2.5 BY-NC-SA da 2ndQuadrant Italia (http://www.2ndquadrant.it/) riguardanti la presentazione Cos'è PostgreSQL, tenutasi il 23 marzo 2009 all'università di Pisa ( http://www.tosslab.it/documentazioneeventi/azstud-2ndquadrant) 35