2015-01-28 3 views
1

최근 2 개의 작업 부하로 CouchDB에서 YCSB 벤치 마크를 실행했습니다. 두 워크로드 모두 500.000 개의 문서가 포함 된 데이터베이스를 사용했으며 둘 다 100,000 개의 작업을 실행했습니다. 각 작업 부하에 대한 작업 분포는 다음과 같습니다.이 YCSB CouchDB 벤치 마크를 어떻게 해석합니까?

Workload OLTP 
READS=80% 
INSERTS=10% 
UPDATES=10% 

Workload Cloud 
READS=80% 
INSERTS=20% 
UPDATES=0% 

두 벤치 마크를 모두 실행하여 다음 결과를 수집했습니다. INSERT 작업이 안정되는 이유

ycsb_results

이제 나는 더 실행되고 읽어 대기 시간에 성장 읽는 동안, 이해가 안 돼요. 그 반대편에 있어야하지 않습니까? 어느 시점에서 OLTP-READs는 INSERT를 능가합니다. 왜 그렇게?

또한 왜 두 번째 작업 (Read Cloud)의 READ가 첫 번째 (OLTP Read)보다 빠릅니까? Cloud 워크로드는 업데이트를 사용하지 않지만 어떻게 READ의 속도에 영향을 줍니까?

+0

실제로 원래 YCSB에 couchDB에 대한 클라이언트가 없기 때문에 확실한 대답을 얻으려면 업데이트를 구현 한 방법을 보여 주어야합니다. –

답변

2

CouchDB 설정 'delayed_commits'가 'true'인지 확인하십시오. 그렇다면 첫 번째 질문에 대한 대답 일 수 있습니다.

+0

delayed_commits가 현재 couchdb 설정에서 'true'로 설정되어 있습니다. 인서트가 벤치 마크 전반에 걸쳐 안정적인 이유는 무엇입니까? –

+0

그것은 단서 일뿐입니다. 더 잘 테스트 해보십시오. 두 번째 질문 - 저는 OLTP 시나리오에서 '더 빨리'읽는다고 생각합니다. 실제로 읽기 요청이 적어지기 때문입니다. 각 UPDATE는 READ가 먼저 필요하고 INSERT는 READ가 필요하지 않습니다. – ermouth