Upload
takahiro-iwase
View
1.734
Download
1
Embed Size (px)
DESCRIPTION
2010/07/09 OSC@Kansai KyotoKey Value Store Okuyama Seminar Document
Citation preview
サーバサーバサーバサーバ2222台台台台でもでもでもでも構築構築構築構築できるできるできるできる分散分散分散分散キーバリューストアキーバリューストアキーバリューストアキーバリューストア
okuyamaのごのごのごのご紹介紹介紹介紹介とととと活用事例活用事例活用事例活用事例
株式会社神戸デジタル・ラボ
岩瀬高博
Mail: [email protected]
Twitter: @okuyamaoo
http://d.hatena.ne.jp/okuyamaoo/
・株式会社神戸デジタル・ラボ
>神戸を基盤にICTソリューションを展開
・岩瀬高博
>活動
>kvs-ja (Googleユーザグループ)
>OSS分散キーバリューストア okuyama を作成
http://sourceforge.jp/projects/okuyama/
自己紹介
1.なぜ分散Key-Value Store?
2.okuyamaのご紹介
3.神戸デジタル・ラボでは
アジェンダ
少し前のアプリケーション事情
アプリケーション事情
少し前のアプリケーション事情
>利用者
アプリケーション事情
少し前のアプリケーション事情
>利用者
>限定された利用者
アプリケーション事情
少し前のアプリケーション事情
>利用者
>限定された利用者
>利用ユーザ数の予測、コンロールが可能
アプリケーション事情
少し前のアプリケーション事情
>利用者
>限定された利用者
>利用ユーザ数の予測、コンロールが可能
>情報
アプリケーション事情
少し前のアプリケーション事情
>利用者
>限定された利用者
>利用ユーザ数の予測、コンロールが可能
>情報
>限られた発生源
アプリケーション事情
少し前のアプリケーション事情
>利用者
>限定された利用者
>利用ユーザ数の予測、コンロールが可能
>情報
>限られた発生源
>情報量の予測、コントロールが可能
アプリケーション事情
システム構成
利用者利用者利用者利用者 アプリアプリアプリアプリ データベースデータベースデータベースデータベース
最近のアプリケーション事情
>利用者
>限定された利用者
アプリケーション事情
最近のアプリケーション事情
>利用者
>限定された利用者
↓
>オープンな利用
予測できない利用者数
アプリケーション事情
最近のアプリケーション事情
>情報
>限られた発生源
アプリケーション事情
最近のアプリケーション事情
>情報
>限られた発生源
↓
>参加者が自由に発信
予測できないデータ量
アプリケーション事情
システム構成
RDBMS
利用者利用者利用者利用者 アプリアプリアプリアプリ データベースデータベースデータベースデータベース
ボトルネック
システム構成
利用者利用者利用者利用者 アプリアプリアプリアプリ データベースデータベースデータベースデータベース
・スケールアップ
・更新系と検索系を分割
検索ノード
検索ノード
更新ノード
システム構成
利用者利用者利用者利用者 アプリアプリアプリアプリ データベースデータベースデータベースデータベース
・スケールアップで対応
・更新系と検索系を分割
・スケールアップの限界
・更新系はボトルネック
・管理の煩雑化
検索ノード
検索ノード
更新ノード
全てのデータを高度なデータモデルを
有するRDBMSに格納する必要はある?
利用状況に合わせて柔軟に対応できる
モデルが今後は必要
RDBMS以外の選択肢は?
分散キーバリューストア全てのデータを高度なデータモデルを
有するRDBMSに格納する必要はある?
>キーとバリューの関係でデータを蓄積
>最小単位のデータ一貫性の保障
利用状況に合わせて柔軟に対応できる
モデルが今後は必要
分散キーバリューストア全てのデータを高度なデータモデルを
有するRDBMSに格納する必要はある?
>キーとバリューの関係でデータを蓄積
>最小単位のデータ一貫性の保障
利用状況に合わせて柔軟に対応できる
モデルが今後は必要
>スケールアウトによる性能向上
>SPOFの存在しない対障害性
分散キーバリューストア
BigTable
Dynamo
Tokyo Tyrant
kumofs
okuyama
分散キーバリューストア
BigTable
Dynamo
Tokyo Tyrant
kumofs
okuyama okuyamaとは?
okuyamaとは?・Javaで実装された分散キーバリューストア
・データ保存方式の選択が可能
・スケールアウトによる性能向上
・SPOFの存在しない構成
・一括管理機能
・ユニークな機能
okuyamaとは?・Javaで実装された分散キーバリューストア
・データ保存方式の選択が可能
・スケールアウトによる性能向上
・SPOFの存在しない構成
・一括管理機能
・ユニークな機能
Javaで実装された分散KVS・100%Java
>通信部分、制御部分、データ保存部分
・OS非依存
>JavaVirtualMachineが動く環境なら動く
・WindowsXP系とCentOS5系で動作検証
>開発・検証はWindowsで負荷テストはCentOS
・関西発祥の分散KVS
>名前の由来は開発者の好きな山の名前
Javaで実装された分散KVS
・全体構成
・クライアント → マスターノード →データノード
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアント
クライアントクライアントクライアントクライアント
スレーブマスターノードクライアントクライアントクライアントクライアント
Javaで実装された分散KVS
・クライアント
クライアントクライアントクライアントクライアント
クライアントクライアントクライアントクライアント
クライアントクライアントクライアントクライアントokuyamaへの問い合わせを実現
・専用クライアントはJavaと、PHPが実装済み
Javaで実装された分散KVS
・マスターノード
メインマスターノード
スレーブマスターノード
・クライアントからのI/F
・サポートプロトコル
>オリジナル
>Memcached
>HTTP
・データノード管理
>データ入出力
データ保存場所の決定は
登録Key値 % データノード数
=サーバ番号として使用
>生存監視
起動時のデータリカバリ
・制限台数なしに冗長化可能
Javaで実装された分散KVS
・データノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
・データの保存を実現
・データ保存方式を選択可能
・memcachedプロトコルに対応
>単体でmemcachedの代わりとして
okuyamaとは?・Javaで実装された分散キーバリューストア
・データ保存方式の選択が可能
・スケールアウトによる性能向上
・一括管理機能
・SPOFの存在しない構成
・ユニークな機能
データ保存方式の選択が可能・データノードへの保存方式を選択
メインデータノード
1.全てのデータをメモリに保存
2.データ操作履歴のみファイルに保存
3.データ本体をファイルに保存
データ保存方式の選択が可能・データノードへの保存方式を選択
メインデータノード
1.全てのデータをメモリに保存
>非永続型
2.データ操作履歴のみファイルに保存
>永続型
3.データ本体をファイルに保存
>永続型
データ保存方式の選択が可能・それぞれの特性
1.全てのデータをメモリに保存
・仕組み
Key値、Value値の両方をメモリ上で管理
・特徴
最も高速に動く
ノード停止でデータも消滅
保存出来るデータ量はメモリ量に依存
データ保存方式の選択が可能・それぞれの特性
2.データ操作履歴のみファイルに保存
・仕組み
データへの操作を全てファイルに時系列に記録
データ保存方式の選択が可能・データへの操作を全てファイルに時系列に記録
Key5 = Value5登録
[履歴記録ファイル]
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
データノード
最後尾最後尾最後尾最後尾にににに追記追記追記追記
データ保存方式の選択が可能・データへの操作を全てファイルに時系列に記録
Key5 = Value5登録
[履歴記録ファイル]
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
データノード
最後尾最後尾最後尾最後尾にににに追記追記追記追記
Key5 = Value5
データノードデータノードデータノードデータノードののののメモリメモリメモリメモリにににに反映反映反映反映
[データノードのメモリ]
データ保存方式の選択が可能・データへの操作を全てファイルに時系列に記録
Key5削除
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
データノード
最後尾最後尾最後尾最後尾にににに追記追記追記追記
Key5
データノードデータノードデータノードデータノードののののメモリメモリメモリメモリにににに反映反映反映反映
[履歴記録ファイル]
[データノードのメモリ]
データ保存方式の選択が可能・それぞれの特性
1.データ操作履歴のみファイルに保存
・仕組み
データへの操作を全てファイルに時系列に記録
記録ファイルからデータを復元
データ保存方式の選択が可能・記録ファイルからデータを復元
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
データ保存方式の選択が可能・記録ファイルからデータを復元
Key1 = Value1
②メモリに反映
[データノードのメモリ]
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
データ保存方式の選択が可能・記録ファイルからデータを復元
Key1 = Value1
Key2 = Value2
②メモリに反映
[データノードのメモリ]
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
データ保存方式の選択が可能・記録ファイルからデータを復元
Key1 = Value1
Key2 = Value2
Key3 = Value3
②メモリに反映
[データノードのメモリ]
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
データ保存方式の選択が可能・記録ファイルからデータを復元
Key1 = Value1
Key2 = Value2
Key3 = Value3
Key4 = Value4
②メモリに反映
[データノードのメモリ]
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
データ保存方式の選択が可能・記録ファイルからデータを復元
Key1 = Value1
Key2 = Value2
Key3 = Value3
Key4 = Value4
Key5 = Value5
②メモリに反映
[データノードのメモリ]
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
データ保存方式の選択が可能・記録ファイルからデータを復元
Key1 = Value1
Key2 = Value2
Key3 = Value3
Key4 = Value4
Key5 = Value5
②メモリに反映
[データノードのメモリ]
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
データ保存方式の選択が可能・記録ファイルからデータを復元
Key1 = Value1
Key2 = Value2
Key3 = Value3
Key4 = Value4
②メモリに反映
[データノードのメモリ]
データノード
登録,Key1,Value1
登録,Key2,Value2
登録,Key3,Value3
登録,Key4,Value4
登録,Key5,Value5
削除,Key5,Value5
[履歴記録ファイル]
①記録ファイルから順次操作を読み込み
復元完了!!
データ保存方式の選択が可能・それぞれの特性
2.データ操作履歴のみファイルに保存
・仕組み
データへの操作を全てファイルに時系列に記録
記録ファイルからデータを復元
・特徴
データの永続化が可能で且つ、起動後は高速に動く
保存出来るデータ量はメモリに依存
データ保存方式の選択が可能・それぞれの特性
3.データ本体をファイルに保存
・仕組み
データ永続化の仕組みは「2.」と同じ
Key値のみメモリに保持し、Value値はファイルに保存
データ保存方式の選択が可能・Key値とデータの場所をメモリに保持
Key5 = Value5登録
データノード
「2.」の仕組みを利用
[データファイル]
Value1
Value2
Value3
Value4
Value5
[データノードのメモリ]
Key5 = 5行目
データファイルにValue値を保存
メモリにKey値とValue値のファイル内での
位置を保持
データ保存方式の選択が可能・それぞれの特性
3.データ本体をファイルに保存
・仕組み
データ永続化の仕組みは「2.」と同じ
Key値のみメモリに保持し、Value値はファイルに保存
・特徴
データの永続化が可能
大量のデータを保存可能
データ操作時に常にファイルアクセスが頻発するため、
レスポンスに問題が出やすい
okuyamaとは?・Javaで実装された分散キーバリューストア
・データ保存方式の選択が可能
・スケールアウトによる性能向上
・一括管理機能
・SPOFの存在しない構成
・ユニークな機能
スケールアウトによる性能向上・マスターノード、データノード共に
システム停止無しでスケールアウト可能
・スケールアウト時のデータ移行などは
全て自動で行われる
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
ノード追加
データ移行
追加
スケールアウトによる性能向上・マスターノード、データノード共に
システム停止無しでスケールアウト可能
・スケールアウト時のデータ移行などは
全て自動で行われる
ミニマムスタートで後から性能向上も容易
okuyamaとは?・Javaで実装された分散キーバリューストア
・データ保存方式の選択が可能
・スケールアウトによる性能向上
・一括管理機能
・SPOFの存在しない構成
・ユニークな機能
一括管理機能・設定変更、現状確認
・データノード状態確認
一括管理機能・設定変更、現状確認
・データノード状態確認
1ノードづつ管理するのは大変
一括管理機能・設定変更、現状確認
・データノード状態確認
1ノードづつ管理するのは大変
一括管理可能なWebコンソール
一括管理機能
okuyamaとは?・Javaで実装された分散キーバリューストア
・データ保存方式の選択が可能
・スケールアウトによる性能向上
・memcacheプロトコル、httpプロトコルに対応
・一括管理機能
・SPOFの存在しない構成
・ユニークな機能
SPOFの存在しない構成・データの流れ
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ登録
SPOFの存在しない構成・データの流れ
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ登録
②データ登録
ノード決定
SPOFの存在しない構成・データの登録の流れ
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ登録
②データ登録
ノード決定
③データを2ノードに登録
メインデータノード
スレーブデータノード
SPOFの存在しない構成・データの取得の流れ
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
メインデータノード
スレーブデータノード
SPOFの存在しない構成・データの取得の流れ
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
②データ保持
ノード割り出し メインデータノード
スレーブデータノード
SPOFの存在しない構成・データの取得の流れ
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
メインデータノード
スレーブデータノード
③データ取得
②データ保持
ノード割り出し
SPOFの存在しない構成・データノード障害発生
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
メインデータノード
スレーブデータノード
障害発生!!
②データ保持
ノード割り出し
SPOFの存在しない構成・データノード障害発生
メインマスターノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
メインデータノード
スレーブデータノード
もう一つのノードから取得
②データ保持
ノード割り出し
SPOFの存在しない構成・マスターノード障害発生
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
メインデータノード
スレーブデータノード
メインマスターノード
SPOFの存在しない構成・マスターノード障害発生
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
メインデータノード
スレーブデータノード
障害発生!!
メインマスターノード
SPOFの存在しない構成・マスターノード障害発生
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
クライアントクライアントクライアントクライアントスレーブ
マスターノード
①データ取得
メインデータノード
スレーブデータノード
別のマスターノードに再接続処理続行
メインマスターノード
SPOFの存在しない構成・自動データリカバリー機能
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインマスターノード
スレーブマスターノード
①各データノードを定期的に監視
SPOFの存在しない構成・自動データリカバリー機能
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインマスターノード
スレーブマスターノード
②障害発生を検知
メインマスターノード
スレーブマスターノード
①各データノードを定期的に監視
SPOFの存在しない構成・自動データリカバリー機能
③定期的に再起動していないか確認
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインマスターノード
スレーブマスターノード
②障害発生を検知
メインマスターノード
スレーブマスターノード
①各データノードを定期的に監視
SPOFの存在しない構成・自動データリカバリー機能
③定期的に再起動していないか確認
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインマスターノード
スレーブマスターノード
②障害発生を検知
再起動
④再起動を検知
※別筐体で起動しても問題ない
メインマスターノード
スレーブマスターノード
①各データノードを定期的に監視
SPOFの存在しない構成・自動データリカバリー機能
③定期的に再起動していないか確認
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインデータノード
スレーブデータノード
メインマスターノード
スレーブマスターノード
②障害発生を検知
⑤片側のノードからデータを復元
復元中もシステムは停止しない
メインマスターノード
スレーブマスターノード
①各データノードを定期的に監視
④再起動を検知
※別筐体で起動しても問題ない
okuyamaとは?・Javaで実装された分散キーバリューストア
・データ保存方式の選択が可能
・スケールアウトによる性能向上
・一括管理機能
・SPOFの存在しない構成
・ユニークな機能
ユニークな機能・Key-Valueの関係だけじゃない
>Tagを登録することができるset (Key=“okuyama”, Tag={“oss”, ”kvs”}, Value=“分散KVS”);
set (Key=“httpd”, Tag={“oss”, ”webserver”}, Value=“代表的WebSV”);
getTagKeys(“oss”);
>取得結果 {“okuyama”, ”httpd”}
タグを登録すると同じタグの登録されているデータのKeyを
まとめて取得できる
データデータデータデータののののグルーピンググルーピンググルーピンググルーピングがががが可能可能可能可能
ユニークな機能・データロック機構
>全データノードをまたいでロック可能Lock実施
lockData (Key=“okuyama”, Lock維持時間=10, Lockリトライ時間=5);
※別クライアントから
set (Key=“okuyama”, Value=“Ver1.0.0“);
>Lockを実施したクライアントがLock解除するか、
Lock維持時間が経過するまで待たされる
データデータデータデータ整合性整合性整合性整合性をををを意識意識意識意識したしたしたした処理処理処理処理がががが可能可能可能可能
■補足(誤解を招いてはいけないので)
ロック機能を使用すると、Lockを管理するノードを稼動させることになります。
その場合、そのノードは冗長化されないので、ノードダウン時は、データの登録、取得は可能ですが、Lockが機能しなくなります。
また現在は1ノードでLockを管理しているので、処理能力の妨げにもなります。
ユニークな機能・データノードでJavaScriptを実行
>任意のJavaScriptを取得データに実行可能取得したいデータのKey値と、同時に実行したいJavaScriptを指定
getValueScript (Key=“okuyama”, Script=“var dataValue; var retValue =
dataValue.replace(’KVS‘, ’キーバリューストア’); var execRet = '1'; ”);
>取得結果 {“分散キーバリューストア”}
実行するJavaScriptのdataValueという変数にKey値から取得された
値が代入されて実行される。クライアントは変数retValueの値が返され
返却するかどうかは、変数execRetの値で決まる。
データデータデータデータののののフィルタリングフィルタリングフィルタリングフィルタリングやややや、、、、加工加工加工加工ををををデータノードデータノードデータノードデータノードのののの資源資源資源資源をををを使使使使ってってってって実行可能実行可能実行可能実行可能
デモ
デモします
デモ・デモマシン構成
メインマスターノード
メインデータノード
スレーブデータノード
DELL
PowerEdge T110
CPU:Xeon(2.4GHz)
Memory:4GB
HDD:SATA250GB
(7200rpm)×2
NIC:1000Base-T
OS:CentOS5.4(64bit)
スレーブマスターノード
メインデータノード
スレーブデータノード
DELL
PowerEdge T110
CPU:Xeon(2.4GHz)
Memory:4GB
HDD:SATA250GB
(7200rpm)×2
NIC:1000Base-T
OS:CentOS5.4(64bit)
1000Base-T HUB
デモ・デモ内容1.データ取得(100万件に対して)1分間に何回取得処理が出来るか試してみます
Key値:”DataSaveKey1”~ “DataSaveKey1000000”までの値からのランダム値
デモ・デモ内容1.データ取得(100万件に対して)1分間に何回取得処理が出来るか試してみます
Key値:”DataSaveKey1”~ “DataSaveKey1000000”までの値からのランダム値
・memcachedをををを同同同同じじじじ環境環境環境環境でででで実行実行実行実行するとするとするとすると>取得処理回数合計取得処理回数合計取得処理回数合計取得処理回数合計 = 2,300,000/min
>1秒当秒当秒当秒当たりのたりのたりのたりの処理数処理数処理数処理数 = 38,333/sec
■補足(誤解を招いてはいけないので)
セミナーではOkyama専用クライアントでデモを行い600万/minでしたが、Memcachedクライアントでokuyamaに処理を実施した場合は、230万/minです。
デモ・デモ内容2.データ登録(100万件に対して)1分間に何回の登録処理を出来るか試してみます
Key値:”DataSaveKey1”~いけるところまでValue値: “Value012345678901234567890123456789_1”~
いけるところまで
デモ・デモ内容2.データ登録(100万件に対して)1分間に何回の登録処理を出来るか試してみます
Key値:”DataSaveKey1”~いけるところまでValue値: “Value012345678901234567890123456789_1”~
いけるところまで
・memcachedをををを同同同同じじじじ環境環境環境環境でででで実行実行実行実行するとするとするとすると>登録処理回数合計登録処理回数合計登録処理回数合計登録処理回数合計 = 4,476,000/min
>1秒当秒当秒当秒当たりのたりのたりのたりの処理数処理数処理数処理数 = 74,600/sec
デモ・デモ内容
3.冗長化構成を試してみます
データを取得している最中にシステムの
50%をダウンさせてみます
Webページaaaaa取得
神戸デジタル・ラボでは・自社サービスの基盤として活用
Webサイトサイトサイトサイト改改改改ざんざんざんざん検知検知検知検知サービスサービスサービスサービス
Webサイトをクローリングしページの変更を検知
通知するサービス
Webクローラ
W WW
okuyama
Webページを取得し、ページ情報からMD5値を作り出しokuyamaに保存。以降は取得したページのMD5
値を比べることで変更を検知。変更内容の閲覧を実現するために、ページ情報もokuyamaに格納。
情報量が加速度的に増加するため、okuyamaで対応。
最後に・okuyamaユーザグループ作成しました
URL : http://groups.google.co.jp/group/kvs_okuyama
MAIL: [email protected]
・神戸デジタル・ラボブースで展示して
いますので是非お立ち寄りください。
ご清聴ありがとうございました。