|
11 | 11 |
|
12 | 12 | ## Features |
13 | 13 |
|
14 | | -TODO: List key features of the library |
| 14 | +| Component | Feature | Status | Notes | |
| 15 | +|------------------|----------------------------|--------|-------------------------------------------| |
| 16 | +| **Runtime** | Create Tokio runtime | ✅ | Configurable worker/blocking threads | |
| 17 | +| | Graceful shutdown | ✅ | With timeout | |
| 18 | +| | Multiple runtime instances | ✅ | | |
| 19 | +| **Session** | Create session context | ✅ | | |
| 20 | +| | Execute SQL queries | ✅ | Returns DataFrame | |
| 21 | +| **Data Sources** | | | | |
| 22 | +| | CSV read | ✅ | Basic, no options exposed | |
| 23 | +| | CSV write | ❌ | | |
| 24 | +| | Parquet read | ❌ | | |
| 25 | +| | Parquet write | ❌ | | |
| 26 | +| | JSON read | ❌ | | |
| 27 | +| | JSON write | ❌ | | |
| 28 | +| | In-memory tables | ❌ | | |
| 29 | +| **DataFrame** | | | | |
| 30 | +| | Count rows | ✅ | `CountAsync()` | |
| 31 | +| | Get schema | ✅ | `GetSchemaAsync()` → Arrow Schema | |
| 32 | +| | Collect all data | ✅ | `CollectAsync()` → RecordBatches | |
| 33 | +| | Stream results | ✅ | `ExecuteStreamAsync()` → IAsyncEnumerable | |
| 34 | +| | Show/print | ✅ | `ShowAsync()`, `ToStringAsync()` | |
| 35 | +| | Select columns | ❌ | Use SQL instead | |
| 36 | +| | Filter rows | ❌ | Use SQL instead | |
| 37 | +| | Limit rows | ❌ | Use SQL instead | |
| 38 | +| | Sort | ❌ | Use SQL instead | |
| 39 | +| | Join | ❌ | Use SQL instead | |
| 40 | +| | Aggregate | ❌ | Use SQL instead | |
| 41 | +| | Explain plan | ❌ | | |
| 42 | +| | Write to file | ❌ | | |
| 43 | +| **Arrow** | RecordBatch support | ✅ | Via Apache.Arrow | |
| 44 | +| | Schema inspection | ✅ | | |
| 45 | +| | IPC serialization | ✅ | Internal transport | |
| 46 | +| **Advanced** | | | | |
| 47 | +| | UDF registration | ❌ | | |
| 48 | +| | Catalog management | ❌ | | |
| 49 | +| | Table providers | ❌ | | |
| 50 | +| **Platforms** | Linux x64 | ✅ | | |
| 51 | +| | Linux arm64 | ❌ | | |
| 52 | +| | Windows x64 | ❌ | | |
| 53 | +| | macOS arm64 | ❌ | | |
| 54 | + |
| 55 | +✅ Implemented ❌ Not yet implemented |
15 | 56 |
|
16 | 57 | ## Installation |
17 | 58 | ```bash |
|
0 commit comments