sql >> Databáze >  >> RDS >> Mysql

Je možné číst data MongoDB, zpracovávat je pomocí Hadoop a vydávat je do RDBS (MySQL)?

Několik věcí k poznámce:

  1. Export dat z MongoDB do Hadoop pomocí Sqoop není možný. Je to proto, že Sqoop používá JDBC který poskytuje rozhraní API na úrovni volání pro databázi založenou na SQL , ale MongoDB není databáze založená na SQL . Můžete se podívat na «Konektor MongoDB pro Hadoop» dělat tuto práci. Konektor je k dispozici na GitHubu . (Upravit:jak uvádíte ve své aktualizaci.)

  2. Exporty Sqoop se ve výchozím nastavení neprovádějí v jedné transakci. Místo toho podle dokumentů Sqoop :

  3. Zdá se, že «MongoDB Connector for Hadoop» nevynucuje pracovní postup, který popisujete. Podle dokumentů:

  4. Ve skutečnosti, pokud jsem pochopil z "Konektor MongoDB pro Hadoop":příklady , bylo by možné zadat org.apache.hadoop.mapred.lib.db.DBOutputFormat do vaší úlohy Hadoop MapReduce zapsat výstup do databáze MySQL. Podle příkladu z úložiště konektorů:

    job.setMapperClass( TokenizerMapper.class );
    job.setCombinerClass( IntSumReducer.class );
    job.setReducerClass( IntSumReducer.class );
    job.setOutputKeyClass( Text.class );
    job.setOutputValueClass( IntWritable.class );
    job.setInputFormatClass( MongoInputFormat.class );
    /* Instead of:
     * job.setOutputFormatClass( MongoOutputFormat.class );
     * we use an OutputFormatClass that writes the job results 
     * to a MySQL database. Beware that the following OutputFormat 
     * will only write the *key* to the database, but the principle
     * remains the same for all output formatters
     */
    job.setOutputFormatClass( DBOutputFormat.class );
    


  1. Jak spustit více instancí MySQL na stejném počítači

  2. Použití Jquery Ajax k načtení dat z Mysql

  3. 5 důvodů, proč si vybrat Arkware

  4. Pokus o nasazení aplikace Oracle-ADF na Tomcat 7