5

100 万件のレコードから始まるパフォーマンスとスケールの問題に直面したため、cassandra サービスでポータルを作成することに興味があります。確かに解決できますが、他のオプションに興味があります。

私の主な問題は、読み取りを高速化するために必要なすべてのインデックスを更新するコストです。

まず、cassandra は asp.net プログラマーにとって良い方法ですか? つまり、一見する価値のある他のプロジェクトがいくつかあるかもしれません

次に、C# から cassandra プログラミングを開始する方法に関するドキュメント サンプルを提供できますか?

4

6 に答える 6

11

100万レコードから始まるパフォーマンスとスケールの問題に直面したので。

たぶんあなたのデザインはそれほど良くなかったでしょう、NoSQLは悪いデザインの魔法の弾丸ではありません。私は数十億の行テーブルを持っており、応答の95%は1秒未満です。また、インデックスを更新するとはどういう意味ですか?統計を更新したり、インデックスを再構築したりすることを意味しますか?

于 2010-03-29T16:48:09.077 に答える
3

.NETアプリケーションにCassandraを使用している場合は、Aquilesをご覧ください。会社のニーズに基づいて開発しました。あなたがそれが役に立つと思うか、助けが必要な場合は私に知らせてください。

于 2010-12-06T14:38:40.573 に答える
3

100 万件のレコードから始まるパフォーマンスとスケールの問題に直面したためです。

ご存じのように、最新のデータベースの 100 万点というのは、自分が何をしているかを実際に知っていることを無視できる「まったく途方もなく小さい」ものではないということです。100万未満は「小さい」です。私は 8 億行のテーブルを持っており、大量の SQL を実行していますが、まったく問題ありません。

まず、cassandra は asp.net プログラマーにとって良い方法ですか?

SQL に関する基本的な本をお勧めします。ドキュメントを読み、問題にハードウェアを投げる可能性があります。同様に、完全に悪いハードウェアを使用すると、すべてのデータ管理システムが停止します。

于 2010-03-29T16:54:43.317 に答える
2

cassandra の代わりに、ravendbを見てください。おそらく、それは .Net で作成され、.Net 用に作成されたドキュメント ストアです。Linq と統合されており、(やはり) 非常に高速です。

新しいテクノロジーと同様に、特定のケースに役立つかどうかを読んで、それが実証済みのテクノロジーであるかどうかを確認します (主流のクライアントがそれを使用していますか)。

このルートに入る前に、まず現在のソリューションを最適化できないかどうかを確認してください。クエリが高速かどうか、インデックスが正しく作成されているかどうか、キャッシュを追加しても負荷を除去できないかどうかを確認してください。

大事なことを言い忘れましたが、SQL マシンにいくつかのプロセッサを追加することで問題が解決する可能性がある場合、それは通常、はるかに安価なソリューションです。

于 2010-08-31T06:56:35.363 に答える
2

Cassandra のドキュメントについて話すことはできません。ウェブ上には無数の部分的なチュートリアルがあります。
控えめに言っても、Windows のビルド プロセスは非常に難しいため、Linux を仮想マシンにセットアップすることをお勧めします。
( http://www.virtualbox.orghttp://www.ubuntu.com )

ハウツーは次のとおりです:
http://www.ridgway.co.za/archive/2009/11/06/net-developers-guide -to-getting-started-with-cassandra.aspx
このチュートリアルの執筆以降、cassandra SVN URL とコード サンプルが変更されていることに注意してください。

別の C# クライアントは次のとおりです:
http://github.com/mattvv/hectorsharp

サンプル コード:
http://www.copypastecode.com/26752/

Linux 用の Sun から最新の Java Development Kit (JDK) をダウンロードする必要があることに注意してください。Ubuntu 10.04 のリポジトリにはありません。次に、入力する必要があります

export JAVA_HOME="/path/to/jdk"

Cassandra が Java インストールを検出できるようにします。


次もご覧ください。
http://en.wikipedia.org/wiki/NoSQL

特に分類学のセクションは興味深いです。
Cassandra が問題に適したタイプの NoSQL ソリューションであることを確認してください。たとえば、問題が実際にグラフの問題である場合は、Neo4J を使用してください。

また、NoSQL ソリューションが ACID に準拠していることを確認する必要があります。
たとえば、Neo4J は唯一の ACID 準拠の NoSQL グラフ エンジンです。

編集: コンパイルなしの Windows のジャンプスタート ガイドは次のとおり
です
。 06/23/running-cassandra-on-windows-first-attempt/
http://www.yafla.com/dforbes/Getting_Started_with_Apache_Cassandra_a_NoSQL_frontrunner_on_Windows/

于 2010-08-31T06:39:48.397 に答える
1

何か新しいことをしたい場合は、noSQL を使用する代わりに、データベース クラスターを試すことを検討することをお勧めします。

2 台のマシンがそれぞれ元のデータベースの半分を同時に検索すると、既存のデータベースを完全に再設計しなくても半分の検索時間で済みます。

于 2010-08-28T09:15:58.597 に答える