Build fast, scale big with MongoDB Atlas, a hosted service for the leading NoSQL database. Try it now! Brought to you in partnership with MongoDB.
Kundera is a "Polyglot Object Mapper" with a JPA interface. Kundera currently supports Cassandra, MongoDB, HBase, Redis, OracleNoSQL, Neo4j, CouchDB, Kudu, Relational databases, and Apache Spark.
New folks should read Getting Started in 5 minutes and Working with MongoDB using Kundera.
Storing Large Files in MongoDB
For storing and retrieving files that exceed the BSON-document size limit of 16MB, MongoDB provides GridFS.
Instead of storing a file in a single document, GridFS divides a file into chunks and stores each of those chunks as a separate document. By default, GridFS limits chunk sizes to 255k. GridFS uses two collections to store files. One collection stores the file chunks, and the other stores file metadata.
GridFS with Kundera
Kundera allows the user to perform CRUD and Query operation on large files in MongoDB using GridFS. All a user needs to add is an @javax.persistence.Lob annotation in the field you want to insert using GridFS.
public class Book
private String id;
private String title;
private byte pdfFile;
//setters and getters
@Lob Field ==>
Other Fields ==>
Consider the Book Entity mentioned above.
GridFSInputFile is created using
pdfFile(@Lob field). Other fields (id, title) are saved in the
CRUD and Querying Operation
Refer to this test case.
- CRUD on simple entities (without relationships, inheritance, embeddable, etc.) is possible.
- Only select queries are allowed with
ORDER BY clauses.
- Lob field can only be
Kundera, being JPA compliant, makes it easier to work with NoSQL databases. Irrespective of the database used, the user needs to write the same JPA query. Also, if a user wants to switch databases (say from HBase to MongoDB), there is no need to rewrite the code — just change some configurations in the persistence.xml file.
Now it's easier than ever to get started with MongoDB, the database that allows startups and enterprises alike to rapidly build planet-scale apps. Introducing MongoDB Atlas, the official hosted service for the database on AWS. Try it now! Brought to you in partnership with MongoDB.