우분투 내에서 1 백만 개의 레코드가 포함 된 MongoDB Db 컬렉션을 만들었으며 그것에 대해 정렬 명령을 실행하려고하면 다음 오류가 발생합니다.
"$err" : "Runner error: Overflow sort stage buffered data usage of 33555002 bytes exceeds internal limit of 33554432 bytes",
"code" : 17144
누구든지 데이터에 대해이 명령 및 다른 대규모 명령을 실행할 수 있도록 내부 제한을 늘리는 방법을 설명 할 수 있습니까?
나는 당신이 할 수 있는지 의심합니다. 문제는 아마도 당신의 진술에 있습니다 : EXPLAIN은 INDEX를 사용하고 있음을 보여줍니까? 그렇지 않으면 테이블에 INDEX를 추가해야합니다.
—
Rinzwind
안녕 Rinzwind. 성능을 비교하려고하므로 noindex, primary index 및 secondary index를 사용하여 일종의 데이터를 실행하려고합니다. 인덱스없이이 스케일을 실행할 수 없다는 것을 제안하고 있습니까?
—
Jon295087
아 EXPLAIN을 사용하여 성능을 검사하는 경향이 있습니다 (EXPLAIN이 저조한 레코드 수를 제공하지 않으면 성능이 나쁩니다). 이렇게하려면 레코드를 제한해야합니다.
—
Rinzwind
MongoDB 가이 데이터 세트에서 약 25000 개의 문서를 처리한다는 것을 알았지 만 더 큰 문제가 발생했습니다 ... 데이터베이스의 한계에 불과하다고 생각하십니까? 귀하의 의견에 감사드립니다.
—
Jon295087