Voltdb - wikipedia
Upcoming SlideShare
Loading in...5
×
 

Voltdb - wikipedia

on

  • 1,536 views

 

Statistics

Views

Total Views
1,536
Views on SlideShare
1,526
Embed Views
10

Actions

Likes
0
Downloads
2
Comments
0

3 Embeds 10

http://www.linkedin.com 8
http://www.slideshare.net 1
https://www.linkedin.com 1

Accessibility

Categories

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

Voltdb - wikipedia Voltdb - wikipedia Document Transcript

  • VoltDB - Wikipedia http://ja.wikipedia.org/wiki/VoltDB 出典: フリー百科事典『ウィキペディア(Wikipedia)』 VoltDB VoltDBはIngresやPostgreSQLに携わったMichael 開発元 VoltDB Inc. Stonebrakerにより設計されたインメモリデータベースである。 ACIDに準拠したリレーショナルデータベースシステムであり、 最新版 1.2.1.02(2010年12月17日) シェアード・ナッシング・アーキテクチャによるものである。 対応OS Linux, Mac OS X GPL バージョン3のもとでリリースされているフリーソフトウェ 種別 インメモリ型RDBMS アである。VoltDBは学術的なH-Storeプロジェクトを基礎とし ライセンス GNU General Public License v3 ている。[1] 公式サイト voltdb.com (http://voltdb.com/) VoltDBはリレーショナルデータベースであり、プリコンパイル されたJavaストアドプロシージャからのSQLアクセスをサポートする。トランザクションの単位はストアードプロ シージャであり、これはSQLとJavaが混合されたものである。VoltDBはスケーラビリティのために個々のハード ウェアにおけるスレッドでの水平パーティショニングを利用し、堅牢性のためにk-safety(同期的レプリケーショ ン)を利用している。 ストアドプロシージャをトランザクションの単位とし、必要なデータを含むパーティションにおいて実行すること により、SQL命令間のメッセージ往復を除くことができる。ストアドプロシージャは順次に実行され、ロックや ラッチなどを行わず、シングルスレッドの機構で処理される。データがメモリ上に格納され、パーティションごと に局在しているため、ストアドプロシージャはミクロ秒単位で実行が可能である。ストアドプロシージャの初期 化スキームでは、すべてのノードがストアドプロシージャを初期化し、同時に単一のシリアライズ可能なグロー バル順序があることを保証する。[2] VoltDBはスケーラビリティ、信頼性、高可用性、高スループットを必要とするアプリケーションに重点を置いて いる。これはOLTPアプリケーションと呼ばれるものを指している。これらのアプリケーションはボトルネックを回 避するため、スループットに対し、厳しい要求がある。また、許されるデータアクセスのパスや重要な通信を事 前に定義する明確に設計されたワークフローがある。 [3] 1 技術概要 1.1 パーティショニング 1.2 シリアライズ(シングルスレッド)処理 2 VoltDBの運用 3 参照 複雑なログ採取、ロック、ラッチ、バッファ管理などの処理を除くことでVoltDBは従来のシステムと比較し、50 倍の高速化を図っている。VoltDBはトランザクション内においてディスクの待ち時間や、ユーザ処理による待 ち時間がないため、OLTP SQL処理はシリアルに、ミリ秒単位で実行される。シェアードナッシング機構をコア 単位にまで拡張することにより、VoltDBは現代のコモディティサーバにおけるCPU当たりのコア数増加を活用 し、スケールすることができる。[4] 各データベースはスキーマ、ストアドプロシージャ、パーティショニング情報をコンパイルすることにより、特定1 of 2 2011/04/04 13:12
  • VoltDB - Wikipedia http://ja.wikipedia.org/wiki/VoltDB のアプリケーションに最適化される。これはVoltDBランタイムカタログと呼ばれる。このカタログは単一あるい は複数のホストマシンにロードされ、分散データベースが作成される。[5] パーティショニング データアクセスロジックを解析し、ストアドプロシージャにプリコンパイルすることにより、VoltDBはデータとそ れに関連する処理の両方をクラスタ内の個々のノードに分散することができる。これにより、クラスタの各ノー ドがデータおよびデータ処理の固有の「スライス」を保有することになる。[6] シリアライズ(シングルスレッド)処理 実行時にストアドプロシージャへの呼び出しはクラスタの該当のノードへ送られる。プロシージャが「単一サイ ト処理」のものである場合、つまり、単一パーティションのデータにおいて実行される場合、個々のノードはプロ シージャを独立して処理し、クラスタの残りのノードは他の処理を並行して処理することができる。 シリアライズ処理を利用することにより、VoltDBはロック、ラッチ、トランザクションログのオーバヘッド無く、トラ ンザクションの整合性を保証できる。また、パーティショニングにより、データベースは複数のリクエストを同時 に処理することができる。[7] VoltDBはデータアクセスをストアードプロシージャを経由して提供し、それによりクライアント・サーバ間の相 互通信時間を短縮する。ストアドプロシージャはJavaにより記述され、各プロシージャは単一のJavaクラスで ある。ストアードプロシージャの定義において、ユーザはVoltDBデータベースに対し、標準的なSQLのうち OLTPに特化したサブセットにより処理を行う。その例として、many-way join、group-by、序列化、集約、標準 的な数学処理、limitなどがある。 ユーザはアプリケーションに必要とされるスキーマやストアドプロシージャを管理し、VoltDBアプリケーションコ ンパイラを使用し、VoltDBアプリケーションアーカイブを作成する。コンパイラは自動的にパーティションを行 い、必要に応じてデータのレプリケーションを行い、パフォーマンスの最適化を行い、高可用性を保証してい る。このアーカイブは単一のあるいは複数のVoltDBクラスタへ適用可能である。 VoltDBはクラスタ内およびクラスタ間のレプリケーションにより、堅牢性を確保している。データはクラスタ内 の複数の実行サイトに同期的にコミットされ、ノード障害に対する対障害性を実現している。トランザクションは クラスタ間において非同期的にコミットされ、データセンター災害などに対する全クラスタ単位での障害に対し 対障害性を提供している。 1. ^ http://hstore.cs.brown.edu/ 2. ^ http://community.voltdb.com/node/118#comment-271 3. ^ http://community.voltdb.com/sites/default/files/UsingVoltDB.pdf 4. ^ http://www.voltdb.com/_pdf/VoltDBOverview.pdf 5. ^ http://community.voltdb.com/sites/default/files/UsingVoltDB.pdf 6. ^ http://community.voltdb.com/sites/default/files/UsingVoltDB.pdf 7. ^ http://community.voltdb.com/sites/default/files/UsingVoltDB.pdf 「http://ja.wikipedia.org/wiki/VoltDB」より作成 カテゴリ: オープンソース | データベースソフト 最終更新 2011年4月4日 (月) 04:14 (日時は個人設定で未設定ならばUTC)。 テキストはクリエイティブ・コモンズ 表示-継承ライセンスの下で利用可能です。追加の条件が適用 される場合があります。詳細は利用規約を参照してください。2 of 2 2011/04/04 13:12