in-memory data management goes mainstream - openslava 2015

36
©2015 Software AG. All rights reserved. For internal use only 1 | Manish Devgan Software AG In-Memory Data Management Goes Mainstream October 9, 2015

Upload: software-ag

Post on 14-Feb-2017

899 views

Category:

Technology


0 download

TRANSCRIPT

©2015 Software AG. All rights reserved. For internal use only 1 |

Manish Devgan Software AG

In-Memory Data Management Goes Mainstream October 9, 2015

©2015 Software AG. All rights reserved. For internal use only 2 |

Introduction

Product Manager Many years in Enterprise Software industry

Lives in Washington DC Metro Interests – In-Memory, NoSQL, Distributed Systems, Modern BI, Analytics, Security, Cloud

www.linkedin.com/in/manishdevgan @mdevgan [email protected]

Email

©2015 Software AG. All rights reserved. For internal use only 3 |

1.

2.

3.

4.

Overview – In-Memory Data Management

Software AG Open Source Projects

Use Cases

Q&A

Agenda

©2015 Software AG. All rights reserved. For internal use only 4 |

Growth of Data

Transactions, Processes, Mobile, M2M, Sensors, Logs, ..

©2015 Software AG. All rights reserved. For internal use only 5 |

The value of ^ time

+0.1s costs Amazon 1% in sales

+0.5s costs Google 20% search traffic

©2015 Software AG. All rights reserved. For internal use only 6 |

Uptime, SLAs

Performance and Scale

©2015 Software AG. All rights reserved. For internal use only 7 |

The shift where data lives and gets analyzed

90% of Data in Disk-based

Databases

90% of Data in In-Memory

MEMORY

©2015 Software AG. All rights reserved. For internal use only 8 |

Why now?

Explosion in volume & velocity of

business data

Steep drop in price of RAM

©2015 Software AG. All rights reserved. For internal use only 9 | ©2015 Software AG. All rights reserved. 9 |

In-Memory Computing Hits Mainstream

“In-Memory Data Platform Is No Longer An Option — It's a Necessity!”

“..In-Memory Computing Technologies Enable Digital Business”

©2015 Software AG. All rights reserved. For internal use only 10 | ©2015 Software AG. All rights reserved. 10 |

In-Memory Data Grids – Forrester Wave

©2015 Software AG. All rights reserved. For internal use only 11 |

Change how you manage & integrate data, and you completely change what’s possible for the business.

11

©2015 Software AG. All rights reserved. For internal use only 12 | ©2015 Software AG. All rights reserved. For internal use only 12 |

Open Source

©2015 Software AG. All rights reserved. For internal use only 13 |

Terracotta Open Source Footprint

©2015 Software AG. All rights reserved. For internal use only 14 |

•  Standards in the enterprise Java ecosystem •  Each with Millions of installs - huge user bases •  Hundreds-of-thousands of downloads •  Used in other popular projects/frameworks/products

Existing Open Source Projects

©2015 Software AG. All rights reserved. For internal use only 15 |

340K+ Ehcache 2.x (Maven)

TC Server OS 4.3 – offheap + clustering (website)

4,000+

Downloads (May to Aug 2015)

Open Source Projects

© 2015 Software AG. All rights reserved. For internal use only

Frameworks leveraging Ehcache

©2015 Software AG. All rights reserved. For internal use only 16 |

Ehcache3: Modern, JSR-107 compliant, caching API API with generics & typing support

cache.put(1L, “a value")); String myVal = cache.get(1L);

cache.put (new Element(Long.valueOf(1), “a value")); String myVal = (String)cache.get(Long.valueOf(1)).getValue();

v2

v3

www.ehcache.org

©2015 Software AG. All rights reserved. For internal use only 17 |

Terracotta In-Memory Open Source offering

ü  API ü  Distributed storage (1 stripe – active

with optional mirror) ü  Key/Value Offheap Data

Management ü  Integrations (e.g. Hibernate)

©2015 Software AG. All rights reserved. For internal use only 18 | ©2015 Software AG. All rights reserved. 18 |

Your Problem: You are working with data that you want to use, manage, and harness the value of instantaneously

Our Solution: Terracotta BigMemory stores “big” amounts of data in machine memory, right where the application runs, for ultra fast access. It delivers high speed performance at any scale

©2015 Software AG. All rights reserved. For internal use only 19 |

Tiered Memory Store

Tiered Storage

Distributed BigMemory Server RAM or Flash/SSD

Process Memory

Local BigMemory

2,000,000+

1,000,000

100,000

Micro-seconds

Micro-seconds

Milli-seconds

Speed (TPS)

1,000s

Latency

External Data Source (e.g., Database, Hadoop, Data Warehouse)

BigMemory BigMemory

4 GB

32 GB – 12 TB

100s GB – 100s TB

Seconds

©2015 Software AG. All rights reserved. For internal use only 20 |

Terracotta BigMemory

©2015 Software AG. All rights reserved. For internal use only 21 |

Terracotta BigMemory

Serv

er A

rray

Stripe

Commodity Server

Application

Stripe Stripe Stripe Stripe

Commodity Server

Application

Commodity Server

Application

Commodity Server

Application

Ehcache

BigM

emor

y

TCP

Client aka L1

Highest value data is stored in-process - right where it is used

API

©2015 Software AG. All rights reserved. For internal use only 22 |

Terracotta BigMemory

Serv

er A

rray

Stripe

§  High Availability §  Scalability §  Consistency

§  Durability §  Monitoring §  Management

Commodity Server

Application

Stripe Stripe Stripe Stripe

Commodity Server

Application

Commodity Server

Application

TCP

Server on commodity HW

Transactionally updated mirror for high availability

Stripe

Commodity Server

Active Server

Commodity Server

Mirror

Server aka L2

DRA

M

FRS

DRA

M

FRS

©2015 Software AG. All rights reserved. For internal use only 23 |

Extreme Scale Up on Intel® Xeon® Processor E7 v2-based Servers

•  Enterprises increasingly need to take immediate action on big data intelligence, which is driving changes to the traditional enterprise architecture

•  Desire to keep data instantly available in high-speed machine memory, rather than locking it away in slow, disk-bound databases

•  Intel Xeon processor E7 v2-based servers have the memory capacity and the compute power to deliver new innovative solutions

•  Increasing data volumes do not deter throughput or latency of Intel Xeon processor E7-4890 v2 using BigMemory MAX* software

•  From 2 TB using 1 billion elements to 5.5 TB using 3 billion elements, the throughput and latency remained fairly constant

23

6TB

3x data fidelity, consistent performance

©2015 Software AG. All rights reserved. For internal use only 24 | ©2015 Software AG. All rights reserved. For internal use only 24 |

Use Cases

©2015 Software AG. All rights reserved. For internal use only 25 |

SPEED FORTUNE 500 ONLINE PAYMENTS PROCESSOR Before •  Lost 30 cents on every $100 to fraud •  With traditional data management solutions, failed to meet

800 ms SLA around 10% of time •  Limited to 50 rules, even though each new rule generated

$12 million in profit

Radically Improving Profitability With Better, Faster Fraud Detection

©2015 Software AG. All rights reserved. For internal use only 26 |

SPEED After ü  Savings of tens of millions of dollars in reduced costs

from missed SLAs and fraudulent charges ü  Meeting stricter 250-millisecond SLA 99% of time ü  Savings of $1 million annually in reduced database

licenses

Radically Improving Profitability With Better, Faster Fraud Detection

©2015 Software AG. All rights reserved. For internal use only 27 |

Raising Profitability by Shifting Customers from Call Centers to e-service SCALE $26 BILLION TELCO Before •  Retrieving customer data took as long as 30 seconds •  Inadequate performance meant company could

not promote e-service •  Other In-Memory solutions rejected due to cost and performance

concerns at terabyte scale

©2015 Software AG. All rights reserved. For internal use only 28 |

SCALE After ü  Supports more than 10,000 customer interactions daily,

ready to scale to 10x ü  Slashed access times to only 200 milliseconds with 100%

data availability ü  Tens of millions of dollars saved in support costs

ü  Latency and capacity constraints eliminated

Raising Profitability by Shifting Customers from Call Centers to e-service

©2015 Software AG. All rights reserved. For internal use only 29 |

“The team began almost immediately to cache the data. The result was encouraging: the site's overall response time--the time it took a page to load--dropped on the evening of Oct. 22 from eight seconds to two. That was still terrible, of course, but it represented such an improvement that it cheered the engineers. They could see that HealthCare.gov could be saved instead of scrapped.”

http://content.time.com/time/magazine/article/0,9171,2166770,00.html

©2015 Software AG. All rights reserved. For internal use only 30 | ©2015 Software AG. All rights reserved. For internal use only 30 |

What’s next?

©2015 Software AG. All rights reserved. For internal use only 31 |

Storage – typed & loosely schema’ed

•  Opaque, non-structured entries

•  Disconnected search indexes (On-disk)

•  Support for Store/Retrieve operations only

§  Structured, typed records

§  Integrated search indexes (in-memory)

§  Purpose built storage for in-place compute

Storage Off-heap, FRS, Hybrid

Search Indexes

Storage, Search, & Compute Off-heap, FRS, Hybrid, Indexes

Key Value (byte[]) Key “name”: “John”

“age”: 21

“pic”: byte[]

©2015 Software AG. All rights reserved. For internal use only 32 |

Intelligent Storage & Simple APIs

Synchronous – “awaiting results” Asynchronous – “fire & forget”

p1

“num”: 123

“age”: 21

“name”: “Marcus

“hired”: true

dataset.applyMutation(WS, myCounterKey,

write(myCounterCell, longValueOf(myCounterCell).increment()));

Operation result = dataset.async().applyMutation(WS, myCounterKey, ..);

persons.add(WS, “p1”, FIRST_NAME.newCell("Marcus”));

Simple CRUD API

Mutation - without the need to bring data back to client

©2015 Software AG. All rights reserved. For internal use only 33 |

•  Well-known “functions”

•  E.g. “average”, “map”, “reduce”

•  Supports Java 8 Streams

•  Support for functional expressions (“Lambdas”)

Compute pipeline on storage

•  Fluent DSL (Domain Specific Language)

persons.compute().filter(boolValueOf(HIRED)).count(); persons.compute().map( … ) persons.compute().filter( … ).map( … ).reduce(…).sorted(…).forEach(…);

©2015 Software AG. All rights reserved. For internal use only 34 |

FINE grained Data consistency & Durability

•  More fine-grained than simple “Strong-Eventual”

•  “Pay-as-you-go” model •  Pay performance costs warranted

for given need •  Read & Write settings per operation

•  Write operations can specify range of visibility and durability requirements

persons.compute(STANDARD). … persons.get(PARANOID). …

Persons.add(WS, … ) Persons.applyMutation(WS, … ) WriteSettings WS = WriteVisibiltiy.IMMEDIATE.withDurability(maximal()); or… WriteVisibiltiy.EVENTUAL.withDurability(onAtLeastNPassives(1));

©2015 Software AG. All rights reserved. For internal use only 35 | ©2015 Software AG. All rights reserved. 35 |

Q&A

www.terracotta.org

We are hiring! jobs.softwareag.com