1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
//! Database backend implementations.
//!
//! This module contains implementations of the storage traits for various
//! database backends. Each backend is gated behind a feature flag.
//!
//! # Available Backends
//!
//! | Backend | Feature | Description |
//! |---------|---------|-------------|
//! | SQLite | `sqlite` | Lightweight embedded database, great for development |
//! | PostgreSQL | `postgres` | Full-featured RDBMS with JSONB support |
//! | Cassandra | `cassandra` | Wide-column store for high write throughput |
//! | MongoDB | `mongodb` | Document store with native JSON support |
//! | Neo4j | `neo4j` | Graph database for relationship-heavy queries |
//! | Elasticsearch | `elasticsearch` | Full-text search optimized |
//! | S3 | `s3` | Object storage for bulk data |
//!
//! # Example
//!
//! ```no_run
//! # #[cfg(feature = "sqlite")]
//! use helios_persistence::backends::sqlite::SqliteBackend;
//!
//! # #[cfg(feature = "sqlite")]
//! # async fn example() -> Result<(), Box<dyn std::error::Error>> {
//! // Create an in-memory SQLite backend
//! let backend = SqliteBackend::in_memory()?;
//!
//! // Or use a file-based database
//! let backend = SqliteBackend::open("./data/fhir.db")?;
//! # Ok(())
//! # }
//! ```
//
// #[cfg(feature = "cassandra")]
// pub mod cassandra;
//
// #[cfg(feature = "mongodb")]
// pub mod mongodb;
//
// #[cfg(feature = "neo4j")]
// pub mod neo4j;
//
//
// #[cfg(feature = "s3")]
// pub mod s3;