Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Czy można odczytywać dane MongoDB, przetwarzać je za pomocą Hadoop i przesyłać do RDBS (MySQL)?

Kilka rzeczy do zapamiętania:

  1. Eksportowanie danych z MongoDB do Hadoop przy użyciu Sqoop nie jest możliwe. Dzieje się tak, ponieważ Sqoop używa JDBC który zapewnia interfejs API na poziomie wywołań dla bazy danych opartej na SQL , ale MongoDB nie jest bazą danych opartą na SQL . Możesz spojrzeć na «MongoDB Connector for Hadoop» wykonać tę pracę. Oprogramowanie sprzęgające jest dostępne na GitHubie . (Edytuj:jak wskazujesz w swojej aktualizacji.)

  2. Eksporty Sqoop nie są domyślnie realizowane w ramach jednej transakcji. Zamiast tego, zgodnie z dokumentacją Sqoop :

  3. Wydaje się, że «MongoDB Connector for Hadoop» nie wymusza opisanego przez Ciebie przepływu pracy. Zgodnie z dokumentacją:

  4. Rzeczywiście, o ile rozumiem z «MongoDB Connector for Hadoop»:przykłady , byłoby możliwe określenie org.apache.hadoop.mapred.lib.db.DBOutputFormat do zadania Hadoop MapReduce, aby zapisać dane wyjściowe w bazie danych MySQL. Zgodnie z przykładem z repozytorium oprogramowania sprzęgającego:

    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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zmiana hasła root MySQL

  2. Czy możesz dołączyć do podzapytania z Doctrine 2 DQL?

  3. Żadne operacje nie są dozwolone po zamknięciu wyciągu

  4. Równoważenie obciążenia z uwzględnieniem bazy danych:jak przeprowadzić migrację z HAProxy do ProxySQL

  5. Wyczerpano dozwolony rozmiar pamięci 134217728 bajtów (próbowano przydzielić 42 bajty)