Berlin Buzzwords – Day 1 – Scalability Challenges in Big Data Science

Welche Herausforderungen gibt es bei der Skalierung / Sharding bei der Verarbeitung von großen Datenmengen

  • Normalerweise beginnt es damit, dass in einer DB viele Daten sind und die Anforderung kommt, diese Daten auszuwerten, z.B. User zu klassifizieren
  • Schritt eins ist es eine skalierbare DB zu finden: Cassandra, Sharded MySQL
  • Dann Mulithreading als nächstes: akka, ActiveMQ, …
  • Aber besser ist es direkt auch nach paralleler Verarbeitung und Speicherung zu schauen: Hadoop
  • MapReduce funktioniert auch für einige Machine-learning Algorithmen, z.B. k-means Clustering
  • Zum Training mit großer Traingdaten gibt es z.B. den Stochastic Gradient Descent und den vowpal wabbit Algorithmus
  • Es gibt noch andere Skalierungsansätze: Pregel, Aktoren und Stream-Processing die man ja nach Anwendungsfall aussuchen muss
  • Darüber hinaus gibt es noch Stream Mining , um große Realtime-Datenmengen zu analysieren und im Speicher zu halten. Die Idee dahinter ist, nur die relevanten Daten aufzubewahren. Z.B. nur die 100k aktivsten Twitter-Accounts, der Rest wird verworfen. Alternative ist ein exponentieller Abfall, um z.B. Aktivitäten, die älter sind aufzubewahren.
  • Count-min Sketches sind ein weiterer Weg, Daten verteilt zu berechnen und zentral einfach auszuwerten.
GD Star Rating
loading...

Kommentar verfassen

This site uses Akismet to reduce spam. Learn how your comment data is processed.