Introduction of
Kobe Digital Labo, Inc.
Takahiro Iwase
Twitter: @okuyamaoo
http://d.hatena.ne.jp/okuyamaoo/
Distributed Ke...
1.okuyama Overview
2.okuyama feature list
3.okuyama unique features
4.Information okuyama
Outline
・okuyama is Implemented in Java
>Started development in December 2009
Now Version 0.8.2
・Made from scratch
>Persistence me...
・Whole composition
・Client → Master Node → Data Node(×3)
Master Node
Data Node Data Node
Data Node Data Node
Client
Client...
okuyama feature list
・Feature List
Persistent Type
Redundancy
Data Maintenance
Memory, Disk, Disk + Memory
Consists of mul...
okuyama feature list
・Persistece Mechanism
・Memory
The fastest
・Disk
Persistent and big data
Key and Value Management in a...
okuyama feature list
・Network Mechanism
Accept
Queue
ConnectClient
Accept Queue
Worker
I/O Read
Queue
Write
Client
I/O Rea...
okuyama feature list
・Network Mechanism
In addition to multiplexing
Accept
Queue
ConnectClient
I/O Read
Queue
Write
Client...
okuyama unique features
・Feature 1.
Tags can be added to the data
okuyama unique features
・Feature 1.
Key Value
Hibari
MySQL
okuyama
“The world‟s most popular open source database”
“Hibari...
okuyama unique features
・Feature 1.
Key Value
Hibari
MySQL
okuyama
“The world‟s most popular open source database”
“Hibari...
okuyama unique features
・Feature 1.
Tags can be added to the data
Key Value
Hibari
MySQL
okuyama
“The world‟s most popular...
okuyama unique features
・Feature 1.
Key Value
Hibari
MySQL
okuyama
“The world‟s most popular open source database”
“Hibari...
okuyama unique features
・Feature 2.
Sent from the client JavaScript
can run in DataNode
okuyama unique features
・Feature 2.
Sent from the client JavaScript
can run in DataNode
Main
Data Node
Client Master Node
...
okuyama unique features
・Feature 2.
Sent from the client JavaScript
can run in DataNode
Client Master Node
Main
Data Node
...
okuyama unique features
・Feature 2.
Sent from the client JavaScript
can run in DataNode
Client Master Node
Main
Data Node
...
okuyama unique features
・Feature 3.
Data lock function
okuyama unique features
・Feature 3.
Data lock function
Key Value
Hibari
MySQL
okuyama
“The world‟s most popular open …..
“...
okuyama unique features
・Feature 3.
Data lock function
Key Value
Hibari
MySQL
okuyama
“The world‟s most popular open …..
“...
Information okuyama
・Information
UserGroup
http://groups.google.com/group/kvs_okuyama/
Development
http://sourceforge.jp/p...
Thank you!
Upcoming SlideShare
Loading in …5
×

okuyama_20101101_nosqlafternoon

2,830 views

Published on

0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,830
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
25
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

okuyama_20101101_nosqlafternoon

  1. 1. Introduction of Kobe Digital Labo, Inc. Takahiro Iwase Twitter: @okuyamaoo http://d.hatena.ne.jp/okuyamaoo/ Distributed Key-Value Store
  2. 2. 1.okuyama Overview 2.okuyama feature list 3.okuyama unique features 4.Information okuyama Outline
  3. 3. ・okuyama is Implemented in Java >Started development in December 2009 Now Version 0.8.2 ・Made from scratch >Persistence mechanism, Network mechanism, Replication mechanism okuyama Overview
  4. 4. ・Whole composition ・Client → Master Node → Data Node(×3) Master Node Data Node Data Node Data Node Data Node Client Client Master NodeClient okuyama Overview Data Node Data Node Data Node Data NodeData Node Data Node Data NodeData Node
  5. 5. okuyama feature list ・Feature List Persistent Type Redundancy Data Maintenance Memory, Disk, Disk + Memory Consists of multiple servers Server can be added non-disruptively All data is stored multiplexed All components can be multiplexed No okuyama signle point of failure If servers are added or server failure occur, data dynamic reconstruction are automatically executed Support Protocol Original, memcached, HTTP Availability
  6. 6. okuyama feature list ・Persistece Mechanism ・Memory The fastest ・Disk Persistent and big data Key and Value Management in a separate file ・Disk + Memory The fast and persistent Type1: After recoding file stored in memory Type2: After recoding a file, Key only stored in memory
  7. 7. okuyama feature list ・Network Mechanism Accept Queue ConnectClient Accept Queue Worker I/O Read Queue Write Client I/O Read Queue Worker Main Job Queue Client Main Job Queue Worker Respond to
  8. 8. okuyama feature list ・Network Mechanism In addition to multiplexing Accept Queue ConnectClient I/O Read Queue Write Client Main Job Queue Client Respond to Main Job Queue Main Job Queue I/O Read Queue I/O Read Queue Accept Queue Accept Queue
  9. 9. okuyama unique features ・Feature 1. Tags can be added to the data
  10. 10. okuyama unique features ・Feature 1. Key Value Hibari MySQL okuyama “The world‟s most popular open source database” “Hibari is implemented in Erlang” “okuyama is implemented in Java” Tags can be added to the data
  11. 11. okuyama unique features ・Feature 1. Key Value Hibari MySQL okuyama “The world‟s most popular open source database” “Hibari is implemented in Erlang” “okuyama is implemented in Java” Key Value Hibari MySQL okuyama “The world‟s most popular open source database” “Hibari is implemented in Erlang” “okuyama is implemented in Java” Tag NOSQL RDBMS NOSQL Tags can be added to the data
  12. 12. okuyama unique features ・Feature 1. Tags can be added to the data Key Value Hibari MySQL okuyama “The world‟s most popular open source database” “Hibari is implemented in Erlang” “okuyama is implemented in Java” Tag NOSQL RDBMS NOSQL If you specify a tag …
  13. 13. okuyama unique features ・Feature 1. Key Value Hibari MySQL okuyama “The world‟s most popular open source database” “Hibari is implemented in Erlang” “okuyama is implemented in Java” Tag NOSQL RDBMS NOSQL If you specify a tag … {“Hibari”, “okuyama”} You can get the keys at once Tags can be added to the data
  14. 14. okuyama unique features ・Feature 2. Sent from the client JavaScript can run in DataNode
  15. 15. okuyama unique features ・Feature 2. Sent from the client JavaScript can run in DataNode Main Data Node Client Master Node Request Key=“okuyama” JavaScript=”if (dataValue == „nosql‟) { …..”
  16. 16. okuyama unique features ・Feature 2. Sent from the client JavaScript can run in DataNode Client Master Node Main Data Node Key=“okuyama” JavaScript=”if (dataValue == „nosql‟) { …..” Request Key=okuyama Value=“nosql” Execute JavaScript
  17. 17. okuyama unique features ・Feature 2. Sent from the client JavaScript can run in DataNode Client Master Node Main Data Node Key=“okuyama” JavaScript=”if (dataValue == „nosql‟) { …..” Request Key=okuyama Value=“nosql” Execute JavaScript The execution result is returned
  18. 18. okuyama unique features ・Feature 3. Data lock function
  19. 19. okuyama unique features ・Feature 3. Data lock function Key Value Hibari MySQL okuyama “The world‟s most popular open ….. “Hibari is implemented in Erlang” “okuyama is implemented in Java” Client A Lock Success Lock request
  20. 20. okuyama unique features ・Feature 3. Data lock function Key Value Hibari MySQL okuyama “The world‟s most popular open ….. “Hibari is implemented in Erlang” “Change Value” Client A Error Set Request “Change Value” Client B Set Request Success
  21. 21. Information okuyama ・Information UserGroup http://groups.google.com/group/kvs_okuyama/ Development http://sourceforge.jp/projects/okuyama/ Twitter Hashtag #okuyama
  22. 22. Thank you!

×