【发布时间】:2011-07-13 07:44:46
【问题描述】:
我想在 mongoDB 中存储大对象,但在持久保存大对象时出现错误(字节 [] 可能 > 5MB)。是否可以以这种方式存储数据?在 DB 上调用“insert”时,我总是遇到异常“java.lang.IllegalArgumentException: object too big: 4821537”...
片段:
private byte[] persistObject(String id, byte[] value){
BasicDBObject doc = new BasicDBObject();
doc.append("id", id);
doc.append("value", value); // may be really huge! > 5MB of size
try {
getObjectCollection().save(doc);
} catch (MongoException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return value;
}
堆栈跟踪:
java.lang.IllegalArgumentException: object too big: 4821537
at com.mongodb.DBApiLayer$MyCollection.insert(DBApiLayer.java:217)
at com.mongodb.DBApiLayer$MyCollection.insert(DBApiLayer.java:180)
at com.mongodb.DBCollection.insert(DBCollection.java:72)
at com.mongodb.DBCollection.save(DBCollection.java:537)
at com.mongodb.DBCollection.save(DBCollection.java:517)
感谢您的帮助/提示 :)
【问题讨论】:
标签: java mongodb object store nosql