VIEW SPEECH SUMMARY
1. Wprowadzenie i dane statystyczne o banku
- PKO BP obsługuje 12 mln klientów, z czego 10,7 mln korzysta z bankowości elektronicznej.
- Ponad 6 mln klientów używa bankowości mobilnej, a 3 mln unikalnych miesięcznie korzysta z bankowości internetowej.
- W kanale mobilnym wykonuje się 9 płatności na sekundę, a każdego dnia klienci wykonują 32 mln "dotknięć ekranu", co generuje setki milionów odczytów i zapisów w bazach danych.
- Klienci oczekują od bankowości szybkości i wygody porównywalnej do Google czy mediów społecznościowych.
2. Początki zastosowania nierelacyjnych baz danych w PKO BP
- Potrzeba efektywnego przetwarzania dużych wolumenów operacji głównie dla klientów korporacyjnych z dużą liczbą rachunków i transakcji.
- Relacyjne bazy danych nie spełniały wymagań skalowalności i wydajności.
- Zdecydowano się na online’ową replikę systemu centralnego aktualizowaną co minutę, bazującą na nierelacyjnej bazie danych jako centrum ekosystemu.
3. Wybór i cechy bazy Cassandra
- Przetestowano różne rozwiązania, w tym Oracle In Memory i DB2 Analytics Accelerator - niesatysfakcjonujące.
- Wybrano bazę Cassandra ze względu na wysoką skalowalność i szybkość odczytu, oraz integrację z indeksem Solr.
- Cassandra to otwartoźródłowa baza rozproszona, stworzona przez Facebook, wykorzystywana także przez Netflixa.
- Architektura rozproszona na wiele serwerów (nodów), dane replikowane wielokrotnie dla wysokiej odporności na awarie.
- Skalowalność uzyskuje się dodając kolejne nody do klastra.
4. Implementacja i rozwój systemu
- Pierwotnie replikowano kilka tabel, dziś kilkadziesiąt, importując setki milionów rekordów z plików płaskich w kilkanaście minut.
- Cassandra zasila wszystkie kanały elektroniczne banku i wspiera narzędzia analityczne oraz AI.
- Dane są denormalizowane przez autorskie narzędzie ETL (extract-transform-load), umożliwiające optymalne struktury pod konkretne zapytania.
- Całość musi być zaprojektowana z myślą o braku joinów - każda tabela dedykowana jest specyficznemu zapytaniu.
5. Proces zapisu i odczytu danych w Cassandra (opis techniczny)
- Koordynator (dowolny nod klastra) kieruje zapytaniami i zapisami.
- Nowe dane trafiają do pamięci RAM (memtables) i dzienników commit log (na dysku) dla odporności na awarie.
- Okresowo dane przenoszone do struktur na dysku (SSTables).
- Podczas odczytu zapytania kierowane są bezpośrednio do odpowiednich nodów, wyniki łączone i zwracane klientowi.
- Parametr spójności można konfigurować, balansując między szybkością a jakością zapisu i odczytu.
6. Rozszerzenia i nowoczesne zastosowania
- Od niedawna możliwe jest przechowywanie w Cassandra obiektów wektorowych, wykorzystywanych wraz z modelami AI.
- Na tej podstawie budowane są m.in: scoring kredytowy, predykcje zachowań klientów, detekcja anomalii i operacji fraudowych.
- Zachowywane są właściwości kluczowe: skalowalność, wydajność, odporność na awarie.
7. Narzędzia do pracy z bazą dla użytkowników biznesowych
- Używany UX Langflow pozwala klientom biznesowym tworzyć przepływy logiki AI korzystając z danych z Cassandry w intuicyjny sposób, bez konieczności znajomości technicznych detali.
8. Wnioski i rekomendacje
- Skalowanie aplikacji jest łatwiejsze niż skalowanie baz danych.
- Nierelacyjne bazy danych dają szansę na łatwe skalowanie i wydajność w bankowości.
- Rozwiązania te są również dostępne w chmurze, co dodatkowo ułatwia elastyczność i rozwój.
- Skalowalne dane to przyszłość skalowalnych biznesów.
Zadania i działania do rozważenia:
- Kontynuować rozwój i skalowanie nierelacyjnej bazy danych Cassandra według rosnących potrzeb.
- Optymalizować projektowanie struktur danych pod konkretne zapytania i zwiększać efektywność ETL.
- Wykorzystać nowe funkcjonalności przechowywania obiektów wektorowych do rozbudowy narzędzi AI.
- Umożliwiać i wspierać użytkowników biznesowych w korzystaniu z narzędzi UX (takich jak Langflow) dla szybkiego prototypowania i wdrażania rozwiązań AI.
- Monitorować aktualizacje i trendy rozwojowe w bazach NoSQL oraz rozwiązaniach chmurowych, aby utrzymać przewagę konkurencyjną.
- PKO BP obsługuje 12 mln klientów, z czego 10,7 mln korzysta z bankowości elektronicznej.
- Ponad 6 mln klientów używa bankowości mobilnej, a 3 mln unikalnych miesięcznie korzysta z bankowości internetowej.
- W kanale mobilnym wykonuje się 9 płatności na sekundę, a każdego dnia klienci wykonują 32 mln "dotknięć ekranu", co generuje setki milionów odczytów i zapisów w bazach danych.
- Klienci oczekują od bankowości szybkości i wygody porównywalnej do Google czy mediów społecznościowych.
2. Początki zastosowania nierelacyjnych baz danych w PKO BP
- Potrzeba efektywnego przetwarzania dużych wolumenów operacji głównie dla klientów korporacyjnych z dużą liczbą rachunków i transakcji.
- Relacyjne bazy danych nie spełniały wymagań skalowalności i wydajności.
- Zdecydowano się na online’ową replikę systemu centralnego aktualizowaną co minutę, bazującą na nierelacyjnej bazie danych jako centrum ekosystemu.
3. Wybór i cechy bazy Cassandra
- Przetestowano różne rozwiązania, w tym Oracle In Memory i DB2 Analytics Accelerator - niesatysfakcjonujące.
- Wybrano bazę Cassandra ze względu na wysoką skalowalność i szybkość odczytu, oraz integrację z indeksem Solr.
- Cassandra to otwartoźródłowa baza rozproszona, stworzona przez Facebook, wykorzystywana także przez Netflixa.
- Architektura rozproszona na wiele serwerów (nodów), dane replikowane wielokrotnie dla wysokiej odporności na awarie.
- Skalowalność uzyskuje się dodając kolejne nody do klastra.
4. Implementacja i rozwój systemu
- Pierwotnie replikowano kilka tabel, dziś kilkadziesiąt, importując setki milionów rekordów z plików płaskich w kilkanaście minut.
- Cassandra zasila wszystkie kanały elektroniczne banku i wspiera narzędzia analityczne oraz AI.
- Dane są denormalizowane przez autorskie narzędzie ETL (extract-transform-load), umożliwiające optymalne struktury pod konkretne zapytania.
- Całość musi być zaprojektowana z myślą o braku joinów - każda tabela dedykowana jest specyficznemu zapytaniu.
5. Proces zapisu i odczytu danych w Cassandra (opis techniczny)
- Koordynator (dowolny nod klastra) kieruje zapytaniami i zapisami.
- Nowe dane trafiają do pamięci RAM (memtables) i dzienników commit log (na dysku) dla odporności na awarie.
- Okresowo dane przenoszone do struktur na dysku (SSTables).
- Podczas odczytu zapytania kierowane są bezpośrednio do odpowiednich nodów, wyniki łączone i zwracane klientowi.
- Parametr spójności można konfigurować, balansując między szybkością a jakością zapisu i odczytu.
6. Rozszerzenia i nowoczesne zastosowania
- Od niedawna możliwe jest przechowywanie w Cassandra obiektów wektorowych, wykorzystywanych wraz z modelami AI.
- Na tej podstawie budowane są m.in: scoring kredytowy, predykcje zachowań klientów, detekcja anomalii i operacji fraudowych.
- Zachowywane są właściwości kluczowe: skalowalność, wydajność, odporność na awarie.
7. Narzędzia do pracy z bazą dla użytkowników biznesowych
- Używany UX Langflow pozwala klientom biznesowym tworzyć przepływy logiki AI korzystając z danych z Cassandry w intuicyjny sposób, bez konieczności znajomości technicznych detali.
8. Wnioski i rekomendacje
- Skalowanie aplikacji jest łatwiejsze niż skalowanie baz danych.
- Nierelacyjne bazy danych dają szansę na łatwe skalowanie i wydajność w bankowości.
- Rozwiązania te są również dostępne w chmurze, co dodatkowo ułatwia elastyczność i rozwój.
- Skalowalne dane to przyszłość skalowalnych biznesów.
Zadania i działania do rozważenia:
- Kontynuować rozwój i skalowanie nierelacyjnej bazy danych Cassandra według rosnących potrzeb.
- Optymalizować projektowanie struktur danych pod konkretne zapytania i zwiększać efektywność ETL.
- Wykorzystać nowe funkcjonalności przechowywania obiektów wektorowych do rozbudowy narzędzi AI.
- Umożliwiać i wspierać użytkowników biznesowych w korzystaniu z narzędzi UX (takich jak Langflow) dla szybkiego prototypowania i wdrażania rozwiązań AI.
- Monitorować aktualizacje i trendy rozwojowe w bazach NoSQL oraz rozwiązaniach chmurowych, aby utrzymać przewagę konkurencyjną.
Skalowalne dane, skalowalne biznesy.Wykorzystanie baz NoSQL w nowoczesnej bankowości.
12:00 - 12:20, 27th of May (Tuesday) 2025 / DEV TRENDS STAGE
Rosnące wymagania klientów w zakresie szybkości, dostępności i personalizacji usług sprawiają, że sektor bankowy coraz częściej sięga po nowoczesne technologie stosowane przez gigantów technologicznych.
Wdrażanie rozwiązań opartych na architekturze rozproszonej, dużej skalowalności i odporności na awarie pozwala sprostać oczekiwaniom klientów , a jednocześnie zapewnić niezawodne działanie systemów w czasie rzeczywistym.
LEVEL:
Basic
Advanced
Expert
TRACK:
Data
Software Architecture
TOPICS:
Backend
Bigdata