Big Data und Polyglot Persistence

Der Begriff polyglott entlehnt und neu definiert für große Daten als eine Reihe von Anwendungen, die mehrere Kerndatenbanktechnologien verwenden, und dies ist das wahrscheinlichste Ergebnis Ihrer Ausführungsplanung. Die offizielle Definition von polyglott ist "jemand, der spricht oder schreibt mehrere Sprachen." Es wird schwierig sein, eine Persistenz-Stil zu wählen, egal wie eng Ihr Konzept für große Daten sein könnten.

Eine polyglott Persistenz-Datenbank wird verwendet, wenn es notwendig ist, ein komplexes Problem zu lösen, indem sie dieses Problem in Segmente zu brechen und verschiedene Datenbankmodelle anwenden. Es ist dann notwendig, die Ergebnisse in ein hybrides Datenspeicherung und Analyselösung zu aggregieren. Eine Reihe von Faktoren beeinflussen diese Entscheidung:

  • Sie verwenden bereits polyglotte Persistenz in Ihrem bestehenden Arbeitsplatz. Wenn Ihr Unternehmen oder einer Organisation groß ist, verwenden Sie wahrscheinlich mehrere RDBMS, Data Warehouse, Data Marts, Flat Files, Content-Management-Server, und so weiter.

    Diese Hybridumgebung ist weit verbreitet, und Sie müssen es zu verstehen, damit Sie die richtigen Entscheidungen über die Integration zu machen, Analytik, Aktualität der Daten, Datentransparenz, und so weiter. Sie müssen all das zu verstehen, weil Sie heraus müssen, wie es in Ihre große Daten Implementierung passen wird.

  • Die idealste von Umgebungen, in denen Sie nur eine Persistenz-Technologie haben, ist wahrscheinlich nicht zu große Datenproblemlösung geeignet. Zumindest, müssen Sie eine andere Art von Datenbank und andere unterstützende Technologien für die neue Implementierung einzuführen.

  • Je nach Sorte und Geschwindigkeit Ihres großen Datenerfassung, müssen Sie möglicherweise verschiedene Datenbanken zu prüfen, eine Implementierung zu unterstützen. Sie sollten auch Ihre Anforderungen an die Integrität der Transaktionen in Betracht ziehen. Sie benötigen ACID Compliance oder Wille BASE Compliance ausreichend sein, um zu unterstützen?

Nehmen wir an, dass Sie alle Kunden für Ihr Produkt zu identifizieren müssen, die in den letzten 12 Monaten erworben haben und auf soziale Websites über ihre Erfahrungen kommentiert - und ob sie alle Support-Fälle gehabt haben, in denen sie das Produkt erworben haben, wie es geliefert wurde, was sie bezahlt, wie sie bezahlt, ob sie sich auf der Website des Unternehmens gewesen sein, wie oft, was sie taten, und so weiter.

Dann nehme an, dass Sie ihnen einen Aktionsrabatt auf ihrem Smartphone zu bieten wollen, wenn sie eines Ihrer eingeben (oder einer Ihrer Partner) Einzelhandelsgeschäfte.

Dies ist eine große Herausforderung Daten auf höchstem Niveau. Mehrere Datenquellen mit sehr unterschiedlichen Strukturen müssen gesammelt und analysiert werden, so dass Sie die Antworten auf diese Fragen zu bekommen. Dann müssen Sie entscheiden, ob die Kunden für die Förderung und in Echtzeit zu qualifizieren, schiebt sie einen Gutschein ihnen etwas Neues und Interessantes bieten.

Diese Art von Problem kann nicht einfach oder kostengünstig mit einer Art von Datenbank-Technologie gelöst werden. Auch wenn einige der grundlegenden Informationen sind Transaktions- und wahrscheinlich in einem RDBMS, die anderen Informationen ist nicht relationale und wird mindestens zwei Arten von Persistenz-Motoren (räumliche und Grafik) erfordern. Sie haben jetzt polyglott Ausdauer.

Menü