2010-07-23 17 views
10

Mi chiedo come ridimensionare un database. Attualmente utilizza PostgreSQL. Passare a Oracle valga la pena nonostante il dolore e le spese di programmazione? O PostgreSQL + più scatole un approccio migliore/più economico?Quanto è grande la differenza di prestazioni tra Oracle e PostgreSQL?

+3

Immagino che postgres sarebbe più economico. – miku

+1

Quanto è lungo un pezzo di spago? Ci sono così tanti fattori coinvolti, che non c'è una risposta giusta qui. – Oded

+0

Non dipende molto dal carico di lavoro e dalle query? Forse è anche possibile ottimizzare le tue query correnti. Credo che PostgreSQL abbia un buon analizzatore di query. Più scatole potrebbero essere più economiche ma la complessità della sharding non deve essere sottovalutata. – extraneon

risposta

12

IME non c'è molto tra uno dei principali DBMS in termini di prestazioni che è possibile ottenere con l'ottimizzazione delle prestazioni. Non è solo la mia esperienza Open Source PostgreSQL Trails Oracle In Benchmark, But Not By Much

Non esiste alcuna sottofase per trovare problemi di prestazioni e risolverli sia in termini di client che di ottimizzazione del database.

+0

+1 per concentrarsi sui problemi esistenti piuttosto che creare un sacco di nuovi interessanti. – APC

+0

Dopo aver lavorato a tempo pieno con Oracle e Postgres e aver eseguito carichi simili, se c'è una differenza, non sembra avere molta differenza. +1 per non aprire un nuovo casino. – rfusca

+0

Si noti che i risultati del benchmark che Richard ha collegato a qui stavano usando PostgreSQL 8.2; la versione 8.3 aveva un guadagno di prestazioni molto grande rispetto alle versioni precedenti, praticamente in ogni modo. Oracle potrebbe aver migliorato anche alcuni, ma PostgreSQL è comunemente più veloce dal 30% al 50% rispetto alla versione 8.2. –

5

Penso che quello che stai suggerendo è logicamente equivalente a Things You Should Never Do, Part I. Questo tipo di conversione è effettivamente una riscrittura e la conversione da un database a un altro (o una lingua a un'altra, ecc.) È un ottimo modo per uccidere un sacco di tempo e denaro che altrimenti potrebbero essere spesi per migliorare effettivamente il tuo prodotto. Una scelta migliore, come detto in precedenza da @Richard Harrison, sarebbe quella di passare un po 'di tempo a risolvere i problemi di prestazioni che ti spingono a prendere in considerazione il passaggio a Oracle. Come diceva Fred Brooks molti anni fa, c'è lo No Silver Bullet.

Condividi e divertiti.

0

Ammetto fin dall'inizio che sono di parte, ma devo dirti che PostgreSQL è un prodotto fantastico! Ammetto di non avere alcuna esperienza diretta con Oracle, ma tutto ciò che ho letto mette PostgreSQL a un raggio così stretto che, anche se è un po 'più lento, non c'è dubbio che spendendo qualsiasi somma si possa spendere in licenze per Oracle invece su hardware o tempo di sviluppo aggiuntivo (per migliorare le prestazioni) dovrebbe comunque lasciarti in vantaggio sia in dollari sia in termini di prestazioni.

Ovviamente stipulato come altri sopra hanno detto che questa è una domanda che è davvero troppo soggettiva a meno che non stiamo per parlare di una situazione particolare o di un ambiente installato.

5

Non sarebbe un aggiornamento per andare su Oracle. Solo una migrazione. Se desideri aggiornare Postgresql, ti consiglio vivamente di passare a Postgres Plus di EnterpriseDB. Hanno creato una versione compatibile con Oracle di Postgres che eseguirà tutto il codice esistente, qualsiasi nuovo codice oracle centric. Quasi tutte le funzionalità che chiunque vorrebbe acquistare oracle rdms sono in esso. È anche molto veloce.

Se sei geloso di RAC, non essere. Il RAC è molto costoso da mantenere e non è realmente efficiente per ogni nuova confezione aggiunta. È possibile ottenere prestazioni aggiuntive senza il costo di postgres. Guarda in PGPOOL come una soluzione per la crescita orizzontale senza il costo.

Problemi correlati