Skip to content

Commit 35fb68f

Browse files
Merge pull request #133 from datajoint/pre/v2.1
2 parents ae0b01c + 61e257e commit 35fb68f

File tree

2 files changed

+287
-145
lines changed

2 files changed

+287
-145
lines changed

src/explanation/type-system.md

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ Codec types use angle bracket notation:
133133
| `<npy@>` ||| Schema | NpyRef (lazy) |
134134
| `<object@>` ||| Schema | ObjectRef |
135135
| `<hash@>` ||| Hash | bytes |
136-
| `<filepath@>` ||| | ObjectRef |
136+
| `<filepath@>` ||| User-managed | ObjectRef |
137137

138138
### Plugin Codecs
139139

@@ -177,7 +177,10 @@ DataJoint loads these entry points on first use, making third-party codecs indis
177177

178178
### `<blob>` — Serialized Python Objects
179179

180-
Stores NumPy arrays, dicts, lists, and other Python objects using DataJoint's custom binary serialization format.
180+
Stores NumPy arrays, dicts, lists, and other Python objects using DataJoint's custom binary serialization format. The blob type has been in continuous use in DataJoint pipelines for 15+ years and maintains full backward compatibility. It provides an efficient way to serialize complex objects into an opaque binary string.
181+
182+
!!! note "Modern alternatives"
183+
Schema-addressed codecs introduced in DataJoint 2.0 (`<npy@>`, `<object@>`, and plugin codecs) offer modern high-performance accessibility with transparent formats, lazy loading, and browsable storage paths—while maintaining rigorous data integrity and consistency. Consider these for new pipelines where interoperability and direct data access are priorities.
181184

182185
**Serialization format:**
183186

@@ -361,3 +364,21 @@ class Network(dj.Computed):
361364
2. **`<blob>`** for Python objects — NumPy arrays, dicts
362365
3. **`@` suffix** for object store — `<blob@>`, `<object@>`
363366
4. **Custom codecs** for domain-specific types
367+
368+
## See Also
369+
370+
**How-to Guides:**
371+
372+
- [Choose a Storage Type](../how-to/choose-storage-type.md) — Decision guide for selecting the right type
373+
- [Configure Object Storage](../how-to/configure-storage.md) — Setting up stores for external data
374+
- [Use Object Storage](../how-to/use-object-storage.md) — Working with `<blob@>`, `<attach@>`, `<object@>`
375+
- [Use the npy Codec](../how-to/use-npy-codec.md) — Storing NumPy arrays as `.npy` files
376+
- [Use Plugin Codecs](../how-to/use-plugin-codecs.md) — Installing and using third-party codecs
377+
- [Create a Custom Codec](../how-to/create-custom-codec.md) — Building your own codec
378+
379+
**Reference:**
380+
381+
- [Type System Specification](../reference/specs/type-system.md) — Complete type reference
382+
- [Codec API](../reference/specs/codec-api.md) — Codec class interface
383+
- [npy Codec Specification](../reference/specs/npy-codec.md) — NpyRef and NpyCodec details
384+
- [Object Store Configuration](../reference/specs/object-store-configuration.md) — Store settings reference

0 commit comments

Comments
 (0)