10

最初に Cassandra の学習を始めたのは、動的列が私の注意を引いたからです。詳細を学び始めると、複合主キーが動的列よりも優先され、Cassandra がスキーマ ベースに移行していることを知りました (スキーマはオプションであり、必須ではありませんが、推奨されます)。ただし、cql3では必須であり、cql3がcassandraの新しいアプリケーションに最適なアプローチであると読みました。

ここで、興味深い質問に直面します。特定のスライド (Mysql vs Casssandra) - http://lanyrd.com/2012/austin-mysql-meetup-january/spdrx/ (31 枚のスライドに移動) を読んでいました。ここでは、不正検出のユース ケースについて説明しています。

「FraudDetection では、リスクを計算するために、問題のアカウントでこれまでに使用されたすべての電子メール、宛先、送信元、デバイス、場所、電話番号などを知る必要があるのが一般的です。」

リレーショナルの世界で電子メール、宛先、発信元などの個々のテーブルを維持する方法と、動的な列のキーと値を使用してカサンドラの世界にいることがいかに簡単かを説明しました。(31 ~ 34 枚のスライド)。

列のキーと値が動的になり、落胆したので、どうすればこの問題を解決できるでしょうか。メールや送信先などごとに個別の列ファミリーを維持する必要がありますか? では、リレーショナルの世界とどう違うのでしょうか? スケーラビリティだけですか?スキーマのないアプローチを進めることはできますか? これは「スキーマはオプションで推奨されますが、必須ではありません」という黄金律ですか?

ありがとう

4

3 に答える 3

8

ここで混乱してすみません。結局、基本的な考え方がよくわかりませんでした。これが答えです

動的列はCassandraの中核です。それらはまだサポートされており、コアです:)倹約では直接行い、CQLでは別の方法(スキーマ方式)で行います。しかし、それでもあなたはそれをします:)-これを読んでください-http: //www.datastax.com/dev/blog/thrift-to-cql3

そして、CassandraがMysqlよりも優れていることについて-これを読んでくださいhttp://lanyrd.com/2012/austin-mysql-meetup-january/spdrx/(16-24スライド)

ありがとう :)

于 2013-03-16T19:58:03.827 に答える
2

CQLの代わりにThriftAPIを使用する場合でも、スキーマレスアプローチを使用できます。長年のCassandraユーザーとして、私はまた、先行スキーマ定義へのプッシュが疑わしいと感じています。しかし、幸いなことに、基盤となるストレージメカニズムは同じであり、私が知っているすべてのクライアントは、Thriftベースの呼び出しの使用をサポートしています。

于 2013-03-14T15:39:42.127 に答える
2

動的な列の代わりに、セット、リスト、マップなどのサポートコレクションがあります。ダイナミクスには十分ではありませんか

于 2013-03-21T05:58:52.127 に答える