MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

как да съхранявате обработени данни от hdfs, като използвате mapReduce в mongoDB като изход

Основно това, от което се нуждаете, е да промените „класа на изходния формат“ и имате няколко начина там:

  1. Използвайте MongoDB конектор за Hadoop :http://docs.mongodb.org/ecosystem/tools /hadoop/?_ga=1.111209414.370990604.1441913822
  2. Приложете свой собствен Изходен формат :https://hadoop. apache.org/docs/r2.7.0/api/org/apache/hadoop/mapred/OutputFormat.html (Вместо да използвате FileOutputFormat).
  3. Изпълнете mongodb заявки вътре в редуктора вместо да пишете в контекста на MapREduce (Не е хубаво, можете да завършите с празни изходящи файлове в HDFS в зависимост от OutputFormat, указан в драйвера)

Според мен вариант 1 е най-добрият вариант, но не съм използвал MongoDB конектор, за да кажа дали е достатъчно стабилен и функционален. Вариант 2 изисква наистина да разберете как работи hadoop underhood, за да избегнете края с много отворени връзки и проблеми с транзакции и повторни опити за hadoop задачи.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Актуализиране на вложени масиви в mongodb

  2. създаване на mongodb документ с поддокументи атомарно?

  3. Map-Reduce за комбиниране на данни (MongoDb)

  4. Брой връзки към MongoDB сървър

  5. Уникален индекс, игнориран при актуализиране с Mongoose + Mockgoose в NodeJS