Yelp wurde 2004 mit dem Kernziel gegründet, Menschen großartige Unternehmen in ihrer Umgebung vorzustellen. Die Yelp-Community ist bekannt dafür, umfassende Reviews und Informationen zu lokalen Unternehmen aller Art zu teilen. In den zehn Jahren seit der Gründung entwickelte sich Yelp von einem One-City-Wonder (San Francisco) zu einem internationalen Phänomen, das 29 Länder und nahezu 120 Märkte umfasst. Mit Stand vom Juni 2014 besuchen monatlich im Durchschnitt über 138 Millionen einzelne Besucher die Yelp-Website und die Benutzer posteten insgesamt über 61 Millionen Beiträge.

Yelp hat sich eine treue Fangemeinde aufgebaut, größtenteils aufgrund der Tatsache, dass die Website sehr bemüht ist, ihre Benutzer vor Lockangeboten oder verdächtigen Inhalten zu schützen. Yelp verwendet für die Reviews einen automatisierten Filter, um verdächtige Inhalte zu finden und seinen Benutzern so wenig wie möglich derartige Inhalte zu zeigen. Die Website bietet seinen Besuchern zudem weitere Funktionen, mit denen sie neue Unternehmen finden (Listen, Sonderangebote und Veranstaltungen) und sich untereinander austauschen können. Zudem können Geschäftseigentümer und Geschäftsführer kostenlos ein Konto einrichten, um Sonderangebote zu posten, Fotos hochzuladen oder Kunden zu schreiben.

Das Unternehmen konzentrierte sich zunehmend auf die Entwicklung mobiler Apps und wurde kürzlich in die Apps Hall of Fame von iTunes aufgenommen. Die Apps von Yelp sind auch für Android, Blackberry, Windows 7, Palm Pre und WAP verfügbar.

Den größten Teil seines Umsatzes erzielt Yelp mit Suchmaschinenwerbung für lokale Unternehmen. Die Suchmaschinenwerbung ist hellorange gefärbt und mit "Sponsored Results" deutlich gekennzeichnet. Zahlende Werbetreibende dürfen ihre Reviews weder bearbeiten noch neu anordnen.

Yelp war zur Speicherung seiner Protokolle anfangs auf riesige RAIDs und eine einzelne lokale Hadoop-Instance angewiesen. Als Yelp auf Amazon Elastic MapReduce (Amazon EMR) umstieg, wurden die RAIDs durch Amazon Simple Storage Service (Amazon S3) ersetzt und sofort alle Hadoop-Aufträge an Amazon Elastic MapReduce übertragen.

"Uns gehen der Festplattenspeicher und die Kapazität in unserem Hadoop-Cluster aus" so Dave Marin, Such- und Datenanalysespezialist bei Yelp.

Yelp nutzt Amazon S3 zur Speicherung der Protokolle und Fotos und erzeugt so pro Tag ein Volumen von ca. 1,2 TB. Das Unternehmen setzt zudem Amazon EMR ein, um ca. 20 separate Stapelskripte auszuführen, größtenteils zur Verarbeitung dieser Protokolle. Funktionen, die über Amazon Elastic MapReduce ausgeführt werden:

  • Andere haben das angesehen, nachdem sie hiernach gesucht haben
  • Empfohlene Beiträge
  • Auto-Vervollständigung der Sucheingabe
  • Schreibvorschläge bei der Suche
  • Top-Suchen
  • Anzeigen

Die Aufträge werden ausschließlich in Python geschrieben. Yelp nutzt jedoch seine eigene Open-Source-Bibliothek, mrjob, um die Hadoop-Streaming-Aufträge in Amazon EMR auszuführen. Für die Kommunikation mit Amazon S3 wird boto verwendet. Yelp nutzt zur Überwachung s3cmd und das Dienstprogramm Ruby Elastic MapReduce.

Yelp-Entwickler raten anderen, die mit AWS arbeiten, sowohl die boto API als auch mrjob zu verwenden, damit die Auftragsabläufe in Amazon Elastic MapReduce voll ausgeschöpft werden. Yelp führt etwa 250 Amazon Elastic MapReduce-Aufträge pro Tag aus und verarbeitet dabei 30 TB Daten. Das Unternehmen ist dankbar für den AWS-Support, der bei der Hadoop-Anwendungsentwicklung behilflich war.

"Mit Amazon Elastic MapReduce konnten wir 55 000 USD an Vorlaufkosten für Hardware sparen und den Betrieb binnen Tagen und nicht Monaten aufnehmen." Am wichtigsten sind für Yelp jedoch die Opportunitätskosten. "Dank AWS können unsere Entwickler jetzt Aufgaben erledigen, für die vorher keine Zeit war", so Marin. "Unsere Systemteam kann sich jetzt voll und ganz anderen Herausforderungen widmen."

Weitere Informationen, wie AWS Ihnen beim Erfüllen Ihrer Data-Anforderungen helfen kann, finden Sie auf unserer Detailseite zu Big Data: http://aws.amazon.com/de/big-data/.