Skip to content

Instantly share code, notes, and snippets.

@kimutansk
Created June 8, 2016 09:39
Show Gist options
  • Save kimutansk/d8c60b44fc14cab7aad2627b9b711bc0 to your computer and use it in GitHub Desktop.
Save kimutansk/d8c60b44fc14cab7aad2627b9b711bc0 to your computer and use it in GitHub Desktop.
Apache Geodeとは?(メモ

Apache Geodeとは?

  • スケールアウト可能なインメモリ分散データグリッド
    • 一貫性調整可能
    • パーティション分割
    • 分散Query、分散Function実行可能
    • トリガや通知機能、Continuous Query保持
    • データに対するMapReduce分散実行可能で、Sliding Window機構も保持
    • 性能のチューニングのため階層構造のデータ保持が可能
    • データセンター間同期可能
  • 性能が高い要因は?
    • コピー最適化
    • 極力競合箇所を削る設計
    • クライアントサイドも含めた階層型キャッシング
  • 自動フェールオーバー機能保持
  • 多様なデータ形式
    • オブジェクト
    • グラフ
    • ドキュメント
    • スキーマ検証機能保持
  • JavaのHashmapAPIでアクセス可能
  • 優れた管理機能
    • ダッシュボード保持
    • CLIツールで管理可能
  • 今後の展望
    • HDFS統合
    • Off Heap Storage
    • Spark統合
    • Cloud Foundry統合
    • Lucene Indexing
    • 分散トランザクション
  • トランザクションセマンティクス
    • テーブルやエントリ跨げる
    • ACID
    • 分離レベル:Repeatable Read > ThreadLocalで実現
    • 楽観的排他
    • クライアント側でbegin/commit/rollcack/suspend可能
  • 概念
    • Region
      • テーブルのようなもの、JavaのMapのインタフェースを持つ
      • Observableで、通知機能を保持
      • レプリケーションやディスクへの同期の調整可能、WALで最適化
  • 用途
    • DBのバックエンドのキャッシュレイヤ
    • CQRSのデータソース(Query側)

参照

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment