VoltDB
David Rolfe Director of Solution Architecture, EMEA Doug Jauregui
- Sr. Solutions Engineer
VoltDB David Rolfe Director of Solution Architecture, EMEA Doug - - PowerPoint PPT Presentation
VoltDB David Rolfe Director of Solution Architecture, EMEA Doug Jauregui Sr. Solutions Engineer Legacy database technology is obsolete Legacy RDBMS designs date from about Internet Traffic (GB Month), Transistors per CPU and Cost of RAM
David Rolfe Director of Solution Architecture, EMEA Doug Jauregui
1985.
increasingly uneconomic.
2 nodes.
all the time.
and RAM keeps getting cheaper
$1 $10 $100 $1.000 $10.000 $100.000 $1.000.000 $10.000.000 1 10 100 1.000 10.000 100.000 1.000.000 10.000.000 100.000.000 1.000.000.000 10.000.000.000 100.000.000.000 1980 1990 2000 2010
Internet Traffic (GB Month), Transistors per CPU and Cost of RAM over time Total Internet Bandwidth (GB/Mo) Transistors per CPU Price of Ram ($/GB)
SELECT * FROM PRODUCTS WHERE ID = 1 FOR UPDATE OF qty; ID=1, Qty= 200, LastDate= 23 /March/18 UPDATE users SET BAL = 190 WHERE ID =1; INSERT INTO sales Iuserid, productId, cost) VALUES (42,1,10); UPDATE products SET qty = 199 WHERE ID = 1; COMMIT; SELECT * FROM PRODUCTS WHERE ID = 1 FOR UPDATE OF qty; ID=1, Qty= 200 UPDATE users SET BAL = 190 WHERE ID =1; INSERT INTO sales Iuserid, productId, cost) VALUES (43,1,10); UPDATE products SET qty = 199 WHERE ID = 1; COMMIT;
Inflight Transactions
WAΙTΙNG WAΙTΙNG
RAM DATA DISK DATA CPU
SELECT * FROM PRODUCTS WHERE ID = 1 FOR UPDATE OF qty; ID=1, Qty= 200, LastDate= 23 /March/18 UPDATE users SET BAL = 190 WHERE ID =1; INSERT INTO sales Iuserid, productId, cost) VALUES (42,1,10); UPDATE products SET qty = 199 WHERE ID = 1; COMMIT; SELECT * FROM PRODUCTS WHERE ID = 1 FOR UPDATE OF qty; ID=1, Qty= 200 UPDATE users SET BAL = 190 WHERE ID =1; INSERT INTO sales Iuserid, productId, cost) VALUES (43,1,10); UPDATE products SET qty = 199 WHERE ID = 1; COMMIT;
Inflight Transactions
WAΙTΙNG WAΙTΙNG
RAM DATA DISK DATA CPU CPU
Inflight Transactions
WAΙTΙNG WAΙTΙNG
Inflight Transactions
WAΙTΙNG WAΙTΙNG
RAM DATA RAM DATA CPU
CORE
CPU
CORE
SAN
Index Management 11% Logging 20% Locking 18% Latching 10% Buffer Management 29% Useful Work 12%
Inflight Transactions Inflight Transactions
RAM DATA RAM DATA
WAΙTΙNG WAΙTΙNG WAΙTΙNG WAΙTΙNG
BOOK BOOK PAY PAY BOOK PAYBay Item 1 Bay Item 2
BOOK BOOK PAYBay Item 1 Bay Item 2
BOOK PAY BOOK BOOK BOOK PAY PAY BOOK PAYBay Item 1 Bay Item 2
BOOK BOOK PAYBay Item 1 Bay Item 2
BOOK PAY BOOKCORE CORE CORE CORE
Local File System Local File System
Tranactions Scale Milliseconds ACID Transactions
Batch Processing/ HDFS NoSQL Legacy OL TP
Approach Examples Strengths Weaknesses Many SQL Statements + Commit or Rollback JDBC, ODBC, Liked by developers, initial development is rapid
time figuring out who can see what instead of working
temporary resource leak Move all the data to the client and back again NoSQL, KV Stores Very developer friendly
same time for scaling OLTP loads
time. Stored Procedures VoltDB, PL/SQL Predictable speed and best possible scaling characteristics
slow.
loT Platforms, Energy, Sensor
Smart grid/meters, asset tracing & management
Telco
Billing/rights management, subscriber data, etc.
Financial Services
Risk, market data management, customer mgt.
Personalize, Customize, Target
Ad optimization, audience segmenting, customer service
Infrastructure, Dashboards, KPIs
Data pipeline, system performance, streaming ETL.
Near Real Time Data for Models and Rules
VoltDB
Spark + Hadoop
New Data Rules
Fraud Prevention Single Sign-on Manager Consumer Banking Risk Management Credit Card & Mobile Pay Consumer Banking System Mobile log-in
Message Queue
Real-Time Decision Making
VoltDB Application/Use Case
Why VoltDB?
traditional fraud detection
procedures
places at once.