MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como obter o tamanho em bytes de documentos bson


Se você precisa saber o tamanho que o objeto terá antes de estar na coleção, usei este código onde o é o objeto a ser testado:
    BsonDocument bsonDocument = BsonDocumentWrapper.asBsonDocument(o, getMongoCollection().getCodecRegistry());
    RawBsonDocument rawBsonDocument = RawBsonDocument.parse(bsonDocument.toJson() );

    int bsonSize = rawBsonDocument.getByteBuffer().remaining();

Isso é particularmente útil se você deseja evitar objetos que podem exceder o tamanho máximo de 16 Mb: https://docs.mongodb.com/manual/reference/limits/