REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview...

14
REVOLUTIONIZING LOCAL MOBILITY © COPYRIGHT 2016 MOOVIT REDIS USE CASE

Transcript of REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview...

Page 1: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

REVOLUTIONIZING LOCAL MOBILITY

© COPYRIGHT 2016 MOOVIT

REDIS USE CASE

Page 2: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

Agenda

• Brief Moovit overview

• Build up the Moovit requirements

• Cover requirements using Redis + Redis Labs + Applicative

clustering

• Redis summary

Anan Kenig, Chief Architect @ Moovit

Page 3: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

8 Billion People

900 Million Cars

Page 4: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

35 Million Users

The World’s #1 Transit App

41Languages

65Countries

800+ Cities

Page 5: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

4,500Transit Operators

4.6 millionBus/Train Stops

100 million Daily passenger reports

Page 6: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

New city added every

20 Hours!

Moovit service covers population of ~1B (excluding China & India)

In 25% of the Metro areas we serve we are the ONLY service (no Google(

Next year Moovit service will cover a population of over 2B!

Page 7: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

The Moovit Requirements

1000’s

Reads

/ sec

1000’s Read Ops

Extremely responsive (< 10ms)

Constantly changing

Easily upgradable

Page 8: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

The Moovit Requirements1000’s Read Ops

Extremely responsive (< 10ms)

Easily upgradable

Scale horizontally

More coverage

Scale

Vertically

2-dimensional scaling

Full redundancy

99.99∞99 availability

Seamless failover

No SPOF

Page 9: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

The Moovit Requirements1000’s Read Ops

Extremely responsive (< 10ms)

Easily upgradable

2-dimensional scaling

Full redundancy

99.99∞99 availability

Seamless failover

No SPOF

Data blocks frequently

change holistically

Holistic data block switches

Full switches automation & manageability

Page 10: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

Redis Solution1000’s Read Ops

Extremely responsive (< 10ms)

Easily upgradable

2-dimensional scaling

Full redundancy

99.99∞99 availability

Seamless failover

No SPOF

Holistic data block switches

Full switches automation & manageability

• Support 1000’s iops

• Extremely fast

• No magic to upgrades –

as easy as you write it,

but it’s easy to write

Page 11: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

Redis Solution1000’s Read Ops

Extremely responsive (< 10ms)

Easily upgradable

2-dimensional scaling

Full redundancy

99.99∞99 availability

Seamless failover

No SPOF

Holistic data block switches

Full switches automation & manageability

• Clustering allows 2D

scaling

• Full redundancy &

seamless failover using

high-availability

deployment

• Very high availability

Redis Labs

Page 12: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

Redis Solution1000’s Read Ops

Extremely responsive (< 10ms)

Easily upgradable

2-dimensional scaling

Full redundancy

99.99∞99 availability

Seamless failover

No SPOF

Holistic data block switches

Full switches automation & manageability

• No SPOF – worst case

one metro fails

• Replace entire data

holistically w/o interrupting

reads

• Fully automatable &

maintainable via API

• Full resource utilization

Redis LabsAPI

Moovit Loader

Applicative Clustering

Page 13: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

Summarizing RedisAdvantages

Simple

1ms roundtrip is an overhead

Quick

Fast

Things to consider

Simple

Only simple structs

(objects, hashes, sets…)

Everything else needs to be written

Page 14: REVOLUTIONIZING LOCAL MOBILITY REDIS USE CASE · 2016-03-03 · Agenda •Brief Moovit overview •Build up the Moovit requirements •Cover requirements using Redis + Redis Labs

REVOLUTIONIZING LOCAL MOBILITY

© COPYRIGHT 2016 MOOVIT

REDIS USE CASE