我创建了一个 Cassandra 键空间跟踪器:
CREATE KEYSPACE tracker WITH replication = {
'class': 'SimpleStrategy',
'replication_factor': '3'
};
然后我可以成功地在这个键空间中创建一个表:
cqlsh:tracker> CREATE TABLE tracker.click_windows (
... visitor_id text,
... created_at timeuuid,
... click_id text,
... ended_at timeuuid,
... expires_at timeuuid,
... processed_at timeuuid,
... window_size int,
... PRIMARY KEY (visitor_id, created_at)
... ) WITH CLUSTERING ORDER BY (created_at DESC) AND
... bloom_filter_fp_chance=0.010000 AND
... caching='KEYS_ONLY' AND
... comment='' AND
... dclocal_read_repair_chance=0.000000 AND
... gc_grace_seconds=864000 AND
... read_repair_chance=0.100000 AND
... replicate_on_write='true' AND
... populate_io_cache_on_flush='false' AND
... compaction={'class': 'SizeTieredCompactionStrategy'} AND
... compression={'sstable_compression': 'SnappyCompressor'};
但是当我去添加下一个表/列族时,我得到一个错误:
cqlsh> CREATE TABLE tracker.clicks (
... id text PRIMARY KEY,
... created_at timeuuid,
... data map
... ) WITH
... bloom_filter_fp_chance=0.010000 AND
... caching='ALL' AND
... comment='' AND
... dclocal_read_repair_chance=0.000000 AND
... gc_grace_seconds=864000 AND
... read_repair_chance=0.100000 AND
... replicate_on_write='true' AND
... populate_io_cache_on_flush='false' AND
... compaction={'class': 'SizeTieredCompactionStrategy'} AND
... compression={'sstable_compression': 'SnappyCompressor'};
Bad Request: line 5:0 mismatched input ')' expecting '<'
我发现一些迹象表明这可能是 CQL 版本问题,但是当我启动 cqlsh 时--cql3
仍然会出现这种情况。我看不出这两者有什么明显的区别,以至于一个有效而另一个无效。我还有其他不工作的,比如
cqlsh> CREATE TABLE tracker.session_hits (
... session_id timeuuid,
... hit_id timeuuid,
... click_id text,
... created_at timeuuid,
... data map,
... visitor_id text,
... window_ids list,
... PRIMARY KEY (session_id, hit_id)
... ) WITH CLUSTERING ORDER BY (hit_id DESC) AND
... bloom_filter_fp_chance=0.010000 AND
... caching='KEYS_ONLY' AND
... comment='' AND
... dclocal_read_repair_chance=0.000000 AND
... gc_grace_seconds=864000 AND
... read_repair_chance=0.100000 AND
... replicate_on_write='true' AND
... populate_io_cache_on_flush='false' AND
... compaction={'class': 'SizeTieredCompactionStrategy'} AND
... compression={'sstable_compression': 'SnappyCompressor'};
Bad Request: line 8:17 mismatched input ',' expecting '<'
建议?