Frage

Viele Menschen verwenden den Begriff Große Daten in einem eher kommerziell Wie ein Mittel zum Hinweis darauf, dass große Datensätze an der Berechnung beteiligt sind, müssen potenzielle Lösungen eine gute Leistung haben. Na sicher, Große Daten Tragen Sie immer assoziierte Begriffe wie Skalierbarkeit und Effizienz, aber was genau ein Problem definiert als Große Daten Problem?

Muss die Berechnung mit einigen bestimmten Zwecken wie Data Mining/Information Abruf in Verbindung gebracht werden oder könnte ein Algorithmus für allgemeine Diagrammprobleme gekennzeichnet werden? Große Daten Wenn der Datensatz war groß genug? Auch wie groß ist groß genug (Wenn dies definiert werden kann)?

War es hilfreich?

Lösung

Für mich (aus einem relationalen Datenbankhintergrund) geht es in "Big Data" nicht in erster Linie um die Datengröße (was der Großteil der anderen Antworten bisher ist).

"Big Data" und "schlechte Daten" sind eng miteinander verbunden. Relationale Datenbanken erfordern "makellose Daten". Wenn sich die Daten in der Datenbank befinden, ist sie genau, sauber und 100% zuverlässig. Relationale Datenbanken erfordern "großartige Daten" und eine große Menge an Zeit, Geld und Rechenschaftspflicht wird eingestellt, um sicherzustellen, dass die Daten gut vorbereitet sind, bevor sie in die Datenbank geladen werden. Wenn sich die Daten in der Datenbank befinden, handelt es sich um "Evangelium" und definiert das Systemverständnis der Realität.

"Big Data" geht dieses Problem aus der anderen Richtung aus. Die Daten sind schlecht definiert, ein Großteil davon kann ungenau sein, und tatsächlich kann ein Großteil davon fehlen. Die Struktur und das Layout der Daten sind im Gegensatz zu Relational linear.

Big Data muss genügend Volumen haben, damit die Menge an schlechten Daten oder fehlende Daten statistisch unbedeutend wird. Wenn die Fehler in Ihren Daten häufig genug sind, um sich gegenseitig abzubrechen, wenn die fehlenden Daten proportional klein genug sind, um vernachlässigbar zu sein, und wenn Ihre Datenzugriffsanforderungen und -algorithmen auch mit unvollständigen und ungenauen Daten funktionsfähig sind, haben Sie "Big Data". .

"Big Data" geht es nicht wirklich um das Volumen, sondern um die Eigenschaften der Daten.

Andere Tipps

Wie Sie zu Recht bemerken, ist "Big Data" heutzutage etwas, das jeder sagen möchte, was er hat, was eine gewisse Lockerheit in Bezug auf die Definition des Begriffs mit sich bringt. Im Allgemeinen würde ich jedoch sagen, dass Sie mit Big Data mit Sicherheit zu tun haben, wenn die Skala so ist, dass es nicht mehr möglich ist, mit traditionelleren Technologien wie RDBMs zu handhaben, zumindest ohne sie mit Big Data -Technologien wie Hadoop zu ergänzen.

Wie groß Ihre Daten tatsächlich sein müssen, damit dies der Fall ist, ist umstritten. Hier ist ein (etwas provokativ) Blogeintrag Das behauptet, dass dies bei weniger als 5 TB Daten nicht wirklich der Fall ist. (Um klar zu sein, behauptet es nicht, dass "weniger als 5 TB keine Big Data" sind, aber nur "weniger als 5 TB sind nicht groß genug, dass Sie Hadoop brauchen".)

Aber selbst bei kleineren Datensätzen können Big Data -Technologien wie Hadoop andere Vorteile haben, einschließlich der gut geeigneten Stapeloperationen, gut mit unstrukturierten Daten (sowie Daten, deren Struktur nicht im Voraus bekannt ist oder sich ändern könnte), horizontale Skalierbarkeit (skalierbarkeit (auch Skalierung durch Hinzufügen weiterer Knoten, anstatt Ihre vorhandenen Server zu verbessern) und (als einer der Kommentatoren in den oben verknüpften Posts) die Möglichkeit, Ihre Datenverarbeitung mit externen Datensätzen zu integrieren (denken Sie an eine Kartenreduktion, in der der Mapper der Mapper ist trifft einen anderen Server an). Andere Technologien, die mit Big Data verbunden sind, wie NOSQL-Datenbanken, betonen die schnelle Leistung und die konsistente Verfügbarkeit bei großen Datenmengen sowie die in der Lage, semi-nicht-strukturierte Daten zu verarbeiten und horizontal zu skalieren.

Natürlich haben traditionelle RDBMs ihre eigenen Vorteile, einschließlich Säuregarantien (Atomizität, Konsistenz, Isolation, Haltbarkeit) und besserer Leistung für bestimmte Operationen sowie standardisierter, reifer und (für viele Benutzer) vertrauter. Selbst für unbestreitbar "große" Daten kann es sinnvoll sein, mindestens einen Teil Ihrer Daten in eine herkömmliche SQL -Datenbank zu laden und diese in Verbindung mit Big Data Technologies zu verwenden.

Eine großzügigere Definition wäre also, dass Sie Big Data haben, solange sie groß genug ist, dass Big Data Technologies Ihnen einen Mehrwert bieten. Aber wie Sie sehen können, kann dies nicht nur von der Größe Ihrer Daten abhängen, sondern auch davon, wie Sie damit arbeiten möchten und welche Art von Anforderungen Sie in Bezug auf Flexibilität, Konsistenz und Leistung haben. Wie Sie verwenden Ihre Daten sind für die Frage relevanter als das, was Sie verwenden zum (zB Data Mining). Verwendete wie Data Mining und maschinelles Lernen liefern jedoch mit größerer Wahrscheinlichkeit nützliche Ergebnisse, wenn Sie über einen ausreichend ausreichenden Datensatz verfügen, mit dem Sie arbeiten können.

Gesamtmenge der Daten in der Welt: 2,8 Zetabyte im Jahr 2012, schätzungsweise 8 Zetabyte bis 2015 (bis 2015 (Quelle) und mit einer Verdoppelungszeit von 40 Monaten. Kann nicht größer werden als das :)

Als Beispiel für eine einzige große Organisation zieht Facebook 500 Terabyte pro Tag in ein 100 Petabyte -Lagerhaus und führt ab 2012 70.000 Abfragen pro Tag aus ((ab 2012Quelle) Ihr aktuelles Lagerhaus beträgt> 300 Petabyte.

Big Data ist wahrscheinlich etwas, das ein guter Teil der Facebook -Nummern ist (1/100 wahrscheinlich ja, 1/10000 wahrscheinlich nicht: Es ist ein Spektrum, keine einzige Zahl).

Zusätzlich zur Größe sind einige der Funktionen, die es "groß" machen,:

  • Es wird aktiv analysiert, nicht nur gespeichert (Zitat "Wenn Sie keine Big Data nutzen, dann haben Sie keine Big Data, Sie haben nur einen Haufen Daten" Jay Parikh @ Facebook).

  • Das Aufbau und Betrieb eines Data Warehouse ist ein wichtiges Infrastrukturprojekt

  • Es wächst mit erheblicher Geschwindigkeit

  • Es ist unstrukturiert oder hat eine unregelmäßige Struktur

Gartner -Definition: "Big Data ist ein hohes Volumen, eine hohe Geschwindigkeit und/oder die Informationsvermögen von hoher Sorte, die neue Formen der Verarbeitung erfordern" (3 Vs), so dass sie auch denken, dass "Größe" nicht ganz die Größe des Datensatzes, sondern nicht nur um die Größe des Datensatzes betrifft, sondern auch nicht um die Größe des Datensatzes Auch über die Geschwindigkeit und Struktur und die Art der benötigten Werkzeuge.

Für mich geht es bei Big Data in erster Linie um die Tools (schließlich begann es dort). Ein "großer" Datensatz ist einer, der zu groß ist, um mit herkömmlichen Tools behandelt zu werden - insbesondere groß genug, um Speicher und Verarbeitung auf einem Cluster und nicht auf einer einzigen Maschine zu fordern. Dies schließt ein konventionelles RDBM aus und erfordert neue Techniken zur Verarbeitung. Insbesondere erleichtern verschiedene Hadoop-ähnliche Frameworks die Verteilung einer Berechnung über einen Cluster auf Kosten der Einschränkung der Form dieser Berechnung. Ich werde den Verweis auf den Hinweis auf http://www.chrisstucchio.com/blog/2013/hadoop_hatred.html ; Big Data -Techniken sind ein letzter Ausweg für Datensätze, die einfach zu groß sind, um andere Weise zu bearbeiten. Ich würde sagen, ein Datensatz für jeden Zweck könnte sich qualifizieren, wenn es groß genug wäre. Wenn die Form des Problems so ist, dass vorhandene "Big Data" -Tools nicht angemessen sind, wäre es wahrscheinlich besser, sich ein neues auszudenken Name.

Natürlich gibt es einige Überschneidungen; Als ich (kurz) endlich arbeitete. Was in gewissem Sinne bedeutete, dass es Big Data war und war, je nachdem, an welcher Arbeit Sie gearbeitet haben. Aber ich denke, das ist eine genaue Charakterisierung; Die Leute, die an den Hadoop -Jobs gearbeitet haben, fanden es nützlich, zu Big Data Conferences und Websites zu gehen, während die Leute, die an den SQL -Jobs gearbeitet haben, nicht.

Daten werden "groß", wenn eine einzelne Warencomputer Kann nicht mehr die Datenmenge verarbeiten, die Sie haben. Es bedeutet den Punkt, an dem Sie über den Aufbau von Supercomputern nachdenken oder Cluster verwenden müssen, um Ihre Daten zu verarbeiten.

Big Data wird durch das Datenvolumen definiert, das ist richtig, aber nicht nur. Die Besonderheit von Big Data ist, dass Sie a speichern müssen viele von verschiedene und manchmal unstrukturiert Zeug jedesmal und von a Tonnenweise Sensoren, normalerweise für Jahre oder Jahrzehnt.

Außerdem brauchen Sie etwas Skalierbares, so dass Sie kein halbes Jahr brauchen, um eine Daten zurück zu finden.

Hier ist Big Data, wo die traditionelle Methode nicht mehr funktioniert. SQL ist nicht skalierbar. Und SQL arbeitet mit sehr strukturierten und verknüpften Daten (mit all diesen primären und fremden Schlüsselmessen, Innerjoin, Imbrated Request ...).

Grundsätzlich bitten Big Manager, weil der Speicher billiger und billiger wird und Daten wertvoller werden, alles, was alles aufzeichnet. Fügen Sie zu diesen Tonnen neuer Sensoren mit all diesen mobilen, sozialen Netzwerken, eingebetteten Sachen hinzu ... usw. Da klassische Methoden nicht funktionieren, müssen sie neue Technologien finden (alles in Dateien speichern, im JSON -Format mit Big Index, dem, was wir NoSQL nennen).

Big Data mag also sehr groß sein, aber nicht so groß, aber komplexe unstrukturierte oder verschiedene Daten, die in einem Rohformat schnell und auf der Leitung gespeichert werden müssen. Wir konzentrieren uns zuerst und speichern und schauen uns dann an, wie wir alles miteinander verbinden können.

Ich werde mitteilen, wie Big Data in der Genomik, insbesondere der De-Novo-Assemblierung, aussieht.

Wenn wir Ihr Genom sequenzieren (z. B. neuartige Gene), nehmen wir Milliarden von kurzen Lesevorgängen der nächsten Generation. Schauen Sie sich das Bild unten an, in dem wir versuchen, einige Lesevorgänge zusammenzustellen.

enter image description here

Das sieht einfach aus? Aber was ist, wenn Sie Milliarden dieser Lesevorgänge haben? Was ist, wenn diese Lesungen Sequenzfehler enthalten? Was ist, wenn Ihr RAM nicht über genügend Speicher verfügt, um die Lesevorgänge zu behalten? Was ist mit sich wiederholenden DNA -Regionen, wie dem sehr gemeinsamen Alu Element?

Die De-Novo-Baugruppe erfolgt durch Bau a De-bruijn Graph:

enter image description here

Das Diagramm ist eine clevere Datenstruktur, um überlappende Lesevorgänge darzustellen. Es ist nicht perfekt, aber es ist besser, als alle möglichen Überlappungen zu generieren und in einem Array zu speichern.

Der Montageprozess könnte Tage dauern, bis es eine ganze Reihe von Wegen gibt, die ein Assembler zum Durchqueren und Zusammenbruch musste.

In der Genomik haben Sie eine Big Data, wenn:

  • Sie können nicht alle Kombinationen brutal erzwingen
  • Ihr Computer hat nicht genügend physischer Speicher, um die Daten zu speichern
  • Sie müssen die Abmessungen reduzieren (z. B. redundante Graphenpfade kollabieren).
  • Sie sind sauer, weil Sie Tage warten müssten, um etwas zu tun
  • Sie benötigen eine spezielle Datenstruktur, um die Daten darzustellen
  • Sie müssen Ihr Datensatz für Fehler filtern (z. B.: Sequenzierungsfehler).

https://en.wikipedia.org/wiki/de_bruijn_graph

Es gibt besondere Sache, Algorithmen zu graphieren. Ihre Originalfragen, die dann zu etwas Besonderem sind. Dies geht über die Fähigkeit, die Daten im Wesentlichen aufzutragen.

Für einige Dinge, wie das Sortieren von Zahlen in einem Array, ist es nicht allzu schwierig, das Problem der Datenstruktur in kleinere disjunktive Stücke zu partitionieren, z. B. Hier: Parallele an Ort und Stelle zusammenführen Sortier

Für Graph-Algorithmen besteht jedoch die Herausforderung, dass das Finden einer optionalen Partitionierung einer bestimmten Grafikmetrik als $ np-hard $ bekannt ist.

Während 10 GB Zahlen zur Sortierung möglicherweise ein sehr gut zugängliches Problem auf einem normalen PC sein (Sie können nur über dynamische Programmierung in die In -in -in -in -in -in -in -in -in -dynamische Graphendatenstruktur mit einer 10 -GB -Graphendaten -Struktur durchfordern.

Es gibt eine Reihe von spezialisierten Frameworks wie z. Graphx Verwendung von Methoden und speziellen Computerparadigmen, um die inhärenten Herausforderungen von Graphen etwas zu umgehen.

Um Ihre Frage kurz zu beantworten: Wie bereits erwähnt von anderen erwähnt, ist ein guter Hinweis darauf, dass Ihre Daten bereits etwas groß sind. Die genaue Kennzeichnung hängt jedoch ein wenig von der Datenstruktur und der Frage ab.

Ich denke, dass Big Data an dem Punkt beginnt, an dem die Größe Sie daran hindert, das zu tun, was Sie wollen. In den meisten Szenarien gibt es eine Grenze für die Laufzeit, die als machbar angesehen wird. In einigen Fällen dauert es eine Stunde, in einigen Fällen könnten es einige Wochen dauern. Solange die Daten nicht groß genug sind, dass nur O (n) Algorithmen im realisierbaren Zeitrahmen ausgeführt werden können, haben Sie keine Big Data erreicht.

Ich mag diese Definition, da sie zu Volumen, Technologieebene und spezifischen Algorithmen agnostisch ist. Es ist nicht agnostisch für Ressourcen, daher erreicht ein Student der Big Data vor Google den Punkt.

Um zu quantifizieren, wie groß die Daten sind, möchte ich die Zeit betrachten, die für die Sicherung erforderlich ist. Seit dem Fortschritt der Technologie sind Bände, die vor einigen Jahren als groß angesehen wurden, jetzt moderat. Die Backup -Zeit verbessert sich, da sich die Technologie verbessert, genau wie die Laufzeit der Lernalgorithmen. Ich bin der Meinung, dass es sinnvoller ist, über einen Datensatz zu sprechen, der x Stunden dauert, um sich zu sichern, und nicht über einen Datensatz von Y -Bytes.

Ps.

Es ist wichtig zu beachten, dass selbst wenn Sie den Big -Data -Punkt erreicht haben und Algorithmen der Komplexität nicht mehr als O (n) in geradliniger Weise mehr ausführen können. Sie können viel tun, um immer noch von solchen Algorithmen zu profitieren.

Beispielsweise kann die Feature -Auswahl die Anzahl der Funktionen reduzieren, von denen viele Algorithmen die Laufzeit abhängen. In vielen langen Schwanzverteilung, die sich auf die wenigen Elemente im Kopf konzentriert, können sich von Vorteil sein. Sie können ein Beispiel verwenden und die langsameren Algorithmen darauf ausführen.

Daten sind "Big Data", wenn es von einem solchen Volumen ist, dass es kostengünstiger ist, sie auf zwei oder mehr Rohstoffcomputern zu analysieren als auf einem High-End-Computer.

So entstanden das "BigFiles" -Dateisystem von Google im Wesentlichen. Page und Brin konnten sich keinen ausgefallenen Sonnenserver leisten, um ihren Webindex zu speichern und zu durchsuchen. Daher haben sich mehrere Rohstoffcomputer angeschlossen

Ich stimme zu dem zu, was @dan Levin bereits gesagt hat. Letztendlich, da wir nützliche Erkenntnisse aus den Daten erzielen wollen, anstatt sie nur zu speichern, ist es die Fähigkeit von Lernalgorithmen/Systemen Dies sollte bestimmen, was als "Big Data" bezeichnet wird. Da sich ML -Systeme heute entwickeln, werden Big Data morgen keine Big Data mehr sein.

Eine Möglichkeit, Big Data zu definieren, könnte sein:

  • Große Daten: Daten, auf denen Sie ML -Modelle nicht erstellen können angemessene Zeit (1-2 Stunden) auf einer typischen Workstation (mit sagen wir 4 GB RAM)
  • Nicht-Big-Daten: Ergänzung des oben genannten

Unter der Annahme dieser Definition sollten wir in der Nicht-Big-Daten Regime.

Notiz: Vowpal Wabbit (Mit weitem das schnellste ML -System ab heute) kann in jedem Datensatz lernen, solange eine einzelne Zeile (Datenpunkt) <RAM (z. B. 4GB) ist. Die Anzahl der Zeilen ist Keine Einschränkung Weil es SGD für mehrere Kerne verwendet. Wenn Sie aus Erfahrung sprechen, können Sie an einem Tag ein Modell mit 10 km und 10 Mio. Zeilen auf einem Laptop trainieren.

"Big Data" ist buchstäblich nur viele Daten. Während es mehr ein Marketing -Begriff als alles andere ist, ist es in der Regel, dass Sie so viele Daten haben, dass Sie nicht alle Daten gleichzeitig analysieren können Verarbeiten und analysieren Sie es größer als die Menge des verfügbaren Speichers.

Dies bedeutet, dass Analysen normalerweise in zufälligen Datensegmenten durchgeführt werden müssen, wodurch Modelle erstellt werden können, um sie mit anderen Teilen der Daten zu vergleichen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit datascience.stackexchange
scroll top