martedì 8 ottobre 2013

Postgres su ZFS

Recentemente Oracle/SUN ha presentato una nuova generazione di storage appliance ZFS, la famiglia ZS3. Questi sistemi vengono proposti come piattaforma ideale per il dispiegamento di database (Oracle, ovviamente) grazie alle caratteristiche di ZFS, quali snapshot a caldo in tempo costante, clonazione degli spazi di storage, e gestione ultra sicura dei dati.
Effettivamente ZFS ha delle caratteristiche straordinarie, ed un paper dell'università dello Utah sottolinea come gli "scenari di disastro" che si propongono più comunemente nella gestione dei database, o le esigenze di testing e sviluppo siano gestite in modo particolarmente efficiente da ZFS.
Ispirato da queste considerazioni, ho creato una virtual machine con Oracle Solaris 11.1, su cui ho creato delle zones, ed installato Postgres. Ho fatto qualche piccola prova di management e replicazione di database, disaster recovery e clonazione e devo dire che la semplicità di gestione del tutto è straordinaria.
Morale? Credo che ZFS offra delle caratteristiche così interessanti, che nessun server possa ormai farne a meno. Inoltre esistono diverse distribuzioni di unix, tra cui i vari flavor di solaris (OmniOS, Illumos, Open Indiana, ecc...) e FreeBSD che offrono sia ZFS che zones o analoghi sistemi di light virtualization, che li rendono piattaforme ideali come NAS, database server, web server o application server, sia come sistemi di sviluppo, che testing che produzione.