2014-10-29 3 views
1

카스 산드라 컴팩 션 튜닝의 Datastax 페이지에서 다음 라인에 대해 약간 명확하지 않습니다.카산드라 매뉴얼의 주요 컴팩 션이 사소한 컴팩 션의 빈도를 변경합니다

"관리자는 모든 SSTables를 하나로 압축하는 nodetool compact를 통해 주요 압축을 시작할 수도 있습니다. 주요 압축은 누적 된 SSTables에 사용되는 디스크 공간을 늘릴 수 있지만 런타임시 디스크 공간 사용을 일시적으로 두 배로하고 I/O 및 CPU를 많이 사용하는 경우 주요 압축을 실행하면 자동 사소한 압축이 자주 트리거되지 않으므로 정기적으로 주요 압축을 수동으로 실행해야하므로 주요 압축 후에 읽기 성능이 좋지만 다음 주요 압축이 수동으로 호출 될 때까지 지속적으로 성능 저하가 발생하므로 DataStax에서는 주요 압축을 권장하지 않습니다. " (http://www.datastax.com/docs/1.0/operations/tuning)

내가 더 잘 이해하려고 노력하고 그 내 마음에 온이이 글을 읽고 후 두 질문

은 다음과 같습니다

  1. 왜 수동으로 트리거되는 주요 압축은 작은 압축 간격/주파수를 변경 것인가? 나는 뒤에있는 근본적인 이유를 잘 모르겠다.
  2. nodetool을 사용하여 주요 압축을 수동으로 실행해야하는 경우에도 가능합니까? 그렇다면 사후 압축 간격이 결과에 영향을받지 않고 기본 동작으로 재설정되도록하려면 어떻게 되돌릴 수 있습니까?

감사합니다. 당신의 두번째 질문에

+0

왜 그런 오래된 문서를보고 계십니까? Google 히트? 1.0 이후로 많은 압축 변경 및 개선 사항이 있었으며 문서는 이제 다른 내용을 말합니다. http://website-staging.dev.datastax.com/documentation/cassandra/2.1/cassandra/dml/dml_write_path_c.html?scroll=concept_ds_wt3_32w_zj__dml- 압축 – catpaws

+0

그것은 실제로 Google hit @ catpaws였습니다. 나는 당신이 그것을 지적 할 때까지 그것이 오래된 문서라는 것을 깨닫지 못했습니다. 그러나 인증이 필요하다고 위의 링크를 열 수 없습니다. 제발 나를 가리켜 줄 수있는 또 다른 참고 자료가 있습니까? – Rohit

+1

죄송합니다, Rohit. 이것은 내가 지적한 것입니다 : http://www.datastax.com/documentation/cassandra/2.1/cassandra/dml/dml_write_path_c.html?scroll=concept_ds_wt3_32w_zj__dml-compaction – catpaws

답변

1

답변 :

[CASSANDRA_HOME]/bin/nodetool enableautocompaction 

http://datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsNodetool_r.html

"그것도 가능하며 방법은 내가 작은 압축 간격이 영향을받지 않도록 다시 되돌릴 수 있습니다 그렇다면"
+0

나는 되돌리기가 불가능하다고 말하고 있다고 생각합니다. 대신, "중요한 압축을 수행하지 말고 그냥 자동 압축을 사용하십시오 (사소한 일이 될 것입니다."). –

1

주요 압축을 실행하면 모든 SSTables를 단일 SSTable로 병합합니다. 대부분의 경우, 새로 생성 된 SSTable은 Memtable (memtable_total_space_in_mb로 정의)에서 플러시 될 다음 SSTable보다 상당히 클 것입니다. 크기가 계층화 된 압축을 사용하는 경우 cassandra는 다음 번 사소한 압축을 트리거하기 전에 동일한 크기의 SSTables가 4 개 (기본값) 다시 대기합니다. 주요 압축으로 생성 된 Cassandra SStable은 다른 SSTable (memtable_total_space_in_mb)에 있지 않으므로 다음 자동 사소 압축이 지연됩니다. 그래서 카산드라가 자동 사소한 압축을 멈추지는 않지만 주파수가 변경되었습니다.

"그렇다고해도 되겠습니까? 그렇다면 사소한 압축 간격이 결과에 영향을받지 않고 기본 동작으로 다시 설정되도록 어떻게 되돌릴 수 있습니까?" - 이것을 위해 당신은 주요 압축의 결과로 생성 된 큰 sstable을 깨뜨려야 할 것입니다. 이렇게하려면 'sstablesplit'유틸리티를 사용할 수 있습니다.

https://docs.datastax.com/en/cassandra/2.1/cassandra/tools/toolsSSTableSplit.html

관련 문제