dataply 0.0.18-alpha.0 → 0.0.18-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +2 -2
- package/package.json +2 -2
- package/readme.md +7 -7
package/dist/cjs/index.js
CHANGED
|
@@ -1857,7 +1857,7 @@ var BPTreeSyncTransaction = class extends BPTreeTransaction {
|
|
|
1857
1857
|
return node;
|
|
1858
1858
|
}
|
|
1859
1859
|
_updateNode(node) {
|
|
1860
|
-
this.mvcc.write(node.id,
|
|
1860
|
+
this.mvcc.write(node.id, node);
|
|
1861
1861
|
this.nodes.set(node.id, node);
|
|
1862
1862
|
}
|
|
1863
1863
|
_deleteNode(node) {
|
|
@@ -2686,7 +2686,7 @@ var BPTreeAsyncTransaction = class extends BPTreeTransaction {
|
|
|
2686
2686
|
return node;
|
|
2687
2687
|
}
|
|
2688
2688
|
async _updateNode(node) {
|
|
2689
|
-
await this.mvcc.write(node.id,
|
|
2689
|
+
await this.mvcc.write(node.id, node);
|
|
2690
2690
|
this.nodes.set(node.id, node);
|
|
2691
2691
|
}
|
|
2692
2692
|
async _deleteNode(node) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dataply",
|
|
3
|
-
"version": "0.0.18-alpha.
|
|
3
|
+
"version": "0.0.18-alpha.2",
|
|
4
4
|
"description": "A lightweight storage engine for Node.js with support for MVCC, WAL.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "izure <admin@izure.org>",
|
|
@@ -49,6 +49,6 @@
|
|
|
49
49
|
"hookall": "^2.2.0",
|
|
50
50
|
"mvcc-api": "^1.2.9",
|
|
51
51
|
"ryoiki": "^1.2.0",
|
|
52
|
-
"serializable-bptree": "^8.0
|
|
52
|
+
"serializable-bptree": "^8.1.0"
|
|
53
53
|
}
|
|
54
54
|
}
|
package/readme.md
CHANGED
|
@@ -283,15 +283,15 @@ Dataply is optimized for high-speed data processing. Below are the results of ba
|
|
|
283
283
|
|
|
284
284
|
| Test Case | Count | Total Time | OPS (Operations Per Second) |
|
|
285
285
|
| :--- | :--- | :--- | :--- |
|
|
286
|
-
| **Bulk Insert (Batch)** | 10,000 | ~
|
|
287
|
-
| **Bulk Insert (Individual)** | 100 | ~
|
|
288
|
-
| **Bulk Insert with WAL** | 100 | ~
|
|
289
|
-
| **Medium Row Insert (1KB)** | 100 | ~
|
|
286
|
+
| **Bulk Insert (Batch)** | 10,000 | ~438ms | **~24,361 OPS** |
|
|
287
|
+
| **Bulk Insert (Individual)** | 100 | ~122ms | **~851 OPS** |
|
|
288
|
+
| **Bulk Insert with WAL** | 100 | ~118ms | **~891 OPS** |
|
|
289
|
+
| **Medium Row Insert (1KB)** | 100 | ~137ms | **~776 OPS** |
|
|
290
290
|
|
|
291
291
|
### Benchmark Analysis
|
|
292
|
-
- **Batching Efficiency**: Grouping operations into a single transaction is approximately **
|
|
293
|
-
- **WAL Trade-off**: Enabling Write-Ahead Logging ensures data durability
|
|
294
|
-
- **Node.js Optimization**: Dataply is designed to provide competitive performance (
|
|
292
|
+
- **Batching Efficiency**: Grouping operations into a single transaction is approximately **28.6x faster** than individual inserts by minimizing internal transaction management overhead.
|
|
293
|
+
- **WAL Trade-off**: Enabling Write-Ahead Logging ensures data durability. In this run, WAL performance was comparable to (and slightly faster than) individual inserts, demonstrating efficient logging overhead.
|
|
294
|
+
- **Node.js Optimization**: Dataply is designed to provide competitive performance (over **24,000 OPS** in batch mode) for a pure TypeScript Record Store without native dependencies.
|
|
295
295
|
|
|
296
296
|
> [!NOTE]
|
|
297
297
|
> Tests were conducted on a standard local environment (Node.js v25+). Performance may vary depending on hardware specifications (especially SSD/HDD) and system load.
|