7

I come to you after a desperate disappointing search online for an answer to my question: Which one is faster: LDAP or Relational Database?

I need to setup a system with both authentication and authorization of users. I know LDAP has the "structure" for that kind of need, but is it really faster than, say, MySQL?

4

3 に答える 3

10

認証と承認の目的では、LDAP はパフォーマンスとシンプルさ、またはインストールとメンテナンスの最適な組み合わせを提供すると考えています。プロトコルとしての LDAP は非常に小さいため、必要なネットワーク帯域幅は比較的小さくなります。また、プロトコルが小さいため、暗号化された伝送がかなり高性能になります。

LDAP もシンプルで、サーバーは簡単に展開できます。最新のプロフェッショナル品質の LDAP サーバーは、リレーショナル データベースに対して優れたパフォーマンスを提供します。ハードウェアやクエリの種類など、他のすべての条件は同じです。

あなたのケースではどちらも使用できることに同意しますが、一般的に LDAP はシンプルでメンテナンス コストが低いため、認証と承認に適しています。パフォーマンスに関しては、リンゴとオレンジを比較することは困難ですが、私がテストしている LDAP サーバーは 1 秒あたり約 28,000 の認証を提供しますが、postgres は同じハードウェアでその数の約 42% を提供します。

最新のプロ品質の LDAP サーバーは、パスワードを安全に保管するための非常に強力で高速な暗号化ハッシュも提供します。また、クライアントがパスワードレスのために SASL の DIGEST-MD5 メカニズムを必要とする場合に可逆パスワードが必要な場合に備えて、AES のようなかなり強力な可逆ブロック暗号も提供します。認証。

于 2012-06-30T14:04:02.603 に答える
5

私はアルに同意します。一般的にどちらが速いとは言えません。それはすべて文脈上のものです。この自明の理に続いて、Al が LDAP は遅いという一般的な意見を述べているのが気に入っています。:) 余談です...

冗談はさておき、それはあなたがやろうとしていることと、ターゲットシステムが何をするために最適化されているかということになります。MySQL/MSFT SQL Server/etc. データに対するさまざまなクエリ パターンを使用して正規化されたデータを格納する (傾向がある) 汎用ストアとして構築されます。スタックの多くのレイヤーにあらゆる種類のロジックがあり、データに対してさまざまな種類のクエリと計算を実行できるようにし、よく知っている場合は QP にヒントを与えることさえできます。LDAP ディレクトリは、まったく異なる方法で最適化される傾向があります... たとえば、階層的に編成されたオブジェクトを、特定の一連のクエリ パターン (LDAP RFC で指定) で格納する場合などです。たとえば、AD は高速です...かなり高速です。オブジェクトの検索と取得、および関連する操作 (認証など) に最適化されています。

何でもそうですが、良くも悪くも使えます。

クレージーなスケール モードであるということを除けば、どちらもうまく使用できると思います。

于 2012-06-30T05:35:08.697 に答える
0

IMO これは、常に特定の実装に依存するため、実際の問題ではありません。

ここに私の経験だけを載せることができます: LDAP は遅く、SQL は速いです。私は MS SQL 2008 を使用していますが、私の場合は、繰り返されるクエリのインテリジェントなキャッシュのおかげで非常に高速です。

しかし、非常に高速である必要がありますか? LDAP ベースのソリューションは、多くの場合、ユーザー、承認、および認証を処理する際に、他のソフトウェアや LAN インフラストラクチャとの統合をより簡単かつ適切に提供できます。

于 2012-06-29T23:32:08.847 に答える