問題タブ [cassandra]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
couchdb - Key-Valueストアでのアトミックトランザクション
用語の間違いはご容赦ください。特に、リレーショナルデータベースの用語を使用しています。
CouchDBやCassandraなど、他の多くのプロジェクトとともに、多数の永続的なKey-Valueストアがあります。
それらに対する典型的な議論は、それらが複数の行またはテーブルにわたるアトミックトランザクションを一般的に許可しないということです。一般的なアプローチでこの問題を解決できるのではないかと思います。
たとえば、一連の銀行口座の状況を考えてみましょう。ある銀行口座から別の銀行口座にお金を移動するにはどうすればよいですか?各銀行口座が行である場合、同じトランザクションの一部として2つの行を更新し、一方の値を減らし、もう一方の値を増やします。
明らかなアプローチの1つは、トランザクションを説明する別のテーブルを用意することです。次に、ある銀行口座から別の銀行口座にお金を移動するには、このテーブルに新しい行を挿入するだけです。2つの銀行口座のいずれの現在の残高も保存せず、代わりにトランザクションテーブルの適切な行をすべて合計することに依存します。ただし、これは非常に手間がかかることは容易に想像できます。銀行には1日に数百万のトランザクションがあり、個々の銀行口座には数千の「トランザクション」が関連付けられている場合があります。
基になるデータが最後に取得してから変更された場合、多数の(すべて?)Key-Valueストアがアクションを「ロールバック」します。おそらく、これを使用してアトミックトランザクションをシミュレートし、特定のフィールドがロックされていることを示すことができます。このアプローチには明らかな問題がいくつかあります。
他のアイデアはありますか?私のアプローチが単に間違っていて、新しい考え方に頭を悩ませていない可能性は十分にあります。
couchdb - Cassandra と CouchDB の違いは何ですか?
私は両方のプロジェクトを見ていますが、実際には違いがわかりません
Cassandra サイトから:
Cassandra は、高度にスケーラブルで、結果整合性があり、分散された、構造化されたキーと値のストアです。Cassandra は結果整合性があります。BigTable と同様に、Cassandra は、典型的なキー/値システムよりも豊富な ColumnFamily ベースのデータ モデルを提供します。
CouchDB サイトから:
Apache CouchDB は、RESTful HTTP/JSON API を介してアクセスできる、フォールト トレラントでスキーマフリーの分散型ドキュメント指向データベースです。
とはいえ、各プロジェクトの具体的な違いは、アクセス方法、記述言語などですが、例を挙げると、 SOLRまたはSphinxについて話すと、どちらも大きな違いのあるインデクサーであることがわかりますが、最終的にはインデクサーです。
ここで、Cassandra と CouchDB は非リレーショナル データベースであり、場合によっては一方が他方を置き換えることができると言えますか?
oracle - CassandraとOracle Coherenceの違いは何ですか?
Oracle Coherenceが無料であると仮定します:)
あなたはどちらを好みますか?
Oracle Coherence(Tangosol)とCassandraのアーキテクチャおよび機能の違いは何ですか?
よろしくお願いします
couchdb - RDBMS のバックグラウンド担当者に最も適した Key-Value ストアはどれですか?
すべての Key-Value ストアの中で明確な勝者はありますか? Cassandra、MongoDB、CouchDB? それらはすべて、いくつかの中心的なガイドラインに従っていますか? または、API を定義する際に独自の発言権を持っています。
特に、キー値ストアを初めて使用する RDBMS の熟練者の観点から、この質問をしています。このフィールドの理解/使用法を最もよく理解するには、どれに従う必要がありますか?
RDMS については、利用可能なすべての DB (Oracle、SQL Server など) がテーブル、インデックス、外部キーなどのすべての成果物を持っているという彼らの理論から知っています。これらの唯一の違いは、効率、セキュリティ、機能です。
これらのドキュメント中心のデータベースの普遍的な理論について知り、これらすべての DB (Mongo、Couch など) が持つ最小限の成果物を知るにはどうすればよいですか?
database-design - Cassandra データ モデルを設計する際のベスト プラクティスは何ですか?
そして、避けるべき落とし穴は何ですか?取引の中断はありますか? たとえば、Cassandra データのエクスポート/インポートが非常に難しいと聞いたことがありますが、それによって本番データと開発環境の同期が妨げられるのではないかと考えています。
ところで、Cassandra に関する優れたチュートリアルを見つけるのは非常に困難です。私が持っている唯一のチュートリアルは、まだ非常に基本的なものです。
ありがとう。
cassandra - 大量の順序付けられた時系列データをbigtable派生物に保存する
私は、bigtable、hbase、cassandraなどのこれらの新しいデータストアが実際に何であるかを正確に把握しようとしています。
私は大量の株式市場データ、毎日数百ギガバイトを追加できる数十億行の価格/見積もりデータを処理します(ただし、これらのテキストファイルは少なくとも1桁圧縮されることがよくあります)。このデータは基本的に、少数の数値、2つまたは3つの短い文字列、およびタイムスタンプ(通常はミリ秒レベル)です。行ごとに一意の識別子を選択する必要がある場合は、行全体を選択する必要があります(交換により、同じミリ秒で同じシンボルに対して複数の値が生成される可能性があるため)。
このデータをbigtable(その派生物を含む)にマッピングする最も簡単な方法は、シンボル名と日付(非常に大きな時系列を返す可能性があり、100万を超えるデータポイントは前代未聞ではありません)によるものだと思います。説明を読むと、これらのシステムでは複数のキーを使用できるようです。また、10進数はキーの候補としては適切ではないと思います。
これらのシステムの一部(たとえば、Cassandra)は、範囲クエリを実行できると主張しています。たとえば、特定の日の午前11時から午後1時30分までのMSFTのすべての値を効率的にクエリできますか?
特定の日のすべてのシンボルを検索し、価格が$ 10〜 $ 10.25のすべてのシンボルを要求したい場合はどうなりますか(値を検索し、結果としてキーを返したい場合)?
2つの時系列を取得し、一方を他方から減算し、2つの時系列とその結果を返したい場合、自分のプログラムで彼のロジックを実行する必要がありますか?
関連する論文を読むと、これらのシステムは大規模な時系列システムにはあまり適していないことがわかります。しかし、グーグルマップのようなシステムがそれらに基づいているなら、時系列もうまくいくはずだと思います。たとえば、時間をx軸、価格をy軸、シンボルを名前付きの場所と考えてください。突然、bigtableが時系列の理想的なストアになるはずです(地球全体を保存、取得できる場合) 、ズームおよび注釈付きの株式市場データは些細なものである必要があります)。
専門家が私を正しい方向に向けたり、誤解を解いたりできますか。
ありがとう
cassandra - 注文されたパーティショナーを使用した Cassandra の負荷分散?
したがって、Cassandra には自動ロード バランシングがないことがわかります。これは、順序付けされたパーティショナーを使用するときに表示されます (行のグループの値の特定の共通範囲は、比較的少数のマシンに格納され、ほとんどのクエリを処理します)。 )。
Cassandra データ モデルを設計する際のベスト プラクティスは何ですか?
私はまだ Cassandra とその仕組みに慣れていません。この問題を回避して、範囲クエリを引き続き実行するにはどうすればよいでしょうか? キーにハッシュを追加することについて、上記の回答(リンクされたURL)のアイデアは実際には得られませんでした。
nosql - Cassandra 対 Amazon SimpleDB
私は、データ サイズと SQL クエリが重くなるアプリケーションに取り組んでいます。Cassandra と Amazon SimpleDB の間で考えています。この種のシナリオでどちらがより適しているか教えてください。
Cassandra データのインデックス作成は Amazon simpleDB より優れているように見えますが、Amazon SimpleDB に比べてクエリのオプションが少なくなっています。Amazon SimpleDB の I/O レートが高いようです。
複雑なユース ケースのほとんどは、ユーザーがいくつかの興味深いアクティビティに絞り込むことができるさまざまなフィルターを使用したユーザー アクティビティです。
これら 2 つ以外に、よりクリーンで優れた解決策があると思われる場合は、提案してください。
cassandra - 既存の列の値を更新する
既存の列に新しい値が追加されるとどうなりますか? 古い値は新しい値で上書きされますか? または、古い値も保持され、取得できますか (simpleDB と同様)?
nosql - Cassandraはプライマリデータストアとして使用するのに適していますか?
今後のプロジェクトのストレージプラットフォームを評価しており、Cassandraに戻ってきます。このプロジェクトでは、データの量を失うことは容認できません。これまでリレーショナルデータベース(Microsoft SQL Server)を使用してきましたが、データが非常に多様で大きいため、保存とクエリが問題になっています。
Cassandraはプライマリデータストアとして使用するのに十分堅牢ですか?または、アクセスを高速化するために既存のデータをミラーリングするためにのみ使用する必要がありますか?