로그 수집을 위해 카산드라를 사용하고 있습니다. 시간당 약 150,000 - 250,000 개의 새 레코드. 열 패밀리에는 'host', 'errorlevel', 'message'등의 여러 열과 특수 색인 열 'indexTimestamp'가 있습니다. 이 열은 시간을 반올림 한 시간을 포함합니다.카산드라 느린 get_indexed_slices 속도
그래서, 우리는 몇 가지 기록을 얻고 싶은 경우에, 우리는 (EQ 연산자) indexTimestamp에 의해 처음 IndexExpression와 get_indexed_slices() 다음 다른 IndexExpressions를 사용 - 등 호스트, 오류 수준에 의해
점점 기록 단지 indexTimestamp에 의해 모든 것이 잘 작동합니다. 그러나 indexTimestamp로 레코드를 가져 오는 경우 host - cassandra는 15-20 초 이상 작동하고 시간 초과 예외를 발생시킵니다.
인덱스 된 열과 인덱스되지 않은 열로 레코드를 가져올 때 Cassandra는 먼저 모든 레코드를 인덱싱 된 열로 가져오고 인덱싱되지 않은 열로 필터링합니다.
카산드라가 왜 그렇게 느린가요? indexTimestamp에는 250,000 개가 넘는 레코드가 없습니다. 10 초 후에 필터 할 수 있습니까?
우리의 Cassandra 클러스터는 CPU 4 개와 메모리 4 개가있는 하나의 컴퓨터 (Windows 7)에서 실행됩니다.