2013-03-08 3 views
0

column_metadata를 사용하여 모든 열에 대한 구성을 제공 할 수 있지만 더 자주는 아니지만 열 특정 구성이 필요하지 않습니다. 그렇다면 가족을 만들 때 column_metadata를 사용하면 어떤 이점이 있습니까?cassandra 패밀리를 선언하는 것이 항상 좋은 생각이라면 column_metadata를 지정하고 있습니까?

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

대신

create column family session 
    with comparator = UTF8Type; 

답변

0

의 비교기 또는 Validation_class에 대한 질문은 이것이다 :

특히, 서면 어떤 장점이있다? 두 AFAIK는 아주 다른 두 가지 의미를 가지고 있습니다. 위의 예에서

는 방법은 내가 당신의 COLUMN_NAMES가 UTF8Type 문자열이 될거야)는

1 읽었다. 2) default_validation_class를 정의하지 않았으므로 모든 column_value가 바이트 유형 (유효성 검사 없음)을 사용하여 유효성이 검사됩니다. 3) "account"열에 UTF8 유형 값을 지정합니다. 알파벳이없는 계좌 번호를 저장하려고한다면 다음과 같이 Long을 지정할 수 있습니다.

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

이 후, 계정 열에는 번호 만 저장할 수 있습니다.

스토리를 짧게 자르기 위해 Comparator는 Column_Name의 데이터 유형입니다. Validation_class는 column 값이며 다른 열에 대해 다를 수 있습니다. 희망이 도움이됩니다.