Snapshots and dumps
This article explains Meilisearch's two backup methods: snapshots and dumps.
Snapshots
A snapshot is an exact copy of the Meilisearch database, located by default in ./data.ms
. Use snapshots for quick and efficient backups of your instance.
The documents in a snapshot are already indexed and ready to go, greatly increasing import speed. However, snapshots are not compatible between different versions of Meilisearch. Snapshots are also significantly bigger than dumps.
In short, snapshots are a safeguard: if something goes wrong in an instance, you're able to recover and relaunch your database quickly. You can also schedule periodic snapshot creation.
Dumps
A dump isn't an exact copy of your database like a snapshot. Instead, it is closer to a blueprint which Meilisearch can later use to recreate a whole instance from scratch.
Importing a dump requires Meilisearch to re-index all documents. This process uses a significant amount of time and memory proportional to the size of the database. Compared to the snapshots, importing a dump is a slow and inefficient operation.
At the same time, dumps are not bound to a specific Meilisearch version. This means dumps are ideal for migrating your data when you upgrade Meilisearch.
NOTE
Use dumps to transfer data from an old Meilisearch version into a more recent release. Do not transfer data from a new release into a legacy Meilisearch version.
For example, you can import a dump from Meilisearch v1.2 into v1.6 without any problems. Importing a dump generated in v1.7 into a v1.2 instance, however, can lead to unexpected behavior.
Snapshots VS dumps
Both snapshots and dumps are data backups, but they serve different purposes.
Snapshots are highly efficient, but not portable between different versions of Meilisearch. Use snapshots for periodic data backups.
Dumps are portable between different Meilisearch versions, but not very efficient. Use dumps when updating to a new Meilisearch release.