Golden Gate: Replizieren von Terabyte pro Stunde oder Verwenden von CDC auf GoldenGate bei VTB

Es gibt viele Möglichkeiten, Daten in Echtzeit zu analysieren. Bei VTB verwenden wir die CDC-Technologie (Change Data Capture), die im Golden Gate Oracle-Tool implementiert ist: Geschwindigkeit ist für uns sehr wichtig, aber wir möchten die Menge der übertragenen Daten verringern und die Belastung der Quelle verringern. Und obwohl der Hauptumfang dieses Tools die Replikation von Oracle und MS SQL ist, haben wir im Laufe der Jahre mit CDC mehrere interessante Fälle gesammelt, wie die Datenmigration zwischen Plattformen oder verschiedenen Arten von DBMS. Unter dem Schnitt werden wir unsere Erfahrungen mit Golden Gate teilen.



Warum brauchten wir CDC (Change Data Capture)


Der alltägliche Gebrauch von Bankkarten ist seit langem bekannt, und die Menschen glauben in der Regel nicht, dass jeder Gebrauch eines Zahlungsterminals die sofortige Übermittlung bestimmter Informationen an die Bank darstellt. Die Datenmengen nehmen zu und ich möchte sie so schnell wie möglich verarbeiten, auch um Sonderangebote in Echtzeit zu versenden, denn wie man so schön sagt, ein guter Löffel zum Abendessen. Und herkömmliche ETL-Tools (Extrahieren, Transformieren, Laden - Extrahieren, Transformieren, Laden) können Daten nicht so schnell verarbeiten. Hier ist eine der Schwachstellen: Wenn Daten aus den Quellsystemtabellen entnommen werden, müssen Sie nur neue Zeilen oder Zeilen mit Änderungen auswählen. Dieser Ansatz lädt zusätzlich das Quellsystem und erhöht die Menge der übertragenen Daten.

CDC erfasst Änderungen aus Datenbankprotokollen in Echtzeit. Dadurch wird die Quelle viel weniger belastet und die Menge der übertragenen Daten reduziert. Mit dieser Technologie haben wir den Bedarf an Rechenressourcen für Systeme mit einem großen Volumen an Transaktionsänderungen reduziert: Schließlich reichen für die Datenerfassung auch für die am stärksten ausgelasteten Bankensysteme 1-2 Prozessorkerne an der Quelle aus. Und wenn wir ETL einführen würden, müssten wir Prozessorkapazitäten kaufen, um Daten parallel lesen zu können.

Bei VTB setzen wir seit mehreren Jahren die Oracle GoldenGate-Technologie, das CDC-Tool von Oracle, ein. Mit ihrer Hilfe füllen wir das operative Data Warehouse und verteilen die Funktionen von Informationssystemen in „warme“ und „heiße“ Zonen. 90% der OGG-Anwendungen in der IT-Landschaft der Bank laden Daten von Oracle und MS SQL, aber abgesehen von der Replikation werden andere Aufgaben perfekt bewältigt. Schauen wir uns einige Beispiele aus unserer Praxis an.



Fall 1. Online-Berichterstattung


Wir haben GoldenGate 2013 getroffen. Dann wurden in unserem Kartenverarbeitungskomplex gleichzeitig Transaktionen verarbeitet und Berichte erstellt. Die OLTP-Last wurde mit der DWH / DSS-Last gemischt, und große, schwere Proben löschten den Cache aus dem Datenbankspeicher. Infolgedessen mussten schnelle Transaktionen auf die Festplatte übertragen werden, und die Geschwindigkeit kritischer Unternehmensdienste nahm ab. Um den Prozessorkern zu entlasten, haben wir alle von uns entwickelten Prozeduren und Berichte in ein „warmes“ Replikat von Oracle Exadata überführt.
Wie Sie Daten mit GoldenGate replizieren, wird hier ausführlich beschrieben. Kurz gesagt: Für hoch belastete Systeme, in denen verschiedene Lasttypen gemischt werden, verteilen wir sie auf verschiedene OLTP- und DWH / DSS-Server und verwenden GoldenGate für die Synchronisation zwischen ihnen. Dieses Muster des Hervorhebens einer "warmen" Replik war in vielen anderen Fällen nützlich. Zum Beispiel haben wir den gleichen Ansatz für unser Betrugsbekämpfungssystem gewählt: Wir übertragen alle Berichte auf die integrierten Oracle Exadata-Systeme und replizieren die Daten mit GoldenGate.

Es gibt keine Systeme ohne Ausfälle. Wenn beispielsweise ein Entwickler die Daten auf dem Empfänger ändert, kann ein Datennutzungsfehler auftreten und GoldenGate-Prozesse werden gestoppt. Um nicht synchronisierte Daten auszuschließen, verwenden wir Oracle GoldenGate Veridata als unabhängigen Arbiter. Dieses Tool überprüft nicht nur die Daten zwischen Quellen und Empfängern. Hauptsache, Veridata beseitigt die Unterschiede. Es ist wichtig, dass Veridata bei der Replikation einen genauen Datenvergleich und die Erkennung verlorener Datensätze gewährleistet. Wir erhalten einen vollständigen Bericht mit den Ergebnissen des Vergleichs, der ungläubigen Kollegen präsentiert werden kann.



Fall 2. Konsolidierte Berichterstellung und Bereitstellung im Online-Speicher


Ein separater Fall ist mit dem Bau des Betriebsspeichers verbunden. Die Schwierigkeit liegt darin, dass wir neben dem operativen Berichtswesen auch Daten für die Unternehmensspeicherung vorbereiten (Staging). Es kommt vor, dass Sie ein operatives Berichtswesen auf der Grundlage von Daten generieren müssen, die von einer Reihe verschiedener Systeme gesammelt wurden. Am bequemsten ist dies auf der Ebene des Online-Speichers. Um Daten mit hoher Geschwindigkeit und minimaler Ressourcenbelastung zu erhalten, haben wir erneut GoldenGate angewendet.

Lassen Sie uns zum Vergleich erklären, wie wir das Delta der Änderungen in einigen unserer Systeme zuvor festgestellt haben. Wenn das System selbst nicht zuließ, dass das Delta hervorgehoben oder Daten rückwirkend geändert wurden, wurde die Tabelle der 10-TB-Quelle mit der 10-TB-Tabelle des Empfängers vom Vortag verglichen. Diese 10 TB mussten zuerst an der Quelle erfasst werden, und die Last fiel nicht nur auf das Quellsystem, die CPU, den Speicher, sondern auch auf das Datennetz sowie auf das am Vergleich beteiligte System. Und das alles, um das Delta der neuen Daten in 0,01% zu finden!

GoldenGate belastet die Quelle praktisch nicht: CDC liest nur die Magazine und erstellt ein fertiges Delta. Auf diese Weise können Sie erheblich an Infrastruktur sparen. Es spielt keine Rolle, wer der Empfänger ist - ein traditionelles Repository, das auf Oracle, MSSQL, Teradata oder nur Hadoop-Produkten basiert.

Beachten Sie, dass in diesem Fall Oracle-Datenbanken als Quelle und Empfänger verwendet wurden. Die Lösung hat sich bewährt. Jetzt verbinden wir alle neuen Systeme mit einem gemeinsamen Online-Data-Warehouse, und jetzt ist es nicht nur Oracle. Ein weiterer Vorteil von GoldenGate besteht darin, dass Daten aus den meisten Datenbanken heruntergeladen werden können, die in der IT-Landschaft der Bank verwendet werden.



Fall 3. Persönliche Angebote an Kunden in Echtzeit.


Wir haben bereits Streaming Analytics erwähnt, also Echtzeit-Angebote (RTO) für Kunden in Echtzeit. Führende Genossen sagen, dass der Erfolg im Bankgeschäft direkt davon abhängt, wie gut Sie Ihren Kunden kennen und wie relevant Sie ihm ein Angebot machen können. Mit anderen Worten, die Wahrscheinlichkeit, dass der Kunde das Angebot der Bank in Anspruch nimmt, ist umgekehrt proportional zur Geschwindigkeit, mit der die Bank auf die Bedürfnisse des Kunden reagiert.

Wie funktioniert es Beispielsweise zeigt eine Transaktionshistorie, dass ein Kunde jeden Freitag in einem Spirituosengeschäft einkauft. Geo-Positionierung erkennt es in einem Einkaufszentrum, in dem sich ein Geschäft dieses Netzwerks befindet, und wir senden ihm über eine mobile Anwendung ein persönliches Angebot für einen Rabatt an ein Gourmetgeschäft im selben Einkaufszentrum. Ein solcher Fall ist für die Bank am interessantesten: Sie können Co-Marken und gemeinsame Angebote erstellen. Kunden können Einzelpersonen und Organisationen sein.

Es gibt Offline- und Online-Teile. Im ersten Schritt werden Kunden anhand der Daten aller Systeme vorsegmentiert. Analysten und Datenwissenschaftler untersuchen das Verhalten und die historischen Daten und erstellen so genannte Fallen. Die Hauptsache ist, ein signifikantes Ereignis zu erfassen, das durch eine Acquirer-Transaktion, eine mobile Anwendung oder andere verfügbare Quellen verfolgt werden kann. Und schon wird dieses Ereignis mittels Streaming Analytics verarbeitet und die Entscheidung im Moment anhand der vorbereiteten Traps getroffen.

Das Ziel von CDC GoldenGate besteht darin, einen Echtzeit-Ereignisdatenfluss von den Quellsystemen zur Analyseplattform bereitzustellen. Die GoldenGate for Big Data-Lizenz enthält auch Oracle Stream Analytics. Mithilfe dieser Funktion können Data Scientists den Datenstrom in Spark Streaming unabhängig verarbeiten und die Anwendung in einer visuellen Umgebung entwickeln.

Fall 4. Operationelle Gegenmaßnahmen gegen neue Arten von Betrug


Betrugsbekämpfungssysteme sind zu Recht geschlossen: Je weniger Menschen sich mit Details befassen, desto höher ist die Sicherheit. Sie erledigen Standardfälle hervorragend, aber manchmal treten Situationen auf, die nicht in Standardskripte passen. Daher ist es wichtig, diese Modelle durch nicht standardisierte Szenarien zu ergänzen. Wir entwickeln ständig neue Modelle, die auf der Korrelation von Ereignissen verschiedener Systeme basieren: Karten- und Währungstransaktionen, Standort, Betrieb von Zahlungssystemen, Aktionen in mobilen Anwendungen, Überwachung sozialer Netzwerke. Um das Modell zu ändern, müssen Sie die akzeptierten Prozesse befolgen: Geschäftsanforderung, Aufgabeneinstellung, Durchlaufen aller internen Phasen der Implementierung der Anwendung.
Im vergangenen Jahr haben wir das Hochladen von Daten mit Oracle GoldenGate for Big Data von den am stärksten ausgelasteten traditionellen Systemen, auf denen viele kleine Transaktionen stattfanden, und von unserem Betrugsbekämpfungssystem zum Hauptcluster auf der Oracle Big Data Appliance getestet. Sowohl Hadoop als auch GoldenGate haben die übertragenen Datenmengen bewältigt - wir waren etwas überrascht.

Terabyte pro Stunde und andere Ergebnisse


In den letzten zwei Jahren haben wir mit GoldenGate das Volumen der übertragenen Protokolle verdoppelt - auf fast 1 TB pro Stunde. Dies schließt momentan fast unsere Bedürfnisse. Leider gibt es Physik, auf die wir stoßen. Um den Durchsatz zu steigern, wird jedoch aktiv mit dem GoldenGate-Entwicklungsteam zusammengearbeitet, sodass dies weit von der Grenze entfernt ist. Gleichzeitig beobachten und testen wir CDC-Lösungen anderer Anbieter, konnten jedoch keine Gründe für eine Migration von Oracle GoldenGate feststellen. Derzeit hat sich diese Technologie als die ausgereifteste auf dem Markt erwiesen.

Source: https://habr.com/ru/post/de479080/


All Articles