sql >> Database >  >> NoSQL >> MongoDB

MongoDB® met Hadoop en gerelateerde Big Data-technologieën

Relationele databases waren lange tijd voldoende om kleine of middelgrote datasets te verwerken. Maar de kolossale snelheid waarmee gegevens groeien, maakt de traditionele benadering van gegevensopslag en -ontvangst onhaalbaar. Dit probleem wordt opgelost door nieuwere technologieën die Big Data aankunnen. Hadoop, Hive en Hbase zijn de populaire platforms om dit soort grote datasets te gebruiken. NoSQL of niet alleen SQL-databases zoals MongoDB® bieden een mechanisme om gegevens op te slaan en op te halen in een verliezersconsistentiemodel met voordelen zoals:

  • Horizontaal schalen
  • Hogere beschikbaarheid
  • Sneller toegang

Het MongoDB®-engineeringteam heeft onlangs de MongoDB®-connector voor Hadoop geüpdatet voor een betere integratie. Dit maakt het gemakkelijker voor Hadoop-gebruikers om:

  • Integreer realtime gegevens van MongoDB® met Hadoop voor diepgaande, offline analyses.
  • De Connector stelt de analytische kracht van Hadoop's MapReduce bloot aan live applicatiegegevens van MongoDB®, waardoor de waarde van big data sneller en efficiënter wordt gegenereerd.
  • De Connector presenteert MongoDB als een Hadoop-compatibel bestandssysteem waardoor een MapReduce-taak rechtstreeks uit MongoDB® kan lezen zonder deze eerst naar HDFS (Hadoop-bestandssysteem) te kopiëren, waardoor de noodzaak wordt weggenomen om terabytes aan gegevens over het netwerk te verplaatsen.
  • MapReduce-taken kunnen query's doorgeven als filters, waardoor het niet nodig is om hele collecties te scannen, en kunnen ook profiteren van MongoDB®'s uitgebreide indexeringsmogelijkheden, waaronder geo-ruimtelijke, tekst- zoek-, array-, samengestelde en schaarse indexen.
  • Lezen uit MongoDB®, de resultaten van Hadoop-taken kunnen ook worden teruggeschreven naar MongoDB®, ter ondersteuning van realtime operationele processen en ad-hocquery's.

Hadoop en MongoDB®-gebruiksscenario's:

Laten we eens kijken naar een beschrijving op hoog niveau van hoe MongoDB® en Hadoop samen kunnen passen in een typische Big Data-stack. We hebben in de eerste plaats:

  • MongoDB® gebruikt als de 'Operationele' realtime gegevensopslag
  • Hadoop voor offline verwerking en analyse van batchgegevens

Lees verder om te weten waarom MongoDB de database is voor Big Data-verwerking en hoe MongoDB® werd gebruikt door bedrijven en organisaties zoals Aadhar, Shutterfly, Metlife en eBay.

Toepassing van MongoDB® met Hadoop in Batch Aggregation:

In de meeste scenario's is de ingebouwde aggregatiefunctionaliteit van MongoDB® voldoende voor het analyseren van gegevens. In bepaalde gevallen kan echter een aanzienlijk complexere gegevensaggregatie nodig zijn. Dit is waar Hadoop een krachtig raamwerk kan bieden voor complexe analyses.

In dit scenario:

  • Gegevens worden uit MongoDB® gehaald en binnen Hadoop verwerkt via een of meer MapReduce-taken. Gegevens kunnen ook afkomstig zijn van andere plaatsen binnen deze MapReduce-taken om een ​​oplossing met meerdere gegevensbronnen te ontwikkelen.
  • Uitvoer van deze MapReduce-taken kan vervolgens worden teruggeschreven naar MongoDB® voor query's in een later stadium en voor eventuele analyse op ad-hocbasis.
  • Toepassingen die bovenop MongoDB® zijn gebouwd, kunnen daarom de informatie van batchanalyses gebruiken om aan de eindclient te presenteren of om andere downstream-functies in te schakelen.

Toepassing in Data Warehousing:

In een typische productieconfiguratie kunnen de gegevens van de applicatie zich in meerdere gegevensarchieven bevinden, elk met hun eigen querytaal en functionaliteit. Om de complexiteit in deze scenario's te verminderen, kan Hadoop worden gebruikt als een datawarehouse en fungeren als een gecentraliseerde opslagplaats voor gegevens uit de verschillende bronnen.

In dit soort scenario:

  • Periodieke MapReduce-taken laden gegevens van MongoDB® in Hadoop.
  • Zodra de gegevens van MongoDB® en andere bronnen beschikbaar zijn in Hadoop, kan de grotere gegevensset worden opgevraagd.
  • Data-analisten hebben nu de mogelijkheid om MapReduce of Pig te gebruiken om taken te creëren die de grotere datasets met gegevens van MongoDB® opvragen.

Het team dat achter MongoDB® werkt, heeft ervoor gezorgd dat het met zijn rijke integratie met Big Data-technologieën zoals Hadoop goed kan worden geïntegreerd in de Big Data Stack en kan helpen bij het oplossen van een aantal complexe architecturale problemen als het gaat om gegevensopslag, opvraging, verwerking, aggregatie en warehousing. Houd ons in de gaten voor ons aanstaande bericht over carrièrevooruitzichten voor degenen die Hadoop bij MongoDB® gaan gebruiken. Als je al met Hadoop werkt of MongoDB® net oppikt, bekijk dan hier de cursussen die we aanbieden voor MongoDB®

Ontdek meer over Hadoop-concepten. Bekijk deze Online Big Data-cursus , die is gemaakt door Top Industrial Working Experts.


  1. Django Channels Error - Kan BACKEND 'asgi_redis.RedisChannelLayer' niet importeren

  2. Nodejs, wacht niet tot Redis-query is voltooid voordat u doorgaat met uitvoeren

  3. Mongodb vermijd dubbele invoer

  4. MongoDB select count (distinct x) op een geïndexeerde kolom - tel unieke resultaten voor grote datasets