제 테스트에서 약 500 개의 인서트, 200 개의 쿼리, 초 당 400 개의 업데이트가 발생합니다. 이 번호를 늘리기 위해 내가 뭘 조정할 수 있는지 궁금해.mongodb 테스트 속도를 높이려면 어떻게해야합니까?
다른 사람들이 테스트에서 수천 또는 수만 개의 삽입을 얻을 수 있다는 것을 읽었습니다. 이것은 내 테스트보다 훨씬 낫습니다. 나는 기본적인 것을 놓치고 있는지 궁금해? 나는 기본 구성으로 32 비트 승리하여 MongoDB의 v2.0.3을 사용하고
-
스프링 몽고와
- 자바 드라이버 (2.7.3), (내가 그나마 힘 :
그래서, 여기에 사실 수 있습니다 fsync)
- push, pull, inc, dec, set,
- 과 같은 삽입 및 원자 업데이트의 조합을 수행하고 이들 모두를 500k 번 반복합니다.
- 의도는 삽입 및 업데이트와 같은 사용자 동작을 시뮬레이트하는 것입니다.
- 특정 인덱스가 정의되어 있지는 않지만 기본적으로 ID에 항상 고유 인덱스가 있다고 생각합니까? 자바 프로세스 280메가바이트 주위 취하고 MEM 4GB의 씽크 에지
- 제가 공지 코어 i5이다 이클립스 IDE에서 실행
- 자바 앱 가
- H/W 사양 mongod 서버와 같은 컴퓨터에서 실행되고 2012-03-08
21:50:16
그리고 난 mongostat를 사용하여 모니터링하고
22:05:10
의 시간에 도달 한 후, 난 내 완료되지 않은 응용 프로그램을 종료 : 루프의 과정에서 그 숫자 안정
시작 시간입니다 .. 그리고 마지막 출력은 O입니다.
insert query update delete getmore command flushes mapped vsize res faults locked % idx miss % qr|qw ar|aw netIn netOut conn time
499 200 400 0 0 100 0 1023m 1.06g 581m 145 8.5 0 0|0 0|0 645k 97k 3 22:05:01
503 201 403 0 0 102 0 1023m 1.06g 582m 154 10.7 0 0|0 0|1 651k 98k 3 22:05:02
520 208 415 0 0 105 0 1023m 1.06g 582m 176 11.1 0 0|0 0|0 671k 101k 3 22:05:03
504 202 403 0 0 102 0 1023m 1.06g 582m 167 7.2 0 0|0 0|0 651k 98k 3 22:05:04
524 209 419 0 0 106 0 1023m 1.06g 582m 147 8.3 0 0|0 0|0 675k 102k 3 22:05:05
534 213 428 0 0 107 0 1023m 1.06g 583m 176 7.4 0 0|0 0|0 690k 103k 3 22:05:06
531 213 424 0 0 108 0 1023m 1.06g 584m 160 4.9 0 0|0 0|0 685k 104k 3 22:05:07
533 213 427 0 0 107 0 1023m 1.06g 584m 164 6.9 0 0|0 0|0 689k 103k 3 22:05:08
518 208 414 0 0 105 0 1023m 1.06g 585m 158 7.3 0 0|0 0|0 669k 101k 3 22:05:09
521 208 417 0 0 105 0 1023m 1.06g 585m 154 4.7 0 0|0 0|0 673k 101k 3 22:05:10
그리고 다음 mongostat f를 내 삽입 번호 체크 :
> db.myCollection.find().size();
90575
하고 또한이 과정
> db.myCollection.findOne().pretty();
{
"_id" : "b146189a-56a4-4035-8245-c4bd6dc2bd22",
"something1" : "my class is cool !",
"something2" : {
"value" : "this is a statement blah blah",
"name" : "myStatement"
},
"something3" : {
"size" : {
"value" : 0,
"name" : "size"
},
"value" : [
"6810cb0c-fa3e-4ca9-8a27-8432f2d1e828",
"a8276d05-a796-4c43-bc74-edc06d074099"
],
"name" : "myids"
},
"something4" : {
"myattr" : {
"value" : "something",
"name" : "name"
},
"attr" : {
"content" : {
"value" : "another another body body content content",
"name" : "content"
},
"contentId" : "b146189a-56a4-4035-8245-c4bd6dc2bd22",
"name" : "something"
},
"subsubchildchild" : {
"size" : {
"value" : 0,
"name" : "size"
},
"value" : [ ],
"name" : "subBodies"
},
"myId" : "b146189a-56a4-4035-8245-c4bd6dc2bd22",
"name" : "hiccups"
},
"something5" : {
"value" : false,
"name" : "hahaha"
},
"something6" : {
"name" : "okay this is just a test"
},
"something7" : {
"value" : false,
"name" : "remove me !"
},
"something8" : {
"size" : {
"value" : 0,
"name" : "size"
},
"value" : [ ],
"name" : "guess what"
},
"something9" : {
"size" : {
"value" : 0,
"name" : "anotherSize"
},
"value" : [ ],
"name" : "tarantula"
},
"something10" : {
"value" : 8,
"name" : "my exam score"
},
"something11" : {
"size" : {
"value" : 0,
"name" : "justAnotherSize"
},
"value" : [ ],
"name" : "myReference"
},
"something12" : {
"size" : {
"value" : 0,
"name" : "size"
},
"value" : [ ],
"name" : "myOtherReference"
},
"something13" : {
"value" : "8b78fff0-50f5-4992-9972-89f9d944fee7",
"name" : "user"
},
"something14" : {
"dateTime" : "2012-03-08 21:50:17.480000000"
},
"something15" : {
"value" : false,
"name" : "lovely"
}
}
에 등 업데이트되는 삽입 내 문서의 예이다 그리고 여기에 내 db 통계 :
> db.stats();
{
"db" : "qa",
"collections" : 7,
"objects" : 815197,
"avgObjSize" : 622.2093211824872,
"dataSize" : 507223172,
"storageSize" : 610770944,
"numExtents" : 57,
"indexes" : 5,
"indexSize" : 64197952,
"fileSize" : 1056702464,
"nsSizeMB" : 16,
"ok" : 1
}
또한 호기심에 대한 또 다른 질문입니다. 약 90k 레코드가있는 메인 컬렉션 크기와 크기가 커지지 않은 다른 비 실질적인 컬렉션으로 판단 할 때이 경우 약 1TB의 파일 크기를 갖는 것이 합리적입니까? 내 파일 크기를 줄이기 위해 할 수있는 일이 있습니까?
의견을 말하십시오.
나는 이것이 특정 질문과 같이 보이지 않기 때문에 투표를 끝내기로 결심했다. 파일 크기에 대한 질문에는 장점이 있지만 별도의 질문으로 나누는 것이 좋습니다. –
@Sean Reilly : 내 습관이 너무 많아서 내 질문에 선명도가 부족한 것을 유감스럽게 생각하지만 내 변경 사항을 확인해 주시겠습니까? 호프 퓨리 질문은 이와 비슷한 많은 다른 질문과 비교하여 현재 더 명확합니다. – bertie
다소 다소 장황한 경우 실제로는 비교적 명확한 질문이라고 생각합니다.) –