astyanax如何使用复合列创建列家族

时间:2012-07-31 22:56:21

标签: astyanax

我需要在这些类型的每一列中创建3个具有复合名称的列族

  1. Col Family 1需要UTF8和byte []
  2. Col Family 2需要BigDecimal和byte []
  3. Col Family 3需要BigInteger和byte []
  4. 如何在astyanax中创建列族。我看到一个setComparatorType(String),但我希望比较器是UTF8,BigDecimal或BigInteger(即复合键的第一部分)......我不关心byte []的顺序是什么,所以可以随意......不要太在意。

    另外,我是否需要在astyanax的ColumnFamilyDefinition对象上设置其他任何内容来创建此列族?

    另外,我看到了使用自创注释复合类型放置值的示例。我假设我只是调用colMutation.putColumn(compositeTypeInst,value,theTime)将它放入cassandra?

    感谢, 迪安

1 个答案:

答案 0 :(得分:1)

啊,实际上确实有效,复杂的例外是持续保存复合。使用

创建列系列效果很好
    ColumnFamilyDefinition def = cluster.makeColumnFamilyDefinition()
            .setName(colFamily)
            .setKeyspace(keyspace.getKeyspaceName())
                        .setComparatorType("CompositeType(UTF8Type, BytesType)");