sql >> Database teknologi >  >> NoSQL >> MongoDB

grænser for antallet af samlinger i databaser

Dette svar er sent, men de andre svar virker lidt...svage med hensyn til pålidelighed og faktuelle oplysninger, så jeg vil forsøge at afhjælpe det lidt.

Men af ​​en eller anden grund satte mongodb grænse 24000 for antallet af navnerum i databasen,

Det er blot standardindstillingen. Ja, der er en standardindstilling.

Der står på siden med grænser, at 24000 er grænsen ( http://docs.mongodb.org/manual/reference/limits/#Number%20of%20Namespaces ), som om der ikke er nogen måde at udvide det på, men det er der.

Der er dog en maksimal grænse for, hvor stor en navnerumsfil kan være (http://docs.mongodb.org/manual/reference/limits/#Size%20of%20Namespace%20File), som er 2GB. Det giver dig omkring 3 millioner navnerum at spille med i de fleste tilfælde, hvilket er ret imponerende, og jeg er usikker på, om mange mennesker vil nå den grænse hurtigt.

Du kan ændre standardværdien til at gå højere end 16 MB ved at bruge nssize-parameteren enten i konfigurationen (http://docs.mongodb.org/manual/reference/configuration-options/#nssize) eller ved kørsel ved at manipulere den anvendte kommando for at køre MongoDB ( http://docs.mongodb.org/manual/reference/mongod/#cmdoption-mongod--nssize ).

Der er ingen reel grund til, hvorfor MongoDB implementerer 16MB som standard for dens nsstørrelse, så vidt jeg ved, jeg har aldrig hørt om mottoet "ikke genere brugeren med hver eneste detalje", så jeg køber ikke den.

Jeg tror efter min mening, at hovedårsagen til, at MongoDB skjuler dette, er, at selvom, som dokumentationen siger:

Distinkte samlinger er meget vigtige for batchbehandling med høj kapacitet.

Brug af flere samlinger som et middel til at skalere lodret i stedet for horisontalt gennem en klynge, som MongoDB er designet til, betragtes som (temmelig ofte) dårlig praksis for websteder i stor skala; som sådan betragtes 12K-samlinger normalt som noget, som folk aldrig vil, og aldrig bør, konstatere.



  1. Brug af Redis til køer til flere Laravel-applikationer på en enkelt server

  2. $strLenBytes vs $strLenCP i MongoDB:Hvad er forskellen?

  3. $unionWith – MongoDBs ækvivalent af UNION ALL

  4. Next Generation Data Warehousing hos Santander UK