This document discusses Rakuten Card's migration of its core credit card processing systems from an aging mainframe architecture to a new architecture based on Oracle Exadata, Exalogic, and Oracle Cloud Machine. The migration involved converting terabytes of data from legacy formats to Oracle Database, reimplementing software from Japanese COBOL to Java EE, and deploying the new systems with no downtime or issues. The new standardized architecture provides improved performance, scalability, portability, and security compared to the old vendor-locked mainframe systems. Overall the migration was completed on schedule and the new systems have been successfully operating in production.
Case Study: Credit Card Core System with Exalogic, Exadata, Oracle Cloud Machine [CON4994]
1. Case Study: Credit Card Core System with
Exalogic, Exadata, Oracle Cloud Machine
[CON4994]
Oct 3, 2017
Hirofumi Iwasaki
Ville Misaki
System Strategy Department,
Rakuten Card Co., Ltd.
2. 2
Speaker Biography
Hirofumi Iwasaki
Group Manager
Technology Strategy Group, System Strategy Department,
Rakuten Card Co., Ltd.
Career
Planning, designing & implementation of huge enterprise systems for
financial, manufacturing and public systems with Java EE in Japan over
18 years.
Opus, Lectures, etc.
Conferences: OOW 2014, JavaOne 2015, 2014, Java Day Tokyo 2014-
2015, Rakuten Tech Conference 2013-2016, etc.
3. 3
Agenda
1. About Rakuten Card
2. Background of the Old Systems
3. New Architecture Design Overview
Exadata for database
Exalogic for app server
OCM for unlimited scale-out execution platform, with security
4. Data Migration
5. Software Migration
6. Extra Performance with Apache Spark
7. Results
8. Into the Future
3
8. 8
About Rakuten Card
Top-level credit card
company in Japan
Core of Rakuten
ecosystems.
3rd position of total
transaction volume in 2016.
Growing rapidly.
9. 9
Conference session on Oracle OpenWorld 2014
Shared with web front end
systems improvement
activities
Based on Java EE 6
On WebLogic server 12c
With Oracle Exadata X3-2
In-house development
Great success
12. 12
Old core systems - Mainframe
Mainframe
Old architecture – over 20 years
High cost structure
Capacity and performance
limitation – no scale out
Low maintainability with piled
programs and old architecture
database "NDB"
Risk against vendor locked-in
Limitation of the security for the
significant data
14. 14
Limitation of old mainframe systems – Business
Old New
Cannot scale-out Apply scale-out enabled
architecture, with Oracle RAC
and clustered WebLogic server.
Low connectivity to other
systems
Apply Java EE and latest
protocol.
Less security management on
data
Apply Oracle database
security options.
No latest auto testing
environment
Introduce latest auto testing
environment.
15. 15
Limitation of old mainframe systems – Development
Old New
No local development Apply Java EE and Oracle DB
for local dev.
Hard to understand because
of its old architecture
Apply latest Java EE for its
basement.
Poor version control systems Introduce git server and issue
track systems.
No development community Apply Java EE and join open
community.
16. 16
Limitation of old mainframe systems – Operation
Old New
Poor automated operations Introduce Jenkins and
automations.
Manual error monitoring Include Zabbix monitoring to
cover the new core system.
Difficult to pin-point cause of
error
Use standard Java tools: stack
traces, Flight Recorder, etc.
Tons of unused codes Apply automated source code
analyzing tool.
18. 18
Phase of the improvement – 3.0
1.0
Initial phase
2.0 In-house
development
3.0
Standardization
4.0
Data Optimized
Outsource based,
just started.
Vendor locked-in.
In-house
development,
differentiate with
lower costs and
faster delivery.
Standardized
system
architecture, both
for hardware and
software.
Overwhelming
differentiation,
with enabling
architecture for
customer centric
service.
Achieved Next
Current Standard
Architecture
20. Oracle Exalogic
+ Exadata + ZFS Servers
Big Improvement - Functionality: Hardware 1/2
20
Mainframe
Old New
Core
Systems
21. Big Improvement - Functionality: Hardware 2/2
21
Oracle Exalogic
+ Exadata + ZFS Servers
Oracle Cloud Machine
(On premise private cloud)
For temporarily
request spiking
Low-Cost
Temp
Resource
New
Core
Systems
22. 22
Big Improvement - Reliability: Software Platform
Financial de-facto standard
Java EE compliant.
Matured, from 1997.
Financial de-facto standard
ISO/IEC 9075 SQL compliant
Matured, from 1983.
COBOL
Network
DB
App Server
Database
Old New
WebLogic Server
Oracle Database
23. 23
Big Improvement - Portability: Platform independent
Hardware, OS, app
server independent,
vendor free.
Mainframe,
Japanese COBOL,
vendor locked-in
Old New
Widfly
Payara
WebLogic
hp-ux
AIXSolaris
LinuxWindows
macOS
WebSphere
25. 25
Speaker Biography
Ville Misaki
Senior Software Engineer
Technology Strategy Group,
System Strategy Department,
Rakuten Card Co., Ltd
Career
15+ years; 3 years at Rakuten
In Finland, the Netherlands, Japan
Java (EE), Perl, C++, web systems, relational
databases, performance optimization & security
26. 26
Agenda
1. About Rakuten Card
2. Background of the Old Systems
3. New Architecture Design Overview
Exadata for database
Exalogic for app server
OCM for unlimited scale-out execution platform, with security
4. Data Migration
5. Software Migration
6. Extra Performance with Apache Spark
7. Results
8. Into the Future
26
29. 29
Data Migration – Outline
Data Conversion
Network database to relational database
ISAM/VSAM data to relational database
Legacy Japanese character set to Unicode
Fix data inconsistencies
Scale
Terabytes of live production data
Less than 24 hours time
30. 30
Data Migration – Minimize Downtime
Offline migration
Freeze data during migration
Full migration – not incremental
Customers mostly unaffected
Data & System migration
At the same time
Cannot be split into phases
Cached
34. 34
Software Migration – Outline
Reimplement Emulate Convert
Pro
• Optimal performance
• Low maintenance cost
• Development unchanged
• Easy to test
• Easy to migrate
• Flexible cost vs. schedule
• Case-by-case fixes
• Easy to test
Con
• Expensive
• Takes a long time
• Risky
• Difficult to test
• Development unchanged
• Low performance
• Future questionable
• Legacy code remains
• Low performance points
need to be addressed
Requirements?
35. 35
Software Migration – Outline
Reimplement Emulate Convert
Pro
• Optimal performance
• Low maintenance cost
• Development unchanged
• Easy to test
• Easy to migrate
• Flexible cost vs. schedule
• Case-by-case fixes
• Easy to test
Con
• Expensive
• Takes a long time
• Risky
• Difficult migration
• Development unchanged
• Low performance
• Future questionable
• Legacy code remains
• Low performance points
need to be addressed
2x Performance No regression Minimal downtime
36. 36
Software Migration – Outline
Reimplement Emulate Convert
Pro
• Optimal performance
• Low maintenance cost
• Development unchanged
• Easy to test
• Easy to migrate
• Flexible cost vs. schedule
• Case-by-case fixes
• Easy to test
Con
• Expensive
• Takes a long time
• Risky
• Difficult migration
• Development unchanged
• Low performance
• Future questionable
• Legacy code remains
• Low performance points
need to be addressed
2x Performance No regression Minimal downtime
37. 37
Software Migration – Conversion
Japanese COBOL
Source code
Source code
Custom made
source code
converter
Convert from Japanese
COBOL to Java EE
Keep original core
business logic
38. 38
Software Migration – Conversion: Dual Source
From Web Systems,
For New Logic
COBOL
From Old System,
converted to Java
Ease of migration, resource re-use
Introduce power of Java EE
Introduce converter from YPS to Java
“Dual Source Architecture”
Japanese
COBOL
Japanese source code
Almost abandoned
No books, no community
Old New
39. 39
Software Migration – Conversion: Single Binary
New Logic
(Java EE)
Application Server
(Java EE)
Legacy Logic
(Mainframe)
Build
Deploy
Japanese
COBOL
Convert to
COBOL
Convert
to Java
COBOL
Java
Compile
WAR
Converter
Two sources,
single binary
Easy to operate
Java
Byte Code
Compile
Java
40. 40
Software Migration – New Architecture
BIG-IP
Real-time Servers
(WebLogic)
Batch Servers
(Spark & Java)
Façade
Rich clients Façade
Façade
Intranet
External
Intra
Exadata
Mail
Form
BIG-IP
Façade
BIG-IP
External
customers
Scheduler
CoreBusinessLogicAPIs
Operation
terminal
Web
browser
Old New
41. 41
Auto testing environment
3. Run tests
on staging environment
2. Execute auto testing
on several times
1. Register auto test scenarios
Automatic testing
using latest IBM
Rational test software
Regression tests
triggered when
something changed
Reduce possibility of
errors in production Testing
Server
52. 52
Into the Future
1.0
Initial phase
2.0 In-house
development
3.0
Standardization
4.0
Data Optimized
Outsource based,
just started.
Vendor locked-in.
In-house
development,
differentiate with
lower costs and
faster delivery.
Standardized
system
architecture, both
for hardware and
software.
Overwhelming
differentiation,
with enabling
architecture for
customer centric
service.
Achieved Next
Current Standard
Architecture