Video: Java 8 - Streams 2024
Wenn Daten in großen Mengen fließen Mengen, alles zu speichern kann schwierig oder sogar unmöglich sein. In der Tat kann es gar nicht sinnvoll sein, alles zu speichern. Hier sind einige Zahlen von einigen von dem, was Sie erwarten können, innerhalb einer Minute im Internet zu geschehen:
- 150 Millionen E-Mails
- 350.000 neue Tweets gesendet auf Twitter gesendet
- 2. 4 Millionen Suchanfragen bei Google
- 700 000 Personen haben sich auf Facebook
In Anbetracht solcher Volumina scheint es nicht effizient zu sein, die Daten für eine inkrementelle Analyse den ganzen Tag zu akkumulieren. Sie speichern es einfach irgendwohin und analysieren es an den folgenden oder an einem späteren Tag (das ist die weit verbreitete Archivierungsstrategie, die typisch für Datenbanken und Data Warehouses ist). Nützliche Datenabfragen neigen jedoch dazu, nach den neuesten Daten im Datenstrom zu fragen, und Daten werden weniger nützlich, wenn sie älter werden (in einigen Sektoren, z. B. im Finanzsektor, kann ein Tag sehr viel Zeit in Anspruch nehmen).
Darüber hinaus können Sie erwarten, dass morgen noch mehr Daten ankommen (die Datenmenge steigt täglich), und das macht es schwierig, wenn nicht unmöglich, Daten aus Repositorys zu ziehen, wenn Sie neue Daten hineinschieben. Alte Daten aus Repositorys zu ziehen, wenn neue Daten hereinkommen, entspricht der Bestrafung von Sisyphus. Sisyphos, wie ein griechischer Mythos erzählt, erhielt eine schreckliche Strafe von dem Gott Zeus: Er musste gezwungen werden, einen riesigen Felsbrocken auf der Spitze eines Hügels ewig zu rollen, nur um zu sehen, wie er jedes Mal zurückrollte.
Gelegentlich können Daten so schnell und in so großen Mengen ankommen, dass das Schreiben auf die Festplatte unmöglich wird: Neue Informationen kommen schneller als die Zeit, die benötigt wird, um sie auf die Festplatte zu schreiben. Festplatte. Dies ist ein typisches Problem von Teilchenexperimenten mit Teilchenbeschleunigern wie dem Large Hadron Collider, bei denen Wissenschaftler entscheiden müssen, welche Daten sie behalten sollen. Natürlich können Sie Daten für einige Zeit in die Warteschlange stellen, aber nicht zu lange, da die Warteschlange schnell wachsen und nicht mehr gewartet werden kann. Wenn Warteschlangen-Daten beispielsweise im Speicher gehalten werden, führt dies bald zu einem Out-of-Memory-Fehler.
Da neue Datenflüsse die vorherige Verarbeitung alter Daten obsolet machen können und Prokrastination keine Lösung ist, haben die Leute mehrere Strategien entwickelt, um sofort mit massiven und veränderlichen Datenmengen umzugehen. Die Leute verwenden drei Wege, um mit großen Datenmengen umzugehen:
- Gespeichert: Einige Daten werden gespeichert, weil sie später helfen können, unklare Fragen zu beantworten. Diese Methode beruht auf Techniken, um sie sofort zu speichern und später sehr schnell zu analysieren, egal wie massiv sie ist.
- Zusammengefasst: Einige Daten werden zusammengefasst, weil es nicht sinnvoll ist, alles so zu behalten, wie es ist. nur die wichtigen Daten bleiben erhalten.
- Consumed: Die verbleibenden Daten werden verbraucht, weil ihre Verwendung vorbestimmt ist. Algorithmen können die Daten sofort lesen, verdauen und in Informationen verwandeln. Danach vergisst das System die Daten für immer.
Wenn wir von massiven Daten sprechen, die in ein Computersystem eintreffen, werden Sie es oft mit Wasser vergleichen: Streaming-Daten, Datenströme, Daten-Feuerwehrschlauch.
Sie entdecken, wie Datenströme Leitungswasser verbrauchen: Wenn Sie den Hahn öffnen, können Sie das Wasser in Tassen oder Trinkflaschen aufbewahren oder zum Kochen, zum Schrubben von Speisen, zum Reinigen von Tellern oder zum Händewaschen verwenden. Auf jeden Fall ist das meiste oder alles Wasser verschwunden, aber es erweist sich als sehr nützlich und sogar lebenswichtig.