💡 Python‑Blosc2 tip #10: store unbounded text as `utf8()`, not fixed‑width `string()`.
`string(max_length=200)` rides on NumPy's `<U` dtype, which is UCS‑4: 800 bytes per row in memory on *every* read, three characters or two hundred.
Instead of:
title: str = blosc2.field(blosc2.string(max_length=200))
Do:
title: str = blosc2.field(blosc2.utf8())
Massive memory savings. More info:
Compress Better, Compute Bigger 🚀
