有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在声明cassandra族时指定列_元数据始终是个好主意吗?

我知道column_元数据可以用于为任何列提供配置,但通常情况下,我不需要特定于列的配置。在这种情况下,在创建族时使用column_元数据有什么好处吗

具体而言,书面形式是否有任何优势:

create column family session
    with comparator = UTF8Type
    and column_metadata =
    [{
        column_name : account,
        validation_class : UTF8Type
    }
];

而不是

create column family session
    with comparator = UTF8Type;

共 (1) 个答案

  1. # 1 楼答案

    这是关于比较器还是验证类的问题?这两个AFAIK有两个截然不同的含义

    在你上面的例子中,我阅读它的方式是

    1)您的列名将是UTF8Type字符串。 2) 您尚未定义任何默认的\u验证\u类,因此每个列的\u值都使用字节类型进行验证(即无验证) 3) 您希望列“account”具有UTF8类型的值。如果要存储没有字母的帐号,可以指定一个类似这样的长字符

    **create column family session
        with comparator = UTF8Type
        and column_metadata =
        [{
            column_name : account,
            validation_class : Long
        }
    ];**
    

    在此之后,您只能在帐户列中存储号码

    简而言之,Comparator是Column_Name的数据类型。验证类用于列的值,对于不同的列可以不同。 希望这有帮助