> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://wiki.leviia.com/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Understanding S3 LifeCycles and related concepts

**What is an S3 lifecycle rule?**

S3 lifecycle rules automate the management of objects stored in your buckets throughout their lifecycle.

These rules help you to **optimize storage space** and **maintain good data hygiene** by automatically deleting objects that are no longer required.

LEVIIA Storag3, as an S3-compatible service, supports lifecycle configurations.

[Lifecycle configuration](https://wiki.leviia.com/en/article/setting-up-s3-lifecycles-w3nfum/)

[Lifecycle setup](https://wiki.leviia.com/en/article/implementation-of-s3-lifecycles-12bku4b/)
---

🔄 Understanding S3 versioning

## Versioning in LEVIIA Storag3

**Versioning** is a feature that lets you keep several variants of the same object in a bucket. Instead of replacing an object when it is modified, S3 keeps the old version and creates a new version.

### Benefits of versioning

* **Protection against accidental deletion** : Deleted objects are simply marked with a “delete marker”, but remain recoverable.
* **History preservation**: Access to all previous versions of a file.
* **Easy restoration**: Possibility of reverting to any previous version
### Key concepts

**Current version**: The most recent version of an object, the one returned by default.
* **Non-current versions**: All previous versions of an object
* **Delete markers**: Special markers indicating that an object has been "deleted" (without actually deleting it).
* **Version ID**: Unique identifier assigned to each version of an object.
---

🗑️ Concept 1: Delete Markers

## Expired delete markers

In a bucket with versioning enabled, when you "delete" an object, S3 actually creates a **delete marker** instead of permanently deleting the object. This marker becomes the current version of the object and hides previous versions.

### What is an expired delete marker?

A deletion marker is considered **expired** when it is the only remaining version of the object. This usually occurs after all non-current versions have been deleted by other lifecycle rules.

### Why delete them?

* **Complete cleanup**: Finalizes the deletion process.
* **Bucket visibility**: Prevents "ghost objects" in your bucket.
* **Optimal organization**: Maintains a clear view of the objects actually present.
---

📚 Concept 2: Non-current versions

## Non-current versions

When versioning is enabled on a bucket, every modification to an object creates a new version. Previous versions become **non-current versions** which are kept indefinitely by default.

### Why manage non-current versions?

* **Compliance**: Definition of a clear retention policy
* **Performance**: Too many versions can affect the performance of bucket operations.

### Current retention strategies

* **Short-term (7-30 days)** : For development environments or frequently modified files
* **Medium-term (30-90 days)** : For most professional use cases
* **Long term (90-365 days)** : For important data requiring a longer history
---

🧩 Concept 3: Incomplete multipart uploads

## Incomplete multipart uploads

Multipart upload is a feature for uploading large files in several parallel parts. If the upload process is not completed correctly (by a `CompleteMultipartUpload` command), the uploaded parts remain in the bucket indefinitely.

### Problems related to incomplete multipart uploads

* **Size**: These parts take up space even if they don't form a usable object.
* **Disorder**: These parts are not visible in the standard S3 console, but take up space.
* **Confusion**: Difficult to identify and clean up manually.
---
