Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
374 views
in Technique[技术] by (71.8m points)

indexing - Where does MongoDB store index data?

I want to create a separate disk to store MongoDB Database. But I realized that, databases also have indexes. So I might need to have disk size more than the size of records.

The question is where does mongo db stores it's index data. In config file we only mention path of logs and db folder.

question from:https://stackoverflow.com/questions/66058063/where-does-mongodb-store-index-data

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The question is where does mongo db stores it's index data. In config file we only mention path of logs and db folder.

The index data is stored along with the collection data in the data directory of the MongoDB Server installation. You can also specify the data directory using the --dbpath storage option when you start the mongod.

The files are stored with names like the following, for example:

collection-2-3986418375741882655.wt 
index-1-221874391618151955.wt

The first one is a collection data file and the second one is an index data file. For each collection and index, one file for each is created respectively. So, if there are 3 collections and 5 indexes there will be 8 files (the data directory has other files too).

There is also a --directoryperdb option, which when specified:

Uses a separate directory to store data for each database. The directories are under the --dbpath directory, and each subdirectory name corresponds to the database name.


[EDIT Update]: Indexes can be stored in separate directory

MongoDB Configuration File Options - storage.wiredTiger.engineConfig.directoryForIndexes

When storage.wiredTiger.engineConfig.directoryForIndexes is true, mongod stores indexes and collections in separate subdirectories under the data (i.e. storage.dbPath) directory. Specifically, mongod stores the indexes in a subdirectory named index and the collection data in a subdirectory named collection.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...