O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Welcome
Amir ish-Shalom, Chief Architect
What we do
• Messages & Stickers
• Audio messages & video
• Group conversations
• Full multiple device support
• HD video ...
We are adding new
functions
TO become even
more SOCIAL
‘Imagine if you could listen
in
on somebody else’s
conversation?’
Public Chats
• Chat owners
• Participants
• Followers
Public Chats -
Features• ‘Likes’
• Live updates to all online followers
• Invite a friend to follow
• Search & explore
Games
• Developed by 3rd parties
• Viber characters & style
• “Viber Connect”
• Friends list
• Messaging via Viber:
• Invi...
Viber Usage
Everybody’s vibing
• 530+ Million users worldwide
• 236+ Million Monthly Active Users
• 1+ Million new users every day
• B...
Strong growth in
2014
NOW OVER 530 million Viber unique ids
1
9
4
0
7
4
1
2
5
1
9
4
2
8
0
3
7
5
46
0
Jun/11 Dec/11 Jun/12 ...
2015-01
2014-12
2014-11
2014-10
2014-09
2014-08
2014-07
2014-06
2014-05
2014-04
2014-03
2014-02
2014-01
2013-12
2013-11
20...
a truly global platform
North
America
7.2%
Central &
south
America
9.0%
Western
europe
19.9% eastern
europe
11.7%
Middle
e...
Viber global Penetration
Viber is used by 12% of the world’s mobile device
owners
WhatsApp LINE KakaoTalk WeChat
39
%
12
%...
Top 5 global
markets
Russia
28m
India
32m
uk
14m
Brazil
18m
america
30m
*Unique IDs: Unique phone
numbers excluding deacti...
Database
Architecture
Viber DB Architecture – 1st
Generation
In-house
in-memory DB
Application ServersViber
Clients
Viber DB Architecture – 2nd
Generation
Redis Cache MongoDB Cluster
Redis Clusters
Application ServersViber
Clients
Redis
S...
2nd Generation DB Architecture
Problems• MongoDB performance
• MongoDB does not scale well with many application servers
•...
3rd Generation DB Architecture
Requirements• High performance
• Large data sets
• Scalable
• Robust
• Backed-up
• Always o...
Viber DB Architecture – 3rd
Generation
Application ServersViber
Clients
Couchbase
Backup
ClusterCouchbase
Clusters
XDCR
Migrating from 2nd to 3rd
Generation DB’s• Migrate a live system
• Zero downtime
• No data loss
• Consistent data
MongoDB ...
CouchBase Usage
CouchBase Usage
• Over 2 Million operations per second
• ~200 Couchbase servers in 8 different clusters
• Almost 1000 appl...
CouchBase Versions
• Most clusters using CB v2.51
• 2 clusters have been migrated to CB v3.02
• Currently testing CB v3.02...
How a one line mistake can
create 500,000 ops
Launch of a new product
21 node cluster with Over
800,000 OPS
Questions?
Thank You
Couchbase Live Europe 2015: Viber: NoSQL Performance at Scale
Próximos SlideShares
Carregando em…5
×

Couchbase Live Europe 2015: Viber: NoSQL Performance at Scale

5.127 visualizações

Publicada em

Learn about the messaging platform's switch from MongoDB to Couchbase.

Presented by: Amir Ish-Shalom, Viber

Publicada em: Software
  • Seja o primeiro a comentar

Couchbase Live Europe 2015: Viber: NoSQL Performance at Scale

  1. 1. Welcome Amir ish-Shalom, Chief Architect
  2. 2. What we do • Messages & Stickers • Audio messages & video • Group conversations • Full multiple device support • HD video & phone calls • Viber out
  3. 3. We are adding new functions TO become even more SOCIAL
  4. 4. ‘Imagine if you could listen in on somebody else’s conversation?’
  5. 5. Public Chats • Chat owners • Participants • Followers
  6. 6. Public Chats - Features• ‘Likes’ • Live updates to all online followers • Invite a friend to follow • Search & explore
  7. 7. Games • Developed by 3rd parties • Viber characters & style • “Viber Connect” • Friends list • Messaging via Viber: • Invites • Gifts & “bragging” • User to user communication
  8. 8. Viber Usage
  9. 9. Everybody’s vibing • 530+ Million users worldwide • 236+ Million Monthly Active Users • 1+ Million new users every day • Billions of messages sent every day • iOS, Android, desktop (and more)
  10. 10. Strong growth in 2014 NOW OVER 530 million Viber unique ids 1 9 4 0 7 4 1 2 5 1 9 4 2 8 0 3 7 5 46 0 Jun/11 Dec/11 Jun/12 Dec/12 Jun/13 Dec/13 Jun/14 Nov/14 *Unique IDs: Unique phone numbers excluding deactivations (Millions of unique users)
  11. 11. 2015-01 2014-12 2014-11 2014-10 2014-09 2014-08 2014-07 2014-06 2014-05 2014-04 2014-03 2014-02 2014-01 2013-12 2013-11 2013-10 2013-09 2013-08 2013-07 2013-06 2013-05 2013-04 2013-03 2013-02 2013-01 2012-12 2012-11 2012-10 2012-09 2012-08 2012-07 2012-06 2012-05 2012-04 2012-03 2012-02 2012-01 2011-12 2011-11 2011-10 2011-09 2011-08 2011-07 2011-06 2011-05 2011-04 2011-03 2011-02 2011-01 Strong Growth in 2014In 2014 vs. 2013 there was: • 2.5x growth in talking minutes • 3x growth in messages • 10x growth in group messages
  12. 12. a truly global platform North America 7.2% Central & south America 9.0% Western europe 19.9% eastern europe 11.7% Middle east 14.2% africa 8.0% Asia & Asia pacfic 29.9% Source : Viber Cumulative activated users, percentage share by region. Oct 31, 2014
  13. 13. Viber global Penetration Viber is used by 12% of the world’s mobile device owners WhatsApp LINE KakaoTalk WeChat 39 % 12 % 10 % 6 % 4 % Percentage of world’s mobile users (excl. China) who uses each app Source: GlobalWebIndex Q2 2014, published Sep25 2014
  14. 14. Top 5 global markets Russia 28m India 32m uk 14m Brazil 18m america 30m *Unique IDs: Unique phone numbers excluding deactivations
  15. 15. Database Architecture
  16. 16. Viber DB Architecture – 1st Generation In-house in-memory DB Application ServersViber Clients
  17. 17. Viber DB Architecture – 2nd Generation Redis Cache MongoDB Cluster Redis Clusters Application ServersViber Clients Redis Sharder Redis Sharder
  18. 18. 2nd Generation DB Architecture Problems• MongoDB performance • MongoDB does not scale well with many application servers • Redis – In-memory database with no sharding • Redis Sharder – Not manageable and robust enough
  19. 19. 3rd Generation DB Architecture Requirements• High performance • Large data sets • Scalable • Robust • Backed-up • Always on • Easy to monitor • Prefer single DB solution Solution:
  20. 20. Viber DB Architecture – 3rd Generation Application ServersViber Clients Couchbase Backup ClusterCouchbase Clusters XDCR
  21. 21. Migrating from 2nd to 3rd Generation DB’s• Migrate a live system • Zero downtime • No data loss • Consistent data MongoDB Cluster Redis Clusters Couchbase Clusters
  22. 22. CouchBase Usage
  23. 23. CouchBase Usage • Over 2 Million operations per second • ~200 Couchbase servers in 8 different clusters • Almost 1000 application servers • Cluster sizes between 3 to 51 nodes • Clusters have between 0-2 replicas (most have 1 replica)
  24. 24. CouchBase Versions • Most clusters using CB v2.51 • 2 clusters have been migrated to CB v3.02 • Currently testing CB v3.02 and planning migration
  25. 25. How a one line mistake can create 500,000 ops
  26. 26. Launch of a new product
  27. 27. 21 node cluster with Over 800,000 OPS
  28. 28. Questions?
  29. 29. Thank You

×