Lightning Hedis

Post on 11-Apr-2017

1.645 views 0 download

Transcript of Lightning Hedis

Lightning Hedis

Kewang

2

about me

3

about me

● Java / Android● Node.js / AngularJS● Hadoop / HBase● AWS / Heroku / Firebase● @Mitake

4

I'm not ......

http://goo.gl/XCYYGI

5

I'm not ......, too

6

I'm not ......, too

7

8

9

霸氣!

10

霸氣!宅氣!

11

上一次報Lightning Talk

12

13

那些年,我們一起用高橋流的時代

14

15

OSDC.tw 2007

16

17

讓我們謝謝 OSDC.tw

18

只能拍三秒鐘啊 ~~~

19

進入正題

20

21

Redis, another step on the roadIntroductionto Redis 3.0, and it’s features and improvements. What’s difference between Redis / Memcached / Aerospike ? The strong sides of Redis, and away from the weak sides.

22

Redis 應用情境

23

Scenario - Redis

Application server

Redis Database

Client

24

Scenario - Redis

Application server

Redis Database

Client (1)

25

Scenario - Redis

Application server

Redis Database

(2)

Client (1)

26

Scenario - Redis

Application server

Redis Database

(2)

Client (1)(3

)

27

Scenario - Redis

Application server

Redis Database

(4)(2)

Client (1)(3

)

28

Scenario - Redis

Application server

Redis Database

(4)(5)(2)

Client (1)(3

)

29

Scenario - Redis

Application server

Redis Database

(6) (4)(5)(2)

Client (1)(3

)

30

Scenario - Redis

Application server

Redis Database

(6) (4)(5)(2)

Client (7)(1)

(3)

31

Hedis 應用情境

32

Scenario - Hedis

Application server

Hedis Database

Client

33

Scenario - Hedis

Application server

Hedis Database

Client(1)

34

Scenario - Hedis

Application server

Hedis Database

Client

(2)

(1)

35

Scenario - Hedis

Application server

Hedis Database

Client

(2)

(3)

(1)

36

Scenario - Hedis

Application server

Hedis Database

Client

(2)

(3)

(4)

(1)

37

Scenario - Hedis

Application server

Hedis Database

Client

(2)

(3)

(4)

(5)

(1)

38

Scenario - Hedis

Application server

Hedis Database

Client

(2)

(3)

(4)

(5)

(1)

(6)

39

How to use

40

Configuration

41

Run

42

所以

43

HadoopCon 2015Hedis (aka Hyper Redis) 是改良自 Redis 的 NoSQL 資料庫,一般使用 Redis 這類 In-memory database 的情境大都在於讀取熱門資料 ( 例:熱門文章、 token 認證 ... 等 ) 。以熱門文章為例, client 要跟 server 讀取熱門文章時, server 會先去 Redis 問是否有熱門文章存在這裡,如果有的話就直接讀取並回傳給 client ;但如果沒有的話 server 就要改去 source database 讀取原資料,一方面把資料寫回 Redis ,另一方面回傳給 client 。而 Hedis 則是改良了上述的情境。一樣以熱門文章為例, client 要跟 server 讀取熱門文章時, server 會去 Hedis 問是否有熱門文章存在這裡,如果沒有的話 Hedis 就會直接去 source database 讀取原資料,並把資料寫回 Hedis 之後再回傳給 client ,減少不必要的傳輸路徑。這場 Talk 就是介紹 Hedis 如何達到上面的情境,並且教導大家如何使用現有的 Redis client 直接操作 Hedis ,讓已經無法再透過 In-memory database 加速的應用,再加速存取一個等級。

44

可想而知

45

Hedis everywhere

46

Hedis everywhere

● MySQL conf 2015

47

Hedis everywhere

● MySQL conf 2015● PostgreSQL conf 2015

48

Hedis everywhere

● MySQL conf 2015● PostgreSQL conf 2015● MongoDB conf 2015

49

Hedis everywhere

● MySQL conf 2015● PostgreSQL conf 2015● MongoDB conf 2015● Cassandra conf 2015

50

Hedis everywhere

● MySQL conf 2015● PostgreSQL conf 2015● MongoDB conf 2015● Cassandra conf 2015● Oracle conf 2015

51

Hedis everywhere

● MySQL conf 2015● PostgreSQL conf 2015● MongoDB conf 2015● Cassandra conf 2015● Oracle conf 2015● MSSQL conf 2015

52

Hedis everywhere

● MySQL conf 2015● PostgreSQL conf 2015● MongoDB conf 2015● Cassandra conf 2015● Oracle conf 2015● MSSQL conf 2015● ......

53

Hedis everywhere

● MySQL conf 2015● PostgreSQL conf 2015● MongoDB conf 2015● Cassandra conf 2015● Oracle conf 2015● MSSQL conf 2015● ......

請 蔡英文 放過 Hedis

by 超後悔投柯 P 的kewang@ 新莊

54

TODO

55

TODO

● Memory leak ( 慣 C 真的好難寫 Orz )● 支援多資料庫● 支援多版本 Redis● 支援模組 git 化● 單點故障 ( 感謝 Triton Ho 指導 )

56

最後

57

We need you

58

No, in fact

59

I need you orz

60

http://hedis.io