分散KVSを活用した、大規模 統合認証基盤
認証とは
認証とは何でしょうか。
通常、認証とは次のような意味を含んでいます。
- 認証(例えば、ID/パスワードによる本人確認)
- 利用権限の確認
- 利用状況の確認
- 利用に必要な権限情報の付与
これらの分野をひとまとめにして「認証」と考えています。
認証とは、利用者にとっては全てのサービスの入口であり、サービスを提供する側から見ると、インフラとアプリの接点です。
軽んじられがちな「認証」、陥りやすい認証での「性能問題」
「全てのサービスの入り口」である認証は大変重要な機能です。
サービス事業者の「顔」ともいえる存在であり、認証の操作性が悪かったり、応答が遅かったりすると、利用者にとってそのサービスのイメージは当然ながら悪くなります。
しかし、認証という単体の機能を見ると、利用者に対して価値しているわけではありません。そのため、「非機能要件」に分類され、
「とにかく安く作れ!」
「後回しでよい!」
という方針になってしまうことも少なくありません。
また、
「IDとパスワードを照合するだけなのだから、認証って簡単だよね?」
という誤解をされている方も多くいらっしゃいます。
その結果、サービス開始当初はユーザ数も少ないため問題にならなかったとしても、将来事業が成功/成長してユーザ数が増えてくると、
「最近、認証が遅い」
「膨大なリクエストに認証基盤が負荷に耐えられず、システムが停止してしまう」
という性能問題などのトラブルに発展するケースも多いのです。
拡張性が無い、商用RDBMSを使った認証基盤
さらに悪いことに、認証基盤のデータベースとして、高額な商用RDBMSを使用していることが多いため、前述のような認証基盤の性能問題が生じると、
「ただでさえ高額な商用RDMBSを、さらに台数を増やして乗り切る」
という事になってしまうのです。以下の図がそれを表しています。
つまり、このような商用RDBMSをつかった認証基盤は、「拡張性が無い」ということになります。
高負荷に耐えうる、安定した認証基盤を構築するには?~分散KVSの活用~
そこでかもめでは、商用RDBMSの代わりに高速な分散KVSであるかもめの「KFEP」を使った認証基盤を提案しています。
高速な分散KVS「KFEP」を活用した認証基盤は、以下のような構成になります。
KFEPは、かもめが開発した独自の分散KVSで、国際特許も取得しています。
KFEPは、高速な認証基盤として最大のパフォーマンスを発揮するように、シンプルなデータを大量処理するケースで最適に動作するようチューニングされています。(一般的な分散KVSは、ログファイルやWebコンテンツなど、大きなデータを扱うようにチューニングされています。)
高速な分散KVS「KFEP」は、サーバ1台でも秒間1万件以上のリクエストを処理することが可能ですが、その「スケーラビリティ(拡張性)」が大きな特長です。
当社での簡単な検証でも、低スペックなサーバを10台接続し、秒間約10万リクエストを処理できることを確認しています。
サーバのスペックや台数にとっては、これ以上の性能を出すことも可能です。
高速な分散KVS「KFEP」が実現する「統合認証基盤」と事例
高速な分散KVS「KFEP」を活用した認証基盤は、国内の大手キャリア(通信事業者)で多数ご採用頂いており、この分野では国内トップクラスの導入実績を誇ります。
多くの事例の中から1つをご紹介します。
左側が従来の認証基盤の構成です。
高額な商用RDBMSが、多数使用されていました。
膨大なコストがかかっていたことも問題ですが、もう一つ問題がありました。
サービス毎に、認証のデータベースが分かれているため、
「サービス間の連携ができない」
という問題がありました。
例えば、「ネットワーク認証をパスしたユーザだけに、メールを使わせたい」、「コーヒーを買った(POSを通った)ユーザだけに、無料WiFiを使わせたい」といったことができないのです。
高速な分散KVS「KFEP」を活用した「統合認証基盤」に移行した後の構成が右側です。
認証基盤が「統合」されていることが分かります。
高速な分散KVS「KFEP」を活用することで、ユーザのステータスを一元管理
することが可能になりました。
コストも大幅に削減することができました。
サーバ台数は、ラックが8本から0.5本へ削減できました。
以下はお客様が試算された数値ですが、
→導入コスト: 10分の1以下 (既存システム比)
→運用コスト: 30分の1以下 (既存システム比)
→拡張コスト:100分の1以下(既存システム拡張比)
という効果を実現しています。
お客様の声
前述の事例について、お客様からお言葉を頂きましたので、最後にご紹介させて頂きます。
社内で最も重要なシステムとして認識されています。現在、もっとも安定して動いているシステムです。
RDBベースのシステムより堅牢で柔軟、拡張性に富む。導入以来トラブルもほとんどありません。
とても品質の高いアプリケーションを作成いただき、大変満足しております。
当初は、他社製品を検討しておりましたが、運用機能が貧弱なことが判明し、急遽かもめさんにお願いすることになりました。それから期待どおりの出来で、さすがだなと大変感心しています。
引き続き、世のため、人のため、弊社のためにご尽力いただけますと幸いです。