vorrei alcune idee/commenti su quanto segue dalla tu gruppo onorevole e venerabile.
Ho un record di 100 M che devo elaborare. Ho 5 nodi (in un gruppo di rocce) per fare questo. I dati sono molto strutturati e ricadono piacevolmente nel modello di dati relazionali. Voglio fare le cose in parallelo poiché la mia elaborazione richiede del tempo.
come la vedo io ho due opzioni principali:
installare MySQL su ogni nodo e messo 20M record su ciascuno. Utilizzare il nodo principale per delegare query ai nodi e aggregare i risultati. Funzionalità di query ++, ma potrei rischiare qualche mal di testa quando arriverò a scegliere le strategie di partizionamento ecc. (D. Questo è quello che chiamano cluster mysql/postgres?). La parte veramente brutta è che l'elaborazione dei record è lasciata a me ora a occuparmi di (come distribuire su macchine ecc.) ...
In alternativa installare Hadoop, Hive e HBase (si noti che questo potrebbe non essere il modo più efficiente per archiviare i miei dati, dato che HBase è orientato a colonne) e basta definire i nodi. Scriviamo tutto nel paradigma MapReduce e, bang, viviamo felici e contenti. Il problema qui è che perdiamo le funzionalità di query "in tempo reale" (so che puoi usare Hive, ma questo non è suggerito per le query in tempo reale - di cui ho bisogno) - dal momento che ho anche alcune query sql normali da eseguire a volte " seleziona * da vino dove colore = 'marrone' ".
Si noti che in teoria, se avessi macchine da 100M, potrei fare il tutto istantaneamente poiché per ogni registrazione l'elaborazione è indipendente dall'altra. Inoltre, i miei dati sono di sola lettura. Non prevedo alcun aggiornamento in corso. Non ho bisogno/voglio record 100M su un nodo. Non voglio che ci siano dati ridondanti (dato che ce ne sono molti) quindi tenerlo in ENTRAMBI mysql/postgres e Hadoop/HBase/HDFS. non è un'opzione reale.
Molte grazie
Un mio amico mi ha pubblicato qualcosa del genere: http://www.cloudera.com/blog/2009/03/database-access-with-hadoop/ è un piccolo passo nella giusta direzione - ma io piacerebbe sentire le tue opinioni sul design e su come dovrei farlo ... – MalteseUnderdog