DBS (Document-Based Storage) is an infrastructure in the Nuxeo Platform allowing storage of documents inside a document-oriented store, like NoSQL.

An implementation is available for MongoDB.

Nuxeo supports the following MongoDB version:

MongoDB 3.2

Installation

When using MongoDB 3.0 or higher we recommend that you configure the WiredTiger storage engine for better performance of write operations. Please follow this documentation to activate this storage engine.

Nuxeo stores its data in a MongoDB database under the default collection. The name of the collection is the Nuxeo repository name. If you have more than one repository configured, other collections with the names of these repositories will be used for storage.

By default MongoDB doesn't require authentication, but you can enable the client access control and create a user with the dbAdmin role.

Nuxeo Configuration

To activate MongoDB document and directories storage (as of Nuxeo FT 9.2), add the mongodb template to your existing list of templates (nuxeo.templates) in nuxeo.conf. Including the mongodb-audit template for the MongoDB Extension addon will also activate audit storage.

For older versions of Nuxeo, if you want to activate audit and directories storage, you need to install the MongoDB extension addon. This addon includes mongodb-audit and mongodb-directory templates in order to store respectively audit or directories data in MongoDB. For example:

nuxeo.templates=default,mongodb,mongodb-audit,mongodb-directory

If you are not using the MongoDB extension addon for older versions of Nuxeo, you must keep the template corresponding to your SQL database in nuxeo.templates. For instance you could have:

nuxeo.templates=postgresql,mongodb

or

nuxeo.templates=default,mongodb

The following properties are available in nuxeo.conf:

  • nuxeo.mongodb.server: The MongoDB server, either a hostname or a hostname with port or a full mongodb:// URI if you have an authentication, the pattern is: mongodb://[username:[email protected]]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]] (defaults to localhost:27017)
  • nuxeo.mongodb.dbname: The MongoDB database. (defaults to nuxeo)

Using the full mongodb:// URI syntax you can configure the connection options, like the pool size, the write concern or the read preference, for instance:

nuxeo.mongodb.server=mongodb://example1.com,example2.com,example3.com/?maxPoolSize=200

See the MongoDB Connection String URI Format for the list of options.

GridFS

It is possible to use MongoDB's GridFS mechanism to store binary files inside MongoDB instead of the default filesystem mechanism of Nuxeo. This is activated by adding gridfsbinaries to the templates, for instance:

nuxeo.templates=postgresql,mongodb,gridfsbinaries

When doing this, binaries will be stored in the default.fs GridFS bucket, which means that in native MongoDB the collections default.fs.files and default.fs.chunks will be used. See the GridFS Reference for more details about MongoDB's GridFS implementation.


Related pages in current documentation
 
2 days ago Solen Guitter Don't show excerpt 'upgrade-9.2-drop-change-token' and add comment
a year ago Florent Guillaume 39 | ongodb-quartz-cluste
a year ago Solen Guitter 38
a year ago Solen Guitter 37
2 years ago Solen Guitter 36
2 years ago Solen Guitter 35
2 years ago Benoit Delbosc 34
2 years ago Benoit Delbosc 33
2 years ago Benoit Delbosc 32
2 years ago Benoit Delbosc 31
2 years ago Solen Guitter 30 | Move warning about user creation in Confiiguration section
2 years ago Solen Guitter 29 | Update supported versions
2 years ago Benoit Delbosc 28 | 8.2 support mongo 3.2
2 years ago Gildas Lefevre 27
2 years ago Gildas Lefevre 26
2 years ago Gildas Lefevre 25
2 years ago Solen Guitter 24
2 years ago Julien Carsique 23 | NXP-18773: restored MongoDB parameters
2 years ago Julien Carsique 22 | Reverted from v. 20
2 years ago Julien Carsique 21 | NXP-18773: changed MongoDB parameters
2 years ago Florent Guillaume 20 | added gridfs
2 years ago Alain Escaffre 19
2 years ago Alain Escaffre 18
2 years ago Solen Guitter 17 | Update link, cleanup page format, update related pages
2 years ago Manon Lumeau 16
2 years ago Florent Guillaume 15
2 years ago Benoit Delbosc 14
2 years ago Benoit Delbosc 13 | Emphasis on the URI connection options
2 years ago Florent Guillaume 12
2 years ago Florent Guillaume 11 | Added nuxeo.mongodb.dbname and detailed server syntax
3 years ago Manon Lumeau 10
3 years ago Rémi Cattiau 9 | As requested by Brendan
3 years ago Florent Guillaume 8
3 years ago Florent Guillaume 7
3 years ago Solen Guitter 6
3 years ago Florent Guillaume 5
3 years ago Florent Guillaume 4
3 years ago Florent Guillaume 3
3 years ago Florent Guillaume 2
3 years ago Florent Guillaume 1
History: Created by Florent Guillaume