v1.3.1
Performance updates, perf profiling added. Query Cache with B-Tree indexes greatly speed things up:
DOM-ORM Performance Report
──────────────────────────────────────────────────────
Entities : 100,000 | One-by-one sample : 50
Running… (this may take a minute)
[WRITE — one-by-one]
Sample (50 entities) : 64.46 ms total (1.2893 ms each)
Extrapolated (100,000) : ~128,928.00 ms total
Note: each persist() re-serialises the full growing XML document.
[WRITE — batch (persistBatch → one save)]
100,000 entities : 7,223.97 ms total (0.0722 ms each)
Resulting XML size : 34,725 KB
Speedup vs one-by-one : ~18×
[READ — XPath (no cache)]
findAll() : 5,054.78 ms
find() by id : 338.65 ms
findOneBy() by name : 739.07 ms
[READ — PHP query cache]
Cache build : 2,203.25 ms
findAll() : 3,027.06 ms (1.7× speedup)
find() by id : 0.14 ms (2418.9× speedup)
findOneBy() by name : 0.05 ms (14781.4× speedup)