Data in your SOA: From SQL to NoSQL and Beyond

155
1

Transcript of Data in your SOA: From SQL to NoSQL and Beyond

Page 1: Data in your SOA: From SQL to NoSQL and Beyond

1

Page 2: Data in your SOA: From SQL to NoSQL and Beyond

In  WSO2Con  2010….  

2

Page 3: Data in your SOA: From SQL to NoSQL and Beyond

3

Page 4: Data in your SOA: From SQL to NoSQL and Beyond

topic:  Unleash  the  power  of  enterprise  data    

4

Page 5: Data in your SOA: From SQL to NoSQL and Beyond

power  of  data  

5

Page 6: Data in your SOA: From SQL to NoSQL and Beyond

data  centricity  

6

Page 7: Data in your SOA: From SQL to NoSQL and Beyond

7

Page 8: Data in your SOA: From SQL to NoSQL and Beyond

why  

8

Page 9: Data in your SOA: From SQL to NoSQL and Beyond

how  

9

Page 10: Data in your SOA: From SQL to NoSQL and Beyond

10

Page 11: Data in your SOA: From SQL to NoSQL and Beyond

this  year  …    

11

Page 12: Data in your SOA: From SQL to NoSQL and Beyond

topic  :  Data  in  your  SOA  -­‐  SQL  to  NoSQL  

12

Page 13: Data in your SOA: From SQL to NoSQL and Beyond

storage  options  

13

Page 14: Data in your SOA: From SQL to NoSQL and Beyond

selection  

14

Page 15: Data in your SOA: From SQL to NoSQL and Beyond

“Data  in  your  SOA  :  SQL  to  NoSQL”  

15

Page 16: Data in your SOA: From SQL to NoSQL and Beyond

data  

16

Page 17: Data in your SOA: From SQL to NoSQL and Beyond

located  in  

17

Page 18: Data in your SOA: From SQL to NoSQL and Beyond

18

Page 19: Data in your SOA: From SQL to NoSQL and Beyond

has  

19

Page 20: Data in your SOA: From SQL to NoSQL and Beyond

attributes  

20

Page 21: Data in your SOA: From SQL to NoSQL and Beyond

<attributes>  

21

Page 22: Data in your SOA: From SQL to NoSQL and Beyond

#1.  lifecycle  

22

Page 23: Data in your SOA: From SQL to NoSQL and Beyond

#2.  owner  (provenance)  

23

Page 24: Data in your SOA: From SQL to NoSQL and Beyond

#3.  access  pattern  

24

Page 25: Data in your SOA: From SQL to NoSQL and Beyond

#4.  structure  

25

Page 26: Data in your SOA: From SQL to NoSQL and Beyond

#5.  no-­‐structure  

26

Page 27: Data in your SOA: From SQL to NoSQL and Beyond

#6.  semi-­‐structure  

27

Page 28: Data in your SOA: From SQL to NoSQL and Beyond

</attributes>  

28

Page 29: Data in your SOA: From SQL to NoSQL and Beyond

some  examples..  

29

Page 30: Data in your SOA: From SQL to NoSQL and Beyond

CNN  iReport  

30

Page 31: Data in your SOA: From SQL to NoSQL and Beyond

CNN  iReport  

Multi  media  

linked  

tagged  

News  items  

searched  

access  patterns  

31

Page 32: Data in your SOA: From SQL to NoSQL and Beyond

Facebook  

32

Page 33: Data in your SOA: From SQL to NoSQL and Beyond

Facebook  

user  accounts  

relationships  

images  

discussions  

33

Page 34: Data in your SOA: From SQL to NoSQL and Beyond

Point  of  Sales  App  

34

Page 35: Data in your SOA: From SQL to NoSQL and Beyond

Point  of  Sales  App  

item  list  

mode  of  payment  

35

Page 36: Data in your SOA: From SQL to NoSQL and Beyond

Amazon.com  

36

Page 37: Data in your SOA: From SQL to NoSQL and Beyond

Amazon.com  

Products  

Suppliers  

Orders  

History   relationships  

37

Page 38: Data in your SOA: From SQL to NoSQL and Beyond

middleware  app  

38

Page 39: Data in your SOA: From SQL to NoSQL and Beyond

middleware  app  

pass  thru  msg    

meta  data  

39

con]igurations  

Page 40: Data in your SOA: From SQL to NoSQL and Beyond

how  data  are  stored?  

40

Page 41: Data in your SOA: From SQL to NoSQL and Beyond

or,  how  would  you  be  doing  it?  

41

Page 42: Data in your SOA: From SQL to NoSQL and Beyond

<expectations>  

42

Page 43: Data in your SOA: From SQL to NoSQL and Beyond

reliable  storage  

43

Page 44: Data in your SOA: From SQL to NoSQL and Beyond

retrieval  

44

Page 45: Data in your SOA: From SQL to NoSQL and Beyond

update  

45

Page 46: Data in your SOA: From SQL to NoSQL and Beyond

non-­‐functional  expectations  

46

Page 47: Data in your SOA: From SQL to NoSQL and Beyond

</expectations>  

47

Page 48: Data in your SOA: From SQL to NoSQL and Beyond

options  

48

Page 49: Data in your SOA: From SQL to NoSQL and Beyond

49

Page 50: Data in your SOA: From SQL to NoSQL and Beyond

<options>  

50

Page 51: Data in your SOA: From SQL to NoSQL and Beyond

relational  databases  

moderate  scaling  read/write/search  

transactional  de  facto  standard  

51

Page 52: Data in your SOA: From SQL to NoSQL and Beyond

spreadsheets  

familiarity  

built-­‐in  functionality  

single  user  

52

Page 53: Data in your SOA: From SQL to NoSQL and Beyond

online  spreadsheets  

multi  user  

53

API  

Page 54: Data in your SOA: From SQL to NoSQL and Beyond

Google  Fusion  Tables  

54

Page 55: Data in your SOA: From SQL to NoSQL and Beyond

message  queues  

synchronize  processing  speed  

transactional  

temporarily  storage  

reliable  

55

Page 56: Data in your SOA: From SQL to NoSQL and Beyond

registries  

specialized  APIs  

manageability  

56

Page 57: Data in your SOA: From SQL to NoSQL and Beyond

]ile  system  

large  ]iles  

transactional  support  

57

Page 58: Data in your SOA: From SQL to NoSQL and Beyond

cache(local/distributed)  

fast  no  persistence  

memory  

key  no  search  

58

Page 59: Data in your SOA: From SQL to NoSQL and Beyond

NoSQL  column  family  

59

Page 60: Data in your SOA: From SQL to NoSQL and Beyond

why?  

60

Page 61: Data in your SOA: From SQL to NoSQL and Beyond

Internet  

61

Page 62: Data in your SOA: From SQL to NoSQL and Beyond

applications  

62

Page 63: Data in your SOA: From SQL to NoSQL and Beyond

scaling  

63

Page 64: Data in your SOA: From SQL to NoSQL and Beyond

users  

64

Page 65: Data in your SOA: From SQL to NoSQL and Beyond

Big  Data  

65

Page 66: Data in your SOA: From SQL to NoSQL and Beyond

nosql-­‐database.org  (122+)  

66

Page 67: Data in your SOA: From SQL to NoSQL and Beyond

document  databases  

67

Page 68: Data in your SOA: From SQL to NoSQL and Beyond

key/value  storages  

68

Page 69: Data in your SOA: From SQL to NoSQL and Beyond

object  databases  

69

Page 70: Data in your SOA: From SQL to NoSQL and Beyond

XML  databases  

70

Page 71: Data in your SOA: From SQL to NoSQL and Beyond

many  more...  

71

Page 72: Data in your SOA: From SQL to NoSQL and Beyond

</options>  

72

Page 73: Data in your SOA: From SQL to NoSQL and Beyond

different  data  models  

73

Page 74: Data in your SOA: From SQL to NoSQL and Beyond

how  to  select?  

74

Page 75: Data in your SOA: From SQL to NoSQL and Beyond

things  to  consider…  

75

Page 76: Data in your SOA: From SQL to NoSQL and Beyond

questions  to  ask…  

76

Page 77: Data in your SOA: From SQL to NoSQL and Beyond

<questions>  

77

Page 78: Data in your SOA: From SQL to NoSQL and Beyond

data  type  

78

Page 79: Data in your SOA: From SQL to NoSQL and Beyond

<types>  

79

Page 80: Data in your SOA: From SQL to NoSQL and Beyond

structured  

80

Page 81: Data in your SOA: From SQL to NoSQL and Beyond

[[example]]  

81

Page 82: Data in your SOA: From SQL to NoSQL and Beyond

un-­‐structured  

82

Page 83: Data in your SOA: From SQL to NoSQL and Beyond

[[example]]  

83

Page 84: Data in your SOA: From SQL to NoSQL and Beyond

semi-­‐structured  

84

Page 85: Data in your SOA: From SQL to NoSQL and Beyond

<types>  

85

Page 86: Data in your SOA: From SQL to NoSQL and Beyond

volume  &  growth  

86

Page 87: Data in your SOA: From SQL to NoSQL and Beyond

scalability  

87

Page 88: Data in your SOA: From SQL to NoSQL and Beyond

#1:  vertical  

88

Page 89: Data in your SOA: From SQL to NoSQL and Beyond

#2:  horizontal  

89

Page 90: Data in your SOA: From SQL to NoSQL and Beyond

<horizontal>  

90

Page 91: Data in your SOA: From SQL to NoSQL and Beyond

eg:  MySQL  mirroring/clustering  

91

Page 92: Data in your SOA: From SQL to NoSQL and Beyond

limitations  

92

Page 93: Data in your SOA: From SQL to NoSQL and Beyond

CAP  theorem  

93

consistency  

Partition  tolerance  

availability  

Page 94: Data in your SOA: From SQL to NoSQL and Beyond

</horizontal>  

94

Page 95: Data in your SOA: From SQL to NoSQL and Beyond

data  access  patterns  

95

Page 96: Data in your SOA: From SQL to NoSQL and Beyond

<patterns>  

96

Page 97: Data in your SOA: From SQL to NoSQL and Beyond

archival  

97

Page 98: Data in your SOA: From SQL to NoSQL and Beyond

Analytics  (OLAP)  

98

Page 99: Data in your SOA: From SQL to NoSQL and Beyond

OLTP  

99

Page 100: Data in your SOA: From SQL to NoSQL and Beyond

</patterns>  

100

Page 101: Data in your SOA: From SQL to NoSQL and Beyond

<retrieval>  

101

Page 102: Data in your SOA: From SQL to NoSQL and Beyond

#1:  sequential  

102

Page 103: Data in your SOA: From SQL to NoSQL and Beyond

#2:  key  based  

103

Page 104: Data in your SOA: From SQL to NoSQL and Beyond

supports  :  un-­‐structured,  structured  

104

Page 105: Data in your SOA: From SQL to NoSQL and Beyond

#3:  query  based  

105

Page 106: Data in your SOA: From SQL to NoSQL and Beyond

supports  :  structured  

106

Page 107: Data in your SOA: From SQL to NoSQL and Beyond

</retrieval>  

107

Page 108: Data in your SOA: From SQL to NoSQL and Beyond

life  span  

108

Page 109: Data in your SOA: From SQL to NoSQL and Beyond

transaction  support  

109

Page 110: Data in your SOA: From SQL to NoSQL and Beyond

manageability  

110

Page 111: Data in your SOA: From SQL to NoSQL and Beyond

</questions>  

111

Page 112: Data in your SOA: From SQL to NoSQL and Beyond

<some  guidelines>  

112

Page 113: Data in your SOA: From SQL to NoSQL and Beyond

transaction  intensive  

113

Page 114: Data in your SOA: From SQL to NoSQL and Beyond

small  scale,  

114

Page 115: Data in your SOA: From SQL to NoSQL and Beyond

JOINs  

115

Page 116: Data in your SOA: From SQL to NoSQL and Beyond

relational  databases.  

116

Page 117: Data in your SOA: From SQL to NoSQL and Beyond

un-­‐structured  data,  

117

Page 118: Data in your SOA: From SQL to NoSQL and Beyond

no  search  

118

Page 119: Data in your SOA: From SQL to NoSQL and Beyond

key/value  storages  

119

Page 120: Data in your SOA: From SQL to NoSQL and Beyond

or  column  family.  

120

Page 121: Data in your SOA: From SQL to NoSQL and Beyond

potential  for  SCALING  

121

Page 122: Data in your SOA: From SQL to NoSQL and Beyond

writes  &&  reads  

122

Page 123: Data in your SOA: From SQL to NoSQL and Beyond

relational  databases  

123

Page 124: Data in your SOA: From SQL to NoSQL and Beyond

not  the  best  choice.  

124

Page 125: Data in your SOA: From SQL to NoSQL and Beyond

hybrid  

125

Page 126: Data in your SOA: From SQL to NoSQL and Beyond

approaches.  

126

Page 127: Data in your SOA: From SQL to NoSQL and Beyond

build  

127

Page 128: Data in your SOA: From SQL to NoSQL and Beyond

expertise.  

128

Page 129: Data in your SOA: From SQL to NoSQL and Beyond

your  data  

129

Page 130: Data in your SOA: From SQL to NoSQL and Beyond

data  model  

130

Page 131: Data in your SOA: From SQL to NoSQL and Beyond

storage  engine.  

131

Page 132: Data in your SOA: From SQL to NoSQL and Beyond

Don’t  

132

Page 133: Data in your SOA: From SQL to NoSQL and Beyond

COP/ROP.  

133

Page 134: Data in your SOA: From SQL to NoSQL and Beyond

</some  guidelines>  

134

Page 135: Data in your SOA: From SQL to NoSQL and Beyond

WSO2  platform  

135

Page 136: Data in your SOA: From SQL to NoSQL and Beyond

on  premise  

136

Page 137: Data in your SOA: From SQL to NoSQL and Beyond

or  Java  PaaS  

137

Page 138: Data in your SOA: From SQL to NoSQL and Beyond

applications  

138

Page 139: Data in your SOA: From SQL to NoSQL and Beyond

need  

139

Page 140: Data in your SOA: From SQL to NoSQL and Beyond

data  storage  

140

Page 141: Data in your SOA: From SQL to NoSQL and Beyond

can  make  use  of  

141

Page 142: Data in your SOA: From SQL to NoSQL and Beyond

WSO2  Message  Broker  (MB)  

142

Page 143: Data in your SOA: From SQL to NoSQL and Beyond

WSO2  Relational  Storage  Service  (RSS)  

143

Page 144: Data in your SOA: From SQL to NoSQL and Beyond

WSO2  Cassandra  Storage  Service  (CSS)  

144

Page 145: Data in your SOA: From SQL to NoSQL and Beyond

WSO2  Governance  Registry  

145

Page 146: Data in your SOA: From SQL to NoSQL and Beyond

WSO2  CSG  

146

Page 147: Data in your SOA: From SQL to NoSQL and Beyond

more  on  line  up  

147

Page 148: Data in your SOA: From SQL to NoSQL and Beyond

interested?  

148

Page 149: Data in your SOA: From SQL to NoSQL and Beyond

tutorial  session  

149

Page 150: Data in your SOA: From SQL to NoSQL and Beyond

problems  !!  

150

Page 151: Data in your SOA: From SQL to NoSQL and Beyond

heterogeneous  storages  

151

Page 152: Data in your SOA: From SQL to NoSQL and Beyond

in  summary…  

152

Page 153: Data in your SOA: From SQL to NoSQL and Beyond

no  silver  bullet  

153

Page 154: Data in your SOA: From SQL to NoSQL and Beyond

analyze,  choose  right  one  

154

Page 155: Data in your SOA: From SQL to NoSQL and Beyond

thank  you.  

155