2010/07/09 osc kansai-kvsokuyama
Upcoming SlideShare
Loading in...5
×
 

2010/07/09 osc kansai-kvsokuyama

on

  • 2,221 views

2010/07/09 OSC@Kansai Kyoto

2010/07/09 OSC@Kansai Kyoto
Key Value Store Okuyama Seminar Document

Statistics

Views

Total Views
2,221
Views on SlideShare
2,221
Embed Views
0

Actions

Likes
0
Downloads
19
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

2010/07/09 osc kansai-kvsokuyama 2010/07/09 osc kansai-kvsokuyama Presentation Transcript

  • サーバ2 でも構築できる サーバ2台でも構築できる 構築 分散キーバリューストア 分散キーバリューストア okuyamaのご紹介と活用事例 のご紹介 紹介と 株式会社 神戸デジタル・ラボ 岩瀬 高博 Mail: iwase@kdl.co.jp 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 Key1 = Value1 登録,Key2,Value2 Key2 = Value2 登録,Key3,Value3 登録,Key4,Value4 登録,Key5,Value5 削除,Key5,Value5 [データノードのメモリ] [履歴記録ファイル]
  • データ保存方式の選択が可能 ・記録ファイルからデータを復元 データノード ①記録ファイルから順次操作を読み込み ②メモリに反映 登録,Key1,Value1 Key1 = Value1 登録,Key2,Value2 Key2 = Value2 登録,Key3,Value3 Key3 = Value3 登録,Key4,Value4 登録,Key5,Value5 削除,Key5,Value5 [データノードのメモリ] [履歴記録ファイル]
  • データ保存方式の選択が可能 ・記録ファイルからデータを復元 データノード ①記録ファイルから順次操作を読み込み ②メモリに反映 登録,Key1,Value1 Key1 = Value1 登録,Key2,Value2 Key2 = Value2 登録,Key3,Value3 Key3 = Value3 登録,Key4,Value4 Key4 = Value4 登録,Key5,Value5 削除,Key5,Value5 [データノードのメモリ] [履歴記録ファイル]
  • データ保存方式の選択が可能 ・記録ファイルからデータを復元 データノード ①記録ファイルから順次操作を読み込み ②メモリに反映 登録,Key1,Value1 Key1 = Value1 登録,Key2,Value2 Key2 = Value2 登録,Key3,Value3 Key3 = Value3 登録,Key4,Value4 Key4 = Value4 登録,Key5,Value5 Key5 = Value5 削除,Key5,Value5 [データノードのメモリ] [履歴記録ファイル]
  • データ保存方式の選択が可能 ・記録ファイルからデータを復元 データノード ①記録ファイルから順次操作を読み込み ②メモリに反映 登録,Key1,Value1 Key1 = Value1 登録,Key2,Value2 Key2 = Value2 登録,Key3,Value3 Key3 = Value3 登録,Key4,Value4 Key4 = Value4 登録,Key5,Value5 Key5 = Value5 削除,Key5,Value5 [データノードのメモリ] [履歴記録ファイル]
  • データ保存方式の選択が可能 ・記録ファイルからデータを復元 データノード ①記録ファイルから順次操作を読み込み ②メモリに反映 登録,Key1,Value1 Key1 = Value1 登録,Key2,Value2 Key2 = Value2 登録,Key3,Value3 Key3 = Value3 登録,Key4,Value4 Key4 = Value4 登録,Key5,Value5 削除,Key5,Value5 [データノードのメモリ] [履歴記録ファイル] 復元完了!!
  • データ保存方式の選択が可能 ・それぞれの特性 2.データ操作履歴のみファイルに保存 ・仕組み データへの操作を全てファイルに時系列に記録 記録ファイルからデータを復元 ・特徴 データの永続化が可能で且つ、起動後は高速に動く 保存出来るデータ量はメモリに依存
  • データ保存方式の選択が可能 ・それぞれの特性 3.データ本体をファイルに保存 ・仕組み データ永続化の仕組みは「2.」と同じ Key値のみメモリに保持し、Value値はファイルに保存
  • データ保存方式の選択が可能 ・Key値とデータの場所をメモリに保持 登録 「2.」の仕組みを利用 Key5 = Value5 データノード [データノードのメモリ] Key5 = 5行目 [データファイル] Value1 Value2 データファイルにValue値を保存 Value3 メモリにKey値とValue値のファイル内での Value4 Value5 位置を保持
  • データ保存方式の選択が可能 ・それぞれの特性 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を管理するノードを稼動 させることになります。 その場合、そのノードは冗長化されないので、ノードダウン ・データロック機構 時は、データの登録、取得は可能ですが、Lockが機能し なくなります。 また現在は1ノードでLockを管理しているので、処理能力 の妨げにもなります。 >全データノードをまたいでロック可能 Lock実施 lockData (Key=“okuyama”, Lock維持時間=10, Lockリトライ時間=5); ※別クライアントから set (Key=“okuyama”, Value=“Ver1.0.0“); >Lockを実施したクライアントがLock解除するか、 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 1000Base-T HUB マスターノード 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)
  • デモ ・デモ内容 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サイト改ざん検知サービス サイト改ざん検知サービス サイト 検知 Webサイトをクローリングしページの変更を検知 通知するサービス WWW Webページ okuyama aaaaa取得 Webクローラ Webページを取得し、ページ情報からMD5値を作り 出しokuyamaに保存。以降は取得したページのMD5 値を比べることで変更を検知。変更内容の閲覧を実 現するために、ページ情報もokuyamaに格納。 情報量が加速度的に増加するため、okuyamaで対応。
  • 最後に ・okuyamaユーザグループ作成しました URL : http://groups.google.co.jp/group/kvs_okuyama MAIL: kvs_okuyama@googlegroup.com ・神戸デジタル・ラボブースで展示して いますので是非お立ち寄りください。
  • ご清聴ありがとうございました。