Apache Cassandra에서 막힌 주요 압축 문제를 해결하는 방법은 무엇입니까?


14

현재 주요 압축 프로세스에 갇혀있는 단일 노드 Cassandra 클러스터가 있습니다. 실행 후 nodetool compact압축이 시작되고 크기가 0 바이트 인 tmp-sstable 파일이 표시됩니다. 그러나 그게 다야. 몇 시간 동안 진행되지 않습니다.

이미 Cassandra 서비스를 중지했지만 다시 시작한 후 진행없이 압축을 다시 계속했습니다. A nodetool compactionstats는 0,00 %의 진행률과 6 분의 남은 시간을 보여줍니다. 그러나 나는 이미 24 시간을 기다렸다. 그 동안 나는 아무런 차이도 보지 않고 모든 독자와 작가를 멈췄습니다.

내가 사용하는 버전은 2.1.2입니다. OpenJDK 7과 Oracle Java 7을 사용해 보았지만 아무런 차이가 없습니다.

로그에는 OOM 또는 다른 예외 또는 경고가 표시되지 않습니다.

도움이되는지 확실하지 않지만 현재 요구 사항에 맞지 않아 Cassandra에서 마이그레이션합니다. 따라서 마이그레이션 된 많은 데이터를 삭제합니다. 수백에서 수천 열까지 많은 행이 있습니다. 그러나 백만 개의 열이있는 소수의 행이 있습니다. 이제 마이그레이션 (삭제) 프로세스로 인해 많은 묘비가 있습니다.

문제를 디버깅하는 방법에 대한 도움을 환영합니다.


아이디어는, / var / log / syslog를 보았습니까? 또는 많은 파일 open / VM maxmem과 같은 로그가 어디에 기록됩니까?
Antony Gibbs

@AntonyGibbs 그런 것도 없습니다. 강력한 물리적 서버입니다. 다른 서비스는 Cassandra 옆에서 원활하게 실행됩니다.
mailq

1
프로세스가 CPU 바운드인지, I / O 바운드인지 또는 다른 것을 기다리는 것을 막았습니까?
kasperd December

1
시작된 JVM (Java Virtual Machine)의 설정은 무엇입니까? Java 인스턴스가 128M으로 제한되면 더 강력한 서버가 될 수 있습니다. 로그에 아무것도의 소리가 ... 나 메모리 제한을 생각하게한다
안토니 깁스에게

1
ulimit -aCassandra 사용자 콘솔에서 출력하는 것이 편리 할 수 ​​있습니다.
Antony Gibbs

답변:


1

나는 카산드라 전문가가 아니지만 nodetool stop 압축 을 시도 하고 압축 임계 값을 설정 했으므로 (setcompactionthreshold를 0으로 설정) 시스템에서 다시 시도하지 않습니다.


nodetool stop-COMPACTION 도움이되지 않았습니다. 직업은 여전히 ​​진행 중입니다.
Jigar Shah

@JigarShah OP와 같은 질문입니까? 새로운 답변을 얻기 위해 새로운 질문을해야 할 수도 있습니다. 아마 내 솔루션은 당신을 도와주지 않지만 OP를 도왔다
yagmoth555
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.