BlueRunner: Building an Email
    Service in the Cloud

Jun Rao
IBM Almaden Research Center

Apache Cassandra Committer


                                1
The Team


User Systems and Experience           Information Management
         Research                            Research




 Jerald       Stefan         Jan     Sandeep     Bo      Jun
Schoudt       Nusser        Pieper     Tata    Shekita   Rao




     Hernan            Julian
    Badenes            Cerruti


                                                               2
456789


1   75
599

 

8

1   77
6

1   75
599

 
89899

1   
7889



9

576
1   5





                                      3
!675
599

1
!
66

!6

876#$%
1   




8778
96'9
(
9
    1   3'

96!
78
96
    1   )1

96!
9
(
9
1   $99

65
8978
96
    1   
7789
    1   *7

89+,89
    1   
689+8689
    1   ,!
89
    1   4
8
96


899-8786#


96
1   (
9
    1   ,!8978
96.6

6895!
66!
(
9
    1   /
89

7

7
!6

98
9
96
         1   1001872
3
!86!1001
5
6!
78
967(6




                            4
!9
(
96


123245426789279
5
242675
98

*57667

9

78
9
2
98


787
6



  
(
76886 !
6
    limiting scalability
756

89

9677
8566877989
88
76897!
                mismatch for
8

89895
6                  many apps




                                                              7
,!
75:9
 
77
(
9

          Voldemort        BigTable
                                                Cassandra




                                            HBase
                        1234456


1   
96954224 2794289859364254
99
    1
/$6
88+!



    1 ;28689
/$
989
8899(
75
58

96



                                                                   9

BlueRunner: Building an Email Service in the Cloud

  • 1.
    BlueRunner: Building anEmail Service in the Cloud Jun Rao IBM Almaden Research Center Apache Cassandra Committer 1
  • 2.
    The Team User Systemsand Experience Information Management Research Research Jerald Stefan Jan Sandeep Bo Jun Schoudt Nusser Pieper Tata Shekita Rao Hernan Julian Badenes Cerruti 2
  • 3.
  • 4.
  • 5.
    6 1 75
  • 6.
    599 89899 1 7889 9 576 1 5 3
  • 7.
  • 8.
  • 9.
  • 10.
    1 8778 96'9 ( 9 1 3' 96! 78 96 1 )1 96! 9 ( 9 1 $99 65 8978 96 1 7789 1 *7 89+,89 1 689+8689 1 ,! 89 1 4 8 96 899-8786# 96 1 ( 9 1 ,!8978 96.6 6895! 66! ( 9 1 / 89 7 7 !6 98 9 96 1 1001872 3 !86!1001
  • 11.
  • 12.
  • 13.
    242675 98 *57667 9 78 9 2 98 787 6 ( 76886! 6 limiting scalability 756 89 9677 8566877989
  • 14.
    88 76897! mismatch for 8 89895 6 many apps 7
  • 15.
    ,! 75:9 77 ( 9 Voldemort BigTable Cassandra HBase 1234456 1 96954224 2794289859364254
  • 16.
    99 1
  • 17.
    /$6 88+! 1 ;28689
  • 18.
  • 19.
  • 20.
    6 6 1 $87 596/$987 6 1 $5!87 %#6! 9: 1 / 89 67 123245426789279 5
  • 21.
    242675 98 5 5 969468 *57667 9 78 9 2 98 *57667 9 9 896 . 787 6 786899868( ( 76886 ! 6 9 756 89 9677 756 89 9677 99789 8566877989 587689566877989
  • 22.
    88 76897! 86 9 ! 58 8 89895 6 587689 8989 =
  • 23.
    9 1 @7 867 6 7'%A9/977 !86 65 1 / 7 * ( 892009 1 - 89 5689 B CC3892 ! 200$5 D 1 9%! #956 E 6 7200? 1 68 5986 1 86897866
  • 24.
    ( 9#$ 1 96 856 /83,866 3 6 ?
  • 25.
    9 /6$ 7 1 *878 76897 67 3 39759356 7 287 1 85 96! 58 1 8 7599 968 97599 6 6 6 6 753 5 69 (129 6 F86 F12 6FG1C04 69 (1=9 6 F 86 !F=( 7 7F9 6FGC24 69 (219 H H 1 759 5 896759*878 1 759878 6 6 7B78( 687 6868989D 10
  • 26.
    9 /86 856 % !86 65 !784 69#$ 2 9/5, 89 2
  • 27.
    78689 (9 6 96 B9 9D /6 96 1 2 8897 896 875 2 @8 67 !83875 3 /5,3 6 /6 96 2 /6 96 3 7 3*57667 9 3;768863:6 11
  • 28.
    ; 9657986 9 1 %'9 63 I 00J 1 997 62 %986 938787863 ' 6868967 9 1 9 72 % 6 9657986 9 1 ;!889 9 9878786 1 %7795 96 + 86 69 78K 76 6 86 8999786 1 (768946945
  • 29.
  • 30.
    96357 1 86 966778 7889 77 7 1 9! 6 78986 ) ( 86 1 ,59
  • 31.
  • 32.
    27546 ( 896 6 87 66 !89 25 25 25 12
  • 33.
  • 34.
    ( - 8 1 %776 9 5 89897 9 1 5 9679! 89 5 1 759*878 1 $87:86 $ 8F577 1 5 :86 $ 8F ! ' 66 1 77 689#9 2 77 6898' 6( F 8 CC3#92+/6 +200?09101F20F47F 1000 #92+ 9 +$8( 9F 1000 1 46! 1 77 689$ 663,! :863,! #9 2 1 *577 6 6 7 89 29 66 1 /6 6 L48 13
  • 35.
    ,874 689 1 9 %#5 1 6M759B 3*3759D 1 6M759B 3*3759IJD 1 6M78 B 3*36 67593+ 3596D 1 ;88 9686! +75989 25 6899 1 :86$ 1 6M78 BL59377 689#9 23#92+/6 +5 96M6 +3 340D 66896! 8 640 #/ 89#92 1 6M759BL5935 :863 #/IJD 1 @ 6$ 1 6M759BL593$87:863 #/D 1 6$ 9 1 6M78 BL59377 689#9 23#92+ 9 ++3340D 1 6M759BL5935 :863 #/IJD 1
  • 36.
  • 37.
    599 / 7 96 -52 9% 274 * '+, ) 6354$ 24 -52 46 %58857
  • 38.
    5 14
  • 39.
    ;2 8 967 65 1 79 756 9 !9 86! 1 25 - 1 17@ 1 4%,%8(B1 9 8679 6D 1 /6 1 9 6 1=00872 9 1 240171 872 1 )40@+ 78689 1 9 78689 662 1 (7 1 N 89O95 9678 96 17006100 9 1 ;!78 96 6 7 1 959892 1 7(6 1 67 !87 17
  • 40.
  • 41.
    576B 89 9 68 89D GetMessage ListMessages 300 3-node Cassandra 900 3-node Cassandra 6-node Cassandra 750 6-node Cassandra 250 200 600 ms ms 150 450 100 300 50 150 0 0 1667 2500 3333 4167 1667 2500 3333 4167 # of concurrent clients # of concurrent clients 1 %7 65689240095 9678 96 9 86! 97 9 68 1 F)100 5 6 9 19
  • 42.
    5 1 9 ( 9 889 1 ;978978786387878639 76886 1 *7 287 6 786 1 *565 ( 1 $97 9 8 1 %76 968 ! 89 1 9 89 2+5776 2689 25 6 1 ;9789$
  • 43.
    5 976896! ( 9 1 46! 6 968777 68 99 1
  • 44.