Domanda

Al momento stiamo utilizzando Redshift come il nostro data warehouse, che siamo molto soddisfatti. Tuttavia, ora abbiamo l'obbligo di fare machine learning contro i dati nel nostro magazzino. Tenuto conto del volume dei dati coinvolti, idealmente vorrei correre il calcolo nella stessa posizione in quanto i dati, piuttosto che spostare i dati in giro, ma questo non sembra possibile con Redshift. Ho guardato Madlib, ma questo non è un'opzione come Redshift non supporta le UDF (che Madlib richiede). Attualmente sto guardando spostare i dati verso EMR e l'elaborazione con la libreria Apache macchina Spark di apprendimento (o forse H20, o Mahout, o qualsiasi altra cosa). Quindi le mie domande sono le seguenti:

  1. c'è un modo migliore?
  2. se non, come devo rendere i dati accessibili a Spark? Le opzioni che ho identificato finora includono: uso Sqoop per caricarlo in HDFS, uso DBInputFormat, fare un'esportazione Redshift per S3 e hanno Spark afferrare da lì. Quali sono i pro / contro per questi diversi approcci (e tutti gli altri) quando si utilizza Spark?

Si noti che questo è off-line di apprendimento in batch, ma ci piacerebbe essere in grado di fare questo il più rapidamente possibile in modo che possiamo iterare esperimenti rapidamente.

È stato utile?

Soluzione

Il nuovo Amazon Machine Learning Service può funzionare per voi. Si lavora direttamente con Redshift e potrebbe essere un buon modo per iniziare. http://aws.amazon.com/machine-learning/

Se stai cercando di processo utilizzando EMR, quindi è possibile utilizzare il comando UNLOAD di Redshift ai dati di terra su S3. Spark su EMR può quindi accedere direttamente senza dover tirare in HDFS.

Spark su EMR: https://aws.amazon.com/articles/Elastic- MapReduce / 4926593393724923

Altri suggerimenti

Si può provare questo. https://github.com/databricks/spark-redshift

In caso contrario, utilizzare la risposta di Rahul, i dati Scarica per s3 poi caricarlo in SPARK. EMR Spark è in cima filati e supporti di metodo file di testo del contesto Spark "S3 //" in modo nativo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top