1 つのノード クラスターがあり、127.0.0.1 と 127.0.0.2 の 2 つのアドレスに分割しました。データを 127.0.0.1 に挿入しようとすると、Cassandra Client を使用します。データは 127.0.0.1 に正常に追加され、それも表示できますが、127.0.0.2 から表示に接続しようとすると、更新が表示されません。データーがない。前回はうまく説明できなかったと思いますが、ここでは2つのcassandraを同じノードにあるCassandra 1とCassandra 2という名前の別のフォルダにコピーしました。それに応じて Cassandra.yaml を更新します。
1)
cluster_name: 'Test Cluster'
initial_token:
data_file_directories: - /Cassandra/1/var/lib/cassandra/data
commitlog_directory: /Cassandra/1/var/lib/cassandra/commitlog
saved_caches_directory: /Cassandra/1/var/lib/cassandra/saved_caches
- seeds: "127.0.0.1,127.0.0.2"
listen_address: 127.0.0.1
rpc_address: 127.0.0.1
2)
cluster_name: 'Test Cluster'
initial_token:
data_file_directories: - /Cassandra/2/var/lib/cassandra/data
commitlog_directory: /Cassandra/2/var/lib/cassandra/commitlog
saved_caches_directory: /Cassandra/2/var/lib/cassandra/saved_caches
- seeds: "127.0.0.1,127.0.0.2"
listen_address: 127.0.0.2
rpc_address: 127.0.0.2
その他の設定はデフォルト設定で、何も変更していません。次に、以下を使用してキースペースと列ファミリーを作成します。
CREATE KEYSPACE demo with placement_strategy = 'org.apache.cassandra.locator.SimpleStrategy' and strategy_options = [{replication_factor:2}];
私はパーティショナーを指定していないので、デフォルトはランダムだと思います。
use demo;
create column family order with comparator=UTF8Type and key_validation_class=UTF8Type and default_validation_class=UTF8Type and column_metadata=[{column_name: member, validation_class: UTF8Type},{column_name: user, validation_class: UTF8Type, index_type: KEYS},{column_name: instrument, validation_class: UTF8Type},{column_name: price, validation_class: DoubleType}, {column_name: quantity, validation_class: Int32Type},{column_name:datetime, validation_class: DateType}];
127.0.0.1 に接続してデータを挿入しようとすると、127.0.0.1 と 127.0.0.2 の両方にデータを挿入する必要があると思いますが、そうではありません。
Set orders[KEY][user] = 'ABC' list orders;
何か間違っていることでも ?実行可能にするにはどうすればよいですか。
詳しい例があれば教えてください。キースペース、列ファミリー、およびデータ挿入の作成中に何か間違ったことをしていると思います。2 つのノードを挿入する例があれば、それも素晴らしいでしょう。