Question about metadata directory #885
Labels
No labels
action
check-aws
action
discussion-needed
action
for-external-contributors
action
for-newcomers
action
more-info-needed
action
need-funding
action
triage-required
kind
correctness
kind
ideas
kind
improvement
kind
performance
kind
testing
kind
usability
kind
wrong-behavior
prio
critical
prio
low
scope
admin-api
scope
background-healing
scope
build
scope
documentation
scope
k8s
scope
layout
scope
metadata
scope
ops
scope
rpc
scope
s3-api
scope
security
scope
telemetry
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: Deuxfleurs/garage#885
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
I have a question about how Garage nodes store metadata. In the docs, parameter
metadata_dir
describes metadata directory as follows:It is unclear for me what "index of all objects" means. Does it mean "all objects on the node" or "all objects in the whole cluster"? This concerns me a lot, because if nodes store index of all objects in the cluster, it would be impossible to expand cluster by adding new servers, so I hope this is not the case.
To clarify, the actual data (in almost any cases, there are some optimizations for small objects) is not written in this folder, only references are kept here, the actual data is stored in chunks in the data folder. I don't have have the complete rundown of what is duplicated or not, but some metadata is, as there is no leader in a garage cluster, all nodes need to have a reasonable view of the cluster state (eg. list of buckets) to be able to serve requests. This usually do not hinder scaling or adding new nodes.
To give you an example in a cluster with a couple TiB of data the metadata folder is usually around 10GiB or less
Concerning the "index of all objects":