2. okuyamaとは

2. okuyamaとは

ここまで、NOSQLの背景と特徴、およびNOSQL内での種別について、駆け足で説明してきました。

次回以降はokuyamaについて詳しく解説しますが、まずはokuyamaについて、今まで説明した各項目のどこに当てはまるのかを事前に整理しておきます。

okuyamaは、複数のサーバーを利用して分散環境で稼働することを前提に実装された、分散Key-Value型のNOSQL(分散Key-Value Storeと呼ばれることが多いです)です。

CAP定理で言うと、AP(可用性と分割耐性)を満たすように設計されています。しかし、Key-Value型の特徴にはない、複数のデータをタグで管理する概念があります。加えて、CAP定理における一貫性(C)を重視する設定も可能です。

図6: okuyamaのロゴ

図3: okuyamaのロゴ

(1)okuyamaを開発した経緯

筆者がokuyamaを開発し始めたのは、2009年の12月頃です。当時、HBaseなどが話題となっており、筆者に技術検証を行っていました。

ストレージ分野が好きだったこともあり、JavaのHSQLDBなどのソース・コードを読み、自身でもRDBMSを開発したりしていました。自作のRDBMSの開発が一通り終わったころ、HBaseの検証をしていたこともあり、勉強も兼ねてokuyamaの開発を始めました。ファースト・リリースは2010年の1月に行いました。

okuyamaを開発する際、特に力を入れた部分が3つあります。

1. サーバー障害時のフェール・オーバーと復旧時の自動リカバリ
動的にサーバーを追加する機能と、追加中にデータを自動的に最適化する機能と、追加中にアクセスを許容する機能です。この部分は、CAP定理のAPを満たすためのアプローチです。
2. 単一サーバーあたりの処理能力向上
分散Key-Value Storeは、その特性上、サーバー台数を増やすことによって処理能力を向上させることができます。しかし、1台あたりの性能が高ければ、サーバー増設数を少なく済ませられます。サーバー台数が増えれば故障率も上がるので、少ない台数で効率よく処理できるのであれば、それに越したことはありません。ですので、この部分にも力をいれました。
3. ストレージ機能
最後は、データを保存するストレージ部分の機能です。いくつかの保存方式を用意し、ユース・ケース単位で最適な選択ができるようにしました。

次回は、okuyamaの全体概要に加え、上記3点を中心にokuyamaの機能を解説します。

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30