72.7. 聚合仓库

NamedCassandraAggregationRepository 通过在 Cassandra 表中关联密钥存储交换,如下所示:

CAMEL_AGGREGATION.cql

CREATE TABLE CAMEL_AGGREGATION (
  NAME varchar,        -- Repository name
  KEY varchar,         -- Correlation id
  EXCHANGE_ID varchar, -- Exchange id
  EXCHANGE blob,       -- Serialized exchange
  PRIMARY KEY (NAME, KEY)
) WITH compaction = {'class':'LeveledCompactionStrategy'}
  AND gc_grace_seconds = 86400;

另外,CassandraAggregationRepository 没有 NAME 列,并可扩展为使用其他数据模型。

选项默认值描述

table

CAMEL_AGGREGATION

表名称

pkColumns

名称,密钥

主键列

exchangeIdColumn

EXCHANGE_ID

Exchange Id 列

exchangeColumn

EXCHANGE

Exchange content 列

name

 

存储库名称,值用于 NAME

ttl

 

交换时间到实时

writeConsistencyLevel

 

用于插入/删除交换的一致性级别: ANYONETWOQUORUMLOCAL_QUORUM

readConsistencyLevel

 

用于读取/检查交换的一致性级别: ONETWOQUORUMLOCAL_QUORUM