MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tổng hợp MongoDB với $ sample rất chậm

Tôi có thể xác nhận rằng không có gì thay đổi trong vấn đề 3.6Slow $ sample vẫn tiếp diễn.

~ 40 triệu bộ sưu tập tài liệu nhỏ, không có chỉ mục, Windows Server 2012 x64.

lưu trữ:wiredTiger.engineConfig.journalCompressor:zlibwiredTiger.collectionConfig.blockCompressor:zlib

2018-04-02T02:27:27.743-0700I COMMAND [conn4] command maps.places

lệnh:tổng hợp {tổng hợp:"địa điểm", đường ống:[{$ sample:{size:10}}] ,

 cursor: {}, lsid: { id: UUID("0e846097-eecd-40bb-b47c-d77f1484dd7e") }, $readPreference: { mode: "secondaryPreferred" }, $db: "maps" } planSummary: MULTI_ITERATOR keysExamined:0 docsExamined:0 cursorExhausted:1 numYields:3967 nreturned:10 reslen:550 locks:{ Global: { acquireCount: { r: 7942 } }, Database: { acquireCount: { r: 3971 } }, Collection: { acquireCount: { r: 3971 } } }

giao thức:op_query 72609ms

Tôi đã cài đặt Mongo để thử "DBMS hiện đại và hiệu quả" này trong một dự án nghiêm túc. Tôi vô cùng thất vọng.

Giải thích kế hoạch ở đây:

db.command('aggregate', 'places', pipeline=[{"$sample":{"size":10}}], explain=True)

 {'ok': 1.0,
  'stages': [{'$cursor': {'query': {},
    'queryPlanner': {'indexFilterSet': False,
     'namespace': 'maps.places',
     'plannerVersion': 1,
     'rejectedPlans': [],
     'winningPlan': {'stage': 'MULTI_ITERATOR'}}}},
  {'$sampleFromRandomCursor': {'size': 10}}]}


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm cách nào để cập nhật một tài liệu nhúng trong một tài liệu nhúng trong mongoose?

  2. mongodb đang truy cập các tài liệu phụ

  3. Làm cách nào để tránh cảnh báo transparent_hugepage / defrag từ mongodb?

  4. mongodb không lưu tất cả dữ liệu

  5. Trợ giúp về biểu mẫu Rails + MongoMapper + EmbeddedDocument