paradigmxyz / reth

Modular, contributor-friendly and blazing-fast implementation of the Ethereum protocol, in Rust
https://reth.rs/
Apache License 2.0
4k stars 1.22k forks source link

reth book installation guide conflates NVMe and SSD terminology #5689

Open tersec opened 11 months ago

tersec commented 11 months ago

Describe the bug

SSD is a category of storage technology, typically NAND flash-based. It does not define the interface with the rest of the system, whether that be USB, SATA, NVMe, or anything else. Those are orthogonal concerns.

NVMe in particular, conversely does not define the underlying storage technology (though it is somewhat opinionated and was certainly designed partly around the prominence of SSDs). It provides a relatively abstract interface, and does not deeply care whether the underlying device is NAND flash or spinning rust.

So, https://paradigmxyz.github.io/reth/installation/installation.html#disk which states:

So NVMe drives are recommended for the best performance, with SSDs being a cheaper alternative. HDDs are the cheapest option, but they will take the longest to sync, and are not recommended.

is confusing, because all of the NVMe TLC/QLC drives in https://paradigmxyz.github.io/reth/installation/installation.html#hardware:

It is crucial to understand the difference between QLC and TLC NVMe drives when considering the disk requirement.

QLC (Quad-Level Cell) NVMe drives utilize four bits of data per cell, allowing for higher storage density and lower manufacturing costs. However, this increased density comes at the expense of performance. QLC drives have slower read and write speeds compared to TLC drives. They also have a lower endurance, meaning they may have a shorter lifespan and be less suitable for heavy workloads or constant data rewriting.

TLC (Triple-Level Cell) NVMe drives, on the other hand, use three bits of data per cell. While they have a slightly lower storage density compared to QLC drives, TLC drives offer faster performance. They typically have higher read and write speeds, making them more suitable for demanding tasks such as data-intensive applications, gaming, and multimedia editing. TLC drives also tend to have a higher endurance, making them more durable and longer-lasting.

Prior to purchasing an NVMe drive, it is advisable to research and determine whether the disk will be based on QLC or TLC technology. An overview of recommended and not-so-recommended NVMe boards can be found at here.

are also SSDs. They're TLC and QLC SSDs connected via NVMe to the host system.

NVMe is not a separate category of drive from SSDs, nor are they a subset of SSDs. They're one of many ways of connecting SSDs to a host system, but can connect other devices as well. So it's not clear what NVMe > SSD > HDD is supposed to mean.

Steps to reproduce

View https://paradigmxyz.github.io/reth/installation/installation.html in a web browser.

Node logs

No response

Platform(s)

No response

What version/commit are you on?

No response

What database version are you on?

No response

What type of node are you running?

None

What prune config do you use, if any?

No response

If you've built Reth from source, provide the full command you used

No response

Code of Conduct

github-actions[bot] commented 11 months ago

This issue is stale because it has been open for 21 days with no activity.

DaniPopes commented 11 months ago

cc @gakonst

vcastellm commented 2 weeks ago

I can take this one to start