MicroStream Reference Manual
MicroStream HomeAPI Docs
2.0
2.0
  • Preface
  • System Requirements
  • License
  • Installation
  • Data-Store
    • Overview
    • Getting Started
    • Root Instances
    • Configuration
      • Properties
      • Storage Files and Directories
      • Using Channels
      • Housekeeping
      • Backup
      • Lock File
    • Storing Data
      • Convenience Methods and Explicit Storing (Transactions)
      • Lazy and Eager Storing
      • Transient Fields
      • Best Practice
    • Loading Data
      • Lazy Loading
        • Touched Timestamp, Null-Safe Variant
        • Clearing Lazy References
    • Deleting Data
    • Queries
    • Application Life-Cycle
    • Legacy Type Mapping
      • User Interaction
    • Backup Strategies
    • Import / Export
    • Housekeeping
    • FAQ
      • Data Model
      • Data Management
      • File Storage
      • Miscellaneous
    • Customizing
      • Custom Type Handler
      • Custom Legacy Type Handler
      • PersistenceEagerStoringFieldEvaluator
Powered by GitBook
On this page
  • Where does MicroStream store persistent data?
  • Can my application use more than one MicroStream instance?
  • Is it possible to split the file-storage into many single files?
  • May multiple JVM processes access the same MicroStream database?
Export as PDF
  1. Data-Store
  2. FAQ

File Storage

PreviousData ManagementNextMiscellaneous

Last updated 3 years ago

This is the manual for older MicroStream versions (Version < 5.0).

The new documentation (Version >= 5.0) is located at:

Where does MicroStream store persistent data?

MicroStream stores persistent data in a physical form, typically in native file-system files.

Can my application use more than one MicroStream instance?

Yes, as many as you like. Each MicroStream instance represents one coherent entity graph of persistent data.

Is it possible to split the file-storage into many single files?

Yes. This is already done automatically. The minimum and maximum size of every partial file can be configured, although this is a very technical detail that should not be relevant in most cases.

May multiple JVM processes access the same MicroStream database?

At any given time, only one JVM process may directly access the files representing a unique set of data. Such a restriction is crucial for the correct execution of any application: changes to an application's persistent data have to be guarded by the rules of the application's business logic, i.e. the process that currently runs the application. Allowing another process to bypass these rules would eventually result in catastrophic consistency errors. The requirement to distribute an application over multiple processes must be solved by a clustering approach (e.g. by distributing logic AND persistent data over multiple processes or by having one process to serve as the data master for multiple worker processes).

https://docs.microstream.one/