2016-06-09 3 views
1

나는이 staement넓은 행이 있습니까?

CREATE TABLE history (
    salt int, 
    tagName varchar, 
    day timestamp, 
    room int static, 
    component varchar static, 
    instance varchar static, 
    property varchar static, 
    offset int, 
    value float, 
    PRIMARY KEY ((salt,tagName,day), offset) 
); 

목표는 각 rowkey (소금, 태그 이름, 일) 구성 요소, 인스턴스와 속성에 대한

  • 한 컬럼에 대한 것입니다있는 테이블을 만들었습니다.
  • 각 오프셋에 대해 열 값으로 값을 갖는 하나의 열.

일은 현재 시간 기록이 아니라 현재 날짜 (예 : '2016-06-08 ')입니다.

소금은 매우 작습니다. 데이터를 매우 빠르게 샘플링하는 경우 행 크기 초과를 피할 수 있습니다.

저주 클라이언트를 사용하여 스키마를 확인하고 싶지만 더 이상 3.5 버전과 함께 설치되지 않습니다.

내 목표에 맞는 스키마입니까? cqlsh를 사용하여 실제 '물리적 인'행을 볼 수있는 방법이 있습니까?

감사합니다. 당신의 CQL의

답변

1

카산드라 - CLI 상당 여전히 넓은 줄 것, 기술적으로

RowKey (salt:tagName:day) 
column(offsetvalue:,value= ,timestamp=sometimestamp) 
column(offsetvalue:room,value=roomValue,timestamp=sometimestamp) 
column(offsetvalue:component ,value=componentValue,timestamp=sometimestamp) 
column(offsetvalue:instance,value=instanceValue,timestamp=sometimestamp) 
column(offsetvalue:property,value=propertyValue,timestamp=sometimestamp) 
column(offsetvalue:value,value=valueValue,timestamp=sometimestamp) 
+2

될 것입니다. 하루에 그룹화/반올림되었습니다. 하루 동안 기록이 빈번하다면 이것은 넓은 행으로 간주 될 수 있습니다. 저는 소금에 더 관심이 있습니다, 그것은 육체에 따라 더 큰 문제가 될 수 있습니다. –

+0

일은 현재 시간 소인을 사용하는 경우 시간 소인 값이며 시간 소인은 밀리 초 단위이므로 넓은 행을 작성하지 않습니다. op가 현재 날짜를 사용하여 그것을 생성하면 그렇습니다. 넓은 행일 수 있습니다. –

+0

@Undefined_variable 예, 오늘 날짜는 현재 시간 소인이 아닌 현재 날짜 (예 : '2016-06-08')입니다. – PeeWee2201