litedbmodel 1.0.0 → 1.0.1
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/README.md +1 -1
- package/dist/DBModel.d.ts +5 -2
- package/dist/DBModel.d.ts.map +1 -1
- package/dist/DBModel.js +55 -22
- package/dist/DBModel.js.map +1 -1
- package/dist/LazyRelation.d.ts.map +1 -1
- package/dist/LazyRelation.js +9 -3
- package/dist/LazyRelation.js.map +1 -1
- package/dist/decorators.d.ts.map +1 -1
- package/dist/decorators.js +6 -8
- package/dist/decorators.js.map +1 -1
- package/dist/drivers/PostgresHelper.d.ts.map +1 -1
- package/dist/drivers/PostgresHelper.js +4 -0
- package/dist/drivers/PostgresHelper.js.map +1 -1
- package/dist/drivers/postgres.d.ts.map +1 -1
- package/dist/drivers/postgres.js +57 -10
- package/dist/drivers/postgres.js.map +1 -1
- package/docs/BENCHMARK.md +52 -52
- package/docs/COMPARISON.md +5 -5
- package/docs/benchmark-chart.svg +163 -163
- package/package.json +1 -1
package/docs/benchmark-chart.svg
CHANGED
|
@@ -48,218 +48,218 @@
|
|
|
48
48
|
<line x1="80" y1="-5" x2="80" y2="1975" class="baseline" />
|
|
49
49
|
<text x="-10" y="40" text-anchor="end" dominant-baseline="middle" class="op-label">Find all (limit 100)</text>
|
|
50
50
|
<rect x="0" y="0" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
51
|
-
<text x="85" y="7" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
52
|
-
<rect x="0" y="16" width="
|
|
53
|
-
<text x="
|
|
54
|
-
<rect x="0" y="32" width="
|
|
55
|
-
<text x="
|
|
56
|
-
<rect x="0" y="48" width="
|
|
57
|
-
<text x="
|
|
58
|
-
<rect x="0" y="64" width="
|
|
59
|
-
<text x="
|
|
51
|
+
<text x="85" y="7" dominant-baseline="middle" class="value-label">1.00x (0.70ms)</text>
|
|
52
|
+
<rect x="0" y="16" width="74.2857142857143" height="12" fill="#22c55e" rx="2" />
|
|
53
|
+
<text x="79.2857142857143" y="23" dominant-baseline="middle" class="value-label">0.93x (0.65ms)</text>
|
|
54
|
+
<rect x="0" y="32" width="73.14285714285715" height="12" fill="#f59e0b" rx="2" />
|
|
55
|
+
<text x="78.14285714285715" y="39" dominant-baseline="middle" class="value-label">0.91x (0.64ms)</text>
|
|
56
|
+
<rect x="0" y="48" width="82.28571428571429" height="12" fill="#ef4444" rx="2" />
|
|
57
|
+
<text x="87.28571428571429" y="55" dominant-baseline="middle" class="value-label">1.03x (0.72ms)</text>
|
|
58
|
+
<rect x="0" y="64" width="154.2857142857143" height="12" fill="#8b5cf6" rx="2" />
|
|
59
|
+
<text x="159.2857142857143" y="71" dominant-baseline="middle" class="value-label">1.93x (1.35ms)</text>
|
|
60
60
|
<text x="-10" y="145" text-anchor="end" dominant-baseline="middle" class="op-label">Filter, paginate & sort</text>
|
|
61
61
|
<rect x="0" y="105" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
62
|
-
<text x="85" y="112" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
63
|
-
<rect x="0" y="121" width="
|
|
64
|
-
<text x="
|
|
65
|
-
<rect x="0" y="137" width="
|
|
66
|
-
<text x="
|
|
67
|
-
<rect x="0" y="153" width="
|
|
68
|
-
<text x="
|
|
69
|
-
<rect x="0" y="169" width="
|
|
70
|
-
<text x="
|
|
62
|
+
<text x="85" y="112" dominant-baseline="middle" class="value-label">1.00x (0.58ms)</text>
|
|
63
|
+
<rect x="0" y="121" width="88.27586206896554" height="12" fill="#22c55e" rx="2" />
|
|
64
|
+
<text x="93.27586206896554" y="128" dominant-baseline="middle" class="value-label">1.10x (0.64ms)</text>
|
|
65
|
+
<rect x="0" y="137" width="81.37931034482759" height="12" fill="#f59e0b" rx="2" />
|
|
66
|
+
<text x="86.37931034482759" y="144" dominant-baseline="middle" class="value-label">1.02x (0.59ms)</text>
|
|
67
|
+
<rect x="0" y="153" width="91.0344827586207" height="12" fill="#ef4444" rx="2" />
|
|
68
|
+
<text x="96.0344827586207" y="160" dominant-baseline="middle" class="value-label">1.14x (0.66ms)</text>
|
|
69
|
+
<rect x="0" y="169" width="151.7241379310345" height="12" fill="#8b5cf6" rx="2" />
|
|
70
|
+
<text x="156.7241379310345" y="176" dominant-baseline="middle" class="value-label">1.90x (1.10ms)</text>
|
|
71
71
|
<text x="-10" y="250" text-anchor="end" dominant-baseline="middle" class="op-label">Nested find all (include posts)</text>
|
|
72
72
|
<rect x="0" y="210" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
73
|
-
<text x="85" y="217" dominant-baseline="middle" class="value-label">1.00x (3.
|
|
74
|
-
<rect x="0" y="226" width="
|
|
75
|
-
<text x="
|
|
76
|
-
<rect x="0" y="242" width="
|
|
77
|
-
<text x="
|
|
78
|
-
<rect x="0" y="258" width="
|
|
79
|
-
<text x="
|
|
80
|
-
<rect x="0" y="274" width="
|
|
81
|
-
<text x="
|
|
73
|
+
<text x="85" y="217" dominant-baseline="middle" class="value-label">1.00x (3.64ms)</text>
|
|
74
|
+
<rect x="0" y="226" width="101.0989010989011" height="12" fill="#22c55e" rx="2" />
|
|
75
|
+
<text x="106.0989010989011" y="233" dominant-baseline="middle" class="value-label">1.26x (4.60ms)</text>
|
|
76
|
+
<rect x="0" y="242" width="102.41758241758241" height="12" fill="#f59e0b" rx="2" />
|
|
77
|
+
<text x="107.41758241758241" y="249" dominant-baseline="middle" class="value-label">1.28x (4.66ms)</text>
|
|
78
|
+
<rect x="0" y="258" width="183.2967032967033" height="12" fill="#ef4444" rx="2" />
|
|
79
|
+
<text x="188.2967032967033" y="265" dominant-baseline="middle" class="value-label">2.29x (8.34ms)</text>
|
|
80
|
+
<rect x="0" y="274" width="265.0549450549451" height="12" fill="#8b5cf6" rx="2" />
|
|
81
|
+
<text x="270.0549450549451" y="281" dominant-baseline="middle" class="value-label">3.31x (12.06ms)</text>
|
|
82
82
|
<text x="-10" y="355" text-anchor="end" dominant-baseline="middle" class="op-label">Find first</text>
|
|
83
83
|
<rect x="0" y="315" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
84
|
-
<text x="85" y="322" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
85
|
-
<rect x="0" y="331" width="
|
|
86
|
-
<text x="
|
|
87
|
-
<rect x="0" y="347" width="
|
|
88
|
-
<text x="
|
|
89
|
-
<rect x="0" y="363" width="
|
|
90
|
-
<text x="
|
|
91
|
-
<rect x="0" y="379" width="
|
|
92
|
-
<text x="
|
|
84
|
+
<text x="85" y="322" dominant-baseline="middle" class="value-label">1.00x (0.37ms)</text>
|
|
85
|
+
<rect x="0" y="331" width="69.1891891891892" height="12" fill="#22c55e" rx="2" />
|
|
86
|
+
<text x="74.1891891891892" y="338" dominant-baseline="middle" class="value-label">0.86x (0.32ms)</text>
|
|
87
|
+
<rect x="0" y="347" width="77.83783783783782" height="12" fill="#f59e0b" rx="2" />
|
|
88
|
+
<text x="82.83783783783782" y="354" dominant-baseline="middle" class="value-label">0.97x (0.36ms)</text>
|
|
89
|
+
<rect x="0" y="363" width="86.48648648648648" height="12" fill="#ef4444" rx="2" />
|
|
90
|
+
<text x="91.48648648648648" y="370" dominant-baseline="middle" class="value-label">1.08x (0.40ms)</text>
|
|
91
|
+
<rect x="0" y="379" width="127.56756756756755" height="12" fill="#8b5cf6" rx="2" />
|
|
92
|
+
<text x="132.56756756756755" y="386" dominant-baseline="middle" class="value-label">1.59x (0.59ms)</text>
|
|
93
93
|
<text x="-10" y="460" text-anchor="end" dominant-baseline="middle" class="op-label">Nested find first (include posts)</text>
|
|
94
94
|
<rect x="0" y="420" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
95
|
-
<text x="85" y="427" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
96
|
-
<rect x="0" y="436" width="
|
|
97
|
-
<text x="
|
|
98
|
-
<rect x="0" y="452" width="
|
|
99
|
-
<text x="
|
|
100
|
-
<rect x="0" y="468" width="64
|
|
101
|
-
<text x="69
|
|
102
|
-
<rect x="0" y="484" width="
|
|
103
|
-
<text x="
|
|
95
|
+
<text x="85" y="427" dominant-baseline="middle" class="value-label">1.00x (0.65ms)</text>
|
|
96
|
+
<rect x="0" y="436" width="75.07692307692308" height="12" fill="#22c55e" rx="2" />
|
|
97
|
+
<text x="80.07692307692308" y="443" dominant-baseline="middle" class="value-label">0.94x (0.61ms)</text>
|
|
98
|
+
<rect x="0" y="452" width="87.38461538461537" height="12" fill="#f59e0b" rx="2" />
|
|
99
|
+
<text x="92.38461538461537" y="459" dominant-baseline="middle" class="value-label">1.09x (0.71ms)</text>
|
|
100
|
+
<rect x="0" y="468" width="64" height="12" fill="#ef4444" rx="2" />
|
|
101
|
+
<text x="69" y="475" dominant-baseline="middle" class="value-label">0.80x (0.52ms)</text>
|
|
102
|
+
<rect x="0" y="484" width="130.46153846153845" height="12" fill="#8b5cf6" rx="2" />
|
|
103
|
+
<text x="135.46153846153845" y="491" dominant-baseline="middle" class="value-label">1.63x (1.06ms)</text>
|
|
104
104
|
<text x="-10" y="565" text-anchor="end" dominant-baseline="middle" class="op-label">Find unique (by email)</text>
|
|
105
105
|
<rect x="0" y="525" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
106
106
|
<text x="85" y="532" dominant-baseline="middle" class="value-label">1.00x (0.29ms)</text>
|
|
107
|
-
<rect x="0" y="541" width="
|
|
108
|
-
<text x="
|
|
109
|
-
<rect x="0" y="557" width="
|
|
110
|
-
<text x="
|
|
107
|
+
<rect x="0" y="541" width="85.51724137931036" height="12" fill="#22c55e" rx="2" />
|
|
108
|
+
<text x="90.51724137931036" y="548" dominant-baseline="middle" class="value-label">1.07x (0.31ms)</text>
|
|
109
|
+
<rect x="0" y="557" width="82.75862068965519" height="12" fill="#f59e0b" rx="2" />
|
|
110
|
+
<text x="87.75862068965519" y="564" dominant-baseline="middle" class="value-label">1.03x (0.30ms)</text>
|
|
111
111
|
<rect x="0" y="573" width="88.27586206896554" height="12" fill="#ef4444" rx="2" />
|
|
112
112
|
<text x="93.27586206896554" y="580" dominant-baseline="middle" class="value-label">1.10x (0.32ms)</text>
|
|
113
|
-
<rect x="0" y="589" width="
|
|
114
|
-
<text x="
|
|
113
|
+
<rect x="0" y="589" width="146.20689655172416" height="12" fill="#8b5cf6" rx="2" />
|
|
114
|
+
<text x="151.20689655172416" y="596" dominant-baseline="middle" class="value-label">1.83x (0.53ms)</text>
|
|
115
115
|
<text x="-10" y="670" text-anchor="end" dominant-baseline="middle" class="op-label">Nested find unique (include posts)</text>
|
|
116
116
|
<rect x="0" y="630" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
117
|
-
<text x="85" y="637" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
118
|
-
<rect x="0" y="646" width="
|
|
119
|
-
<text x="
|
|
120
|
-
<rect x="0" y="662" width="
|
|
121
|
-
<text x="
|
|
122
|
-
<rect x="0" y="678" width="
|
|
123
|
-
<text x="
|
|
124
|
-
<rect x="0" y="694" width="
|
|
125
|
-
<text x="
|
|
117
|
+
<text x="85" y="637" dominant-baseline="middle" class="value-label">1.00x (0.57ms)</text>
|
|
118
|
+
<rect x="0" y="646" width="81.40350877192984" height="12" fill="#22c55e" rx="2" />
|
|
119
|
+
<text x="86.40350877192984" y="653" dominant-baseline="middle" class="value-label">1.02x (0.58ms)</text>
|
|
120
|
+
<rect x="0" y="662" width="82.80701754385966" height="12" fill="#f59e0b" rx="2" />
|
|
121
|
+
<text x="87.80701754385966" y="669" dominant-baseline="middle" class="value-label">1.04x (0.59ms)</text>
|
|
122
|
+
<rect x="0" y="678" width="147.3684210526316" height="12" fill="#ef4444" rx="2" />
|
|
123
|
+
<text x="152.3684210526316" y="685" dominant-baseline="middle" class="value-label">1.84x (1.05ms)</text>
|
|
124
|
+
<rect x="0" y="694" width="131.9298245614035" height="12" fill="#8b5cf6" rx="2" />
|
|
125
|
+
<text x="136.9298245614035" y="701" dominant-baseline="middle" class="value-label">1.65x (0.94ms)</text>
|
|
126
126
|
<text x="-10" y="775" text-anchor="end" dominant-baseline="middle" class="op-label">Create</text>
|
|
127
127
|
<rect x="0" y="735" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
128
|
-
<text x="85" y="742" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
129
|
-
<rect x="0" y="751" width="
|
|
130
|
-
<text x="
|
|
131
|
-
<rect x="0" y="767" width="
|
|
132
|
-
<text x="
|
|
133
|
-
<rect x="0" y="783" width="
|
|
134
|
-
<text x="
|
|
135
|
-
<rect x="0" y="799" width="
|
|
136
|
-
<text x="
|
|
128
|
+
<text x="85" y="742" dominant-baseline="middle" class="value-label">1.00x (0.69ms)</text>
|
|
129
|
+
<rect x="0" y="751" width="78.84057971014494" height="12" fill="#22c55e" rx="2" />
|
|
130
|
+
<text x="83.84057971014494" y="758" dominant-baseline="middle" class="value-label">0.99x (0.68ms)</text>
|
|
131
|
+
<rect x="0" y="767" width="88.1159420289855" height="12" fill="#f59e0b" rx="2" />
|
|
132
|
+
<text x="93.1159420289855" y="774" dominant-baseline="middle" class="value-label">1.10x (0.76ms)</text>
|
|
133
|
+
<rect x="0" y="783" width="91.59420289855073" height="12" fill="#ef4444" rx="2" />
|
|
134
|
+
<text x="96.59420289855073" y="790" dominant-baseline="middle" class="value-label">1.14x (0.79ms)</text>
|
|
135
|
+
<rect x="0" y="799" width="117.10144927536233" height="12" fill="#8b5cf6" rx="2" />
|
|
136
|
+
<text x="122.10144927536233" y="806" dominant-baseline="middle" class="value-label">1.46x (1.01ms)</text>
|
|
137
137
|
<text x="-10" y="880" text-anchor="end" dominant-baseline="middle" class="op-label">Nested create (with post)</text>
|
|
138
138
|
<rect x="0" y="840" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
139
|
-
<text x="85" y="847" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
140
|
-
<rect x="0" y="856" width="
|
|
141
|
-
<text x="
|
|
142
|
-
<rect x="0" y="872" width="
|
|
143
|
-
<text x="
|
|
144
|
-
<rect x="0" y="888" width="
|
|
145
|
-
<text x="
|
|
146
|
-
<rect x="0" y="904" width="
|
|
147
|
-
<text x="
|
|
139
|
+
<text x="85" y="847" dominant-baseline="middle" class="value-label">1.00x (0.90ms)</text>
|
|
140
|
+
<rect x="0" y="856" width="85.33333333333333" height="12" fill="#22c55e" rx="2" />
|
|
141
|
+
<text x="90.33333333333333" y="863" dominant-baseline="middle" class="value-label">1.07x (0.96ms)</text>
|
|
142
|
+
<rect x="0" y="872" width="91.55555555555554" height="12" fill="#f59e0b" rx="2" />
|
|
143
|
+
<text x="96.55555555555554" y="879" dominant-baseline="middle" class="value-label">1.14x (1.03ms)</text>
|
|
144
|
+
<rect x="0" y="888" width="108.44444444444443" height="12" fill="#ef4444" rx="2" />
|
|
145
|
+
<text x="113.44444444444443" y="895" dominant-baseline="middle" class="value-label">1.36x (1.22ms)</text>
|
|
146
|
+
<rect x="0" y="904" width="160.88888888888889" height="12" fill="#8b5cf6" rx="2" />
|
|
147
|
+
<text x="165.88888888888889" y="911" dominant-baseline="middle" class="value-label">2.01x (1.81ms)</text>
|
|
148
148
|
<text x="-10" y="985" text-anchor="end" dominant-baseline="middle" class="op-label">Update</text>
|
|
149
149
|
<rect x="0" y="945" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
150
|
-
<text x="85" y="952" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
151
|
-
<rect x="0" y="961" width="
|
|
152
|
-
<text x="
|
|
153
|
-
<rect x="0" y="977" width="
|
|
154
|
-
<text x="
|
|
155
|
-
<rect x="0" y="993" width="
|
|
156
|
-
<text x="
|
|
157
|
-
<rect x="0" y="1009" width="
|
|
158
|
-
<text x="
|
|
150
|
+
<text x="85" y="952" dominant-baseline="middle" class="value-label">1.00x (0.63ms)</text>
|
|
151
|
+
<rect x="0" y="961" width="77.46031746031747" height="12" fill="#22c55e" rx="2" />
|
|
152
|
+
<text x="82.46031746031747" y="968" dominant-baseline="middle" class="value-label">0.97x (0.61ms)</text>
|
|
153
|
+
<rect x="0" y="977" width="83.80952380952381" height="12" fill="#f59e0b" rx="2" />
|
|
154
|
+
<text x="88.80952380952381" y="984" dominant-baseline="middle" class="value-label">1.05x (0.66ms)</text>
|
|
155
|
+
<rect x="0" y="993" width="85.07936507936508" height="12" fill="#ef4444" rx="2" />
|
|
156
|
+
<text x="90.07936507936508" y="1000" dominant-baseline="middle" class="value-label">1.06x (0.67ms)</text>
|
|
157
|
+
<rect x="0" y="1009" width="142.22222222222223" height="12" fill="#8b5cf6" rx="2" />
|
|
158
|
+
<text x="147.22222222222223" y="1016" dominant-baseline="middle" class="value-label">1.78x (1.12ms)</text>
|
|
159
159
|
<text x="-10" y="1090" text-anchor="end" dominant-baseline="middle" class="op-label">Nested update (update user + post)</text>
|
|
160
160
|
<rect x="0" y="1050" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
161
|
-
<text x="85" y="1057" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
162
|
-
<rect x="0" y="1066" width="
|
|
163
|
-
<text x="
|
|
164
|
-
<rect x="0" y="1082" width="
|
|
165
|
-
<text x="
|
|
166
|
-
<rect x="0" y="1098" width="
|
|
167
|
-
<text x="
|
|
168
|
-
<rect x="0" y="1114" width="
|
|
169
|
-
<text x="
|
|
161
|
+
<text x="85" y="1057" dominant-baseline="middle" class="value-label">1.00x (0.94ms)</text>
|
|
162
|
+
<rect x="0" y="1066" width="85.1063829787234" height="12" fill="#22c55e" rx="2" />
|
|
163
|
+
<text x="90.1063829787234" y="1073" dominant-baseline="middle" class="value-label">1.06x (1.00ms)</text>
|
|
164
|
+
<rect x="0" y="1082" width="78.29787234042553" height="12" fill="#f59e0b" rx="2" />
|
|
165
|
+
<text x="83.29787234042553" y="1089" dominant-baseline="middle" class="value-label">0.98x (0.92ms)</text>
|
|
166
|
+
<rect x="0" y="1098" width="86.80851063829789" height="12" fill="#ef4444" rx="2" />
|
|
167
|
+
<text x="91.80851063829789" y="1105" dominant-baseline="middle" class="value-label">1.09x (1.02ms)</text>
|
|
168
|
+
<rect x="0" y="1114" width="194.04255319148933" height="12" fill="#8b5cf6" rx="2" />
|
|
169
|
+
<text x="199.04255319148933" y="1121" dominant-baseline="middle" class="value-label">2.43x (2.28ms)</text>
|
|
170
170
|
<text x="-10" y="1195" text-anchor="end" dominant-baseline="middle" class="op-label">Upsert</text>
|
|
171
171
|
<rect x="0" y="1155" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
172
|
-
<text x="85" y="1162" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
173
|
-
<rect x="0" y="1171" width="
|
|
174
|
-
<text x="
|
|
175
|
-
<rect x="0" y="1187" width="
|
|
176
|
-
<text x="
|
|
177
|
-
<rect x="0" y="1203" width="
|
|
178
|
-
<text x="
|
|
179
|
-
<rect x="0" y="1219" width="
|
|
180
|
-
<text x="
|
|
172
|
+
<text x="85" y="1162" dominant-baseline="middle" class="value-label">1.00x (0.71ms)</text>
|
|
173
|
+
<rect x="0" y="1171" width="83.38028169014085" height="12" fill="#22c55e" rx="2" />
|
|
174
|
+
<text x="88.38028169014085" y="1178" dominant-baseline="middle" class="value-label">1.04x (0.74ms)</text>
|
|
175
|
+
<rect x="0" y="1187" width="74.3661971830986" height="12" fill="#f59e0b" rx="2" />
|
|
176
|
+
<text x="79.3661971830986" y="1194" dominant-baseline="middle" class="value-label">0.93x (0.66ms)</text>
|
|
177
|
+
<rect x="0" y="1203" width="84.50704225352113" height="12" fill="#ef4444" rx="2" />
|
|
178
|
+
<text x="89.50704225352113" y="1210" dominant-baseline="middle" class="value-label">1.06x (0.75ms)</text>
|
|
179
|
+
<rect x="0" y="1219" width="233.2394366197183" height="12" fill="#8b5cf6" rx="2" />
|
|
180
|
+
<text x="238.2394366197183" y="1226" dominant-baseline="middle" class="value-label">2.92x (2.07ms)</text>
|
|
181
181
|
<text x="-10" y="1300" text-anchor="end" dominant-baseline="middle" class="op-label">Nested upsert (user + post)</text>
|
|
182
182
|
<rect x="0" y="1260" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
183
|
-
<text x="85" y="1267" dominant-baseline="middle" class="value-label">1.00x (
|
|
184
|
-
<rect x="0" y="1276" width="
|
|
185
|
-
<text x="
|
|
186
|
-
<rect x="0" y="1292" width="
|
|
187
|
-
<text x="
|
|
188
|
-
<rect x="0" y="1308" width="
|
|
189
|
-
<text x="
|
|
190
|
-
<rect x="0" y="1324" width="
|
|
191
|
-
<text x="
|
|
183
|
+
<text x="85" y="1267" dominant-baseline="middle" class="value-label">1.00x (1.00ms)</text>
|
|
184
|
+
<rect x="0" y="1276" width="80" height="12" fill="#22c55e" rx="2" />
|
|
185
|
+
<text x="85" y="1283" dominant-baseline="middle" class="value-label">1.00x (1.00ms)</text>
|
|
186
|
+
<rect x="0" y="1292" width="80" height="12" fill="#f59e0b" rx="2" />
|
|
187
|
+
<text x="85" y="1299" dominant-baseline="middle" class="value-label">1.00x (1.00ms)</text>
|
|
188
|
+
<rect x="0" y="1308" width="91.19999999999999" height="12" fill="#ef4444" rx="2" />
|
|
189
|
+
<text x="96.19999999999999" y="1315" dominant-baseline="middle" class="value-label">1.14x (1.14ms)</text>
|
|
190
|
+
<rect x="0" y="1324" width="181.6" height="12" fill="#8b5cf6" rx="2" />
|
|
191
|
+
<text x="186.6" y="1331" dominant-baseline="middle" class="value-label">2.27x (2.27ms)</text>
|
|
192
192
|
<text x="-10" y="1405" text-anchor="end" dominant-baseline="middle" class="op-label">Delete</text>
|
|
193
193
|
<rect x="0" y="1365" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
194
|
-
<text x="85" y="1372" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
195
|
-
<rect x="0" y="1381" width="82.
|
|
196
|
-
<text x="87.
|
|
197
|
-
<rect x="0" y="1397" width="
|
|
198
|
-
<text x="
|
|
199
|
-
<rect x="0" y="1413" width="90.
|
|
200
|
-
<text x="95.
|
|
201
|
-
<rect x="0" y="1429" width="
|
|
202
|
-
<text x="
|
|
194
|
+
<text x="85" y="1372" dominant-baseline="middle" class="value-label">1.00x (0.97ms)</text>
|
|
195
|
+
<rect x="0" y="1381" width="82.47422680412372" height="12" fill="#22c55e" rx="2" />
|
|
196
|
+
<text x="87.47422680412372" y="1388" dominant-baseline="middle" class="value-label">1.03x (1.00ms)</text>
|
|
197
|
+
<rect x="0" y="1397" width="80.82474226804123" height="12" fill="#f59e0b" rx="2" />
|
|
198
|
+
<text x="85.82474226804123" y="1404" dominant-baseline="middle" class="value-label">1.01x (0.98ms)</text>
|
|
199
|
+
<rect x="0" y="1413" width="90.72164948453609" height="12" fill="#ef4444" rx="2" />
|
|
200
|
+
<text x="95.72164948453609" y="1420" dominant-baseline="middle" class="value-label">1.13x (1.10ms)</text>
|
|
201
|
+
<rect x="0" y="1429" width="141.85567010309276" height="12" fill="#8b5cf6" rx="2" />
|
|
202
|
+
<text x="146.85567010309276" y="1436" dominant-baseline="middle" class="value-label">1.77x (1.72ms)</text>
|
|
203
203
|
<text x="-10" y="1510" text-anchor="end" dominant-baseline="middle" class="op-label">Create Many (10 records)</text>
|
|
204
204
|
<rect x="0" y="1470" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
205
|
-
<text x="85" y="1477" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
206
|
-
<rect x="0" y="1486" width="
|
|
207
|
-
<text x="
|
|
208
|
-
<rect x="0" y="1502" width="
|
|
209
|
-
<text x="
|
|
210
|
-
<rect x="0" y="1518" width="
|
|
211
|
-
<text x="
|
|
212
|
-
<rect x="0" y="1534" width="
|
|
213
|
-
<text x="
|
|
205
|
+
<text x="85" y="1477" dominant-baseline="middle" class="value-label">1.00x (0.77ms)</text>
|
|
206
|
+
<rect x="0" y="1486" width="74.8051948051948" height="12" fill="#22c55e" rx="2" />
|
|
207
|
+
<text x="79.8051948051948" y="1493" dominant-baseline="middle" class="value-label">0.94x (0.72ms)</text>
|
|
208
|
+
<rect x="0" y="1502" width="92.46753246753248" height="12" fill="#f59e0b" rx="2" />
|
|
209
|
+
<text x="97.46753246753248" y="1509" dominant-baseline="middle" class="value-label">1.16x (0.89ms)</text>
|
|
210
|
+
<rect x="0" y="1518" width="103.89610389610388" height="12" fill="#ef4444" rx="2" />
|
|
211
|
+
<text x="108.89610389610388" y="1525" dominant-baseline="middle" class="value-label">1.30x (1.00ms)</text>
|
|
212
|
+
<rect x="0" y="1534" width="124.67532467532467" height="12" fill="#8b5cf6" rx="2" />
|
|
213
|
+
<text x="129.67532467532467" y="1541" dominant-baseline="middle" class="value-label">1.56x (1.20ms)</text>
|
|
214
214
|
<text x="-10" y="1615" text-anchor="end" dominant-baseline="middle" class="op-label">Upsert Many (10 records)</text>
|
|
215
215
|
<rect x="0" y="1575" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
216
|
-
<text x="85" y="1582" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
217
|
-
<rect x="0" y="1591" width="
|
|
218
|
-
<text x="
|
|
219
|
-
<rect x="0" y="1607" width="
|
|
220
|
-
<text x="
|
|
221
|
-
<rect x="0" y="1623" width="
|
|
222
|
-
<text x="
|
|
216
|
+
<text x="85" y="1582" dominant-baseline="middle" class="value-label">1.00x (0.88ms)</text>
|
|
217
|
+
<rect x="0" y="1591" width="81.81818181818181" height="12" fill="#22c55e" rx="2" />
|
|
218
|
+
<text x="86.81818181818181" y="1598" dominant-baseline="middle" class="value-label">1.02x (0.90ms)</text>
|
|
219
|
+
<rect x="0" y="1607" width="93.63636363636363" height="12" fill="#f59e0b" rx="2" />
|
|
220
|
+
<text x="98.63636363636363" y="1614" dominant-baseline="middle" class="value-label">1.17x (1.03ms)</text>
|
|
221
|
+
<rect x="0" y="1623" width="96.36363636363636" height="12" fill="#ef4444" rx="2" />
|
|
222
|
+
<text x="101.36363636363636" y="1630" dominant-baseline="middle" class="value-label">1.20x (1.06ms)</text>
|
|
223
223
|
<rect x="0" y="1639" width="400" height="12" fill="#8b5cf6" rx="2" />
|
|
224
224
|
<line x1="397" y1="1639" x2="400" y2="1651" class="overflow-line" />
|
|
225
225
|
<line x1="394" y1="1639" x2="397" y2="1651" class="overflow-line" />
|
|
226
|
-
<text x="405" y="1646" dominant-baseline="middle" class="value-overflow">⚠️
|
|
226
|
+
<text x="405" y="1646" dominant-baseline="middle" class="value-overflow">⚠️ 13.51x (11.89ms)</text>
|
|
227
227
|
<text x="-10" y="1720" text-anchor="end" dominant-baseline="middle" class="op-label">Update Many (10 different values)</text>
|
|
228
228
|
<rect x="0" y="1680" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
229
|
-
<text x="85" y="1687" dominant-baseline="middle" class="value-label">1.00x (0.
|
|
230
|
-
<rect x="0" y="1696" width="
|
|
231
|
-
<text x="
|
|
232
|
-
<rect x="0" y="1712" width="
|
|
233
|
-
<text x="
|
|
234
|
-
<rect x="0" y="1728" width="
|
|
235
|
-
<text x="
|
|
229
|
+
<text x="85" y="1687" dominant-baseline="middle" class="value-label">1.00x (0.70ms)</text>
|
|
230
|
+
<rect x="0" y="1696" width="323.4285714285715" height="12" fill="#22c55e" rx="2" />
|
|
231
|
+
<text x="328.4285714285715" y="1703" dominant-baseline="middle" class="value-label">4.04x (2.83ms)</text>
|
|
232
|
+
<rect x="0" y="1712" width="314.28571428571433" height="12" fill="#f59e0b" rx="2" />
|
|
233
|
+
<text x="319.28571428571433" y="1719" dominant-baseline="middle" class="value-label">3.93x (2.75ms)</text>
|
|
234
|
+
<rect x="0" y="1728" width="345.1428571428572" height="12" fill="#ef4444" rx="2" />
|
|
235
|
+
<text x="350.1428571428572" y="1735" dominant-baseline="middle" class="value-label">4.31x (3.02ms)</text>
|
|
236
236
|
<rect x="0" y="1744" width="400" height="12" fill="#8b5cf6" rx="2" />
|
|
237
237
|
<line x1="397" y1="1744" x2="400" y2="1756" class="overflow-line" />
|
|
238
238
|
<line x1="394" y1="1744" x2="397" y2="1756" class="overflow-line" />
|
|
239
|
-
<text x="405" y="1751" dominant-baseline="middle" class="value-overflow">⚠️
|
|
239
|
+
<text x="405" y="1751" dominant-baseline="middle" class="value-overflow">⚠️ 7.59x (5.31ms)</text>
|
|
240
240
|
<text x="-10" y="1825" text-anchor="end" dominant-baseline="middle" class="op-label">Nested relations (100→1000→10000)</text>
|
|
241
241
|
<rect x="0" y="1785" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
242
|
-
<text x="85" y="1792" dominant-baseline="middle" class="value-label">1.00x (
|
|
243
|
-
<rect x="0" y="1801" width="
|
|
244
|
-
<text x="
|
|
245
|
-
<rect x="0" y="1817" width="
|
|
246
|
-
<text x="
|
|
247
|
-
<rect x="0" y="1833" width="
|
|
248
|
-
<text x="
|
|
249
|
-
<rect x="0" y="1849" width="
|
|
250
|
-
<text x="
|
|
242
|
+
<text x="85" y="1792" dominant-baseline="middle" class="value-label">1.00x (25.82ms)</text>
|
|
243
|
+
<rect x="0" y="1801" width="76.37490317583269" height="12" fill="#22c55e" rx="2" />
|
|
244
|
+
<text x="81.37490317583269" y="1808" dominant-baseline="middle" class="value-label">0.95x (24.65ms)</text>
|
|
245
|
+
<rect x="0" y="1817" width="75.13555383423703" height="12" fill="#f59e0b" rx="2" />
|
|
246
|
+
<text x="80.13555383423703" y="1824" dominant-baseline="middle" class="value-label">0.94x (24.25ms)</text>
|
|
247
|
+
<rect x="0" y="1833" width="249.60495739736638" height="12" fill="#ef4444" rx="2" />
|
|
248
|
+
<text x="254.60495739736638" y="1840" dominant-baseline="middle" class="value-label">3.12x (80.56ms)</text>
|
|
249
|
+
<rect x="0" y="1849" width="260.57319907048793" height="12" fill="#8b5cf6" rx="2" />
|
|
250
|
+
<text x="265.57319907048793" y="1856" dominant-baseline="middle" class="value-label">3.26x (84.10ms)</text>
|
|
251
251
|
<text x="-10" y="1930" text-anchor="end" dominant-baseline="middle" class="op-label">Nested relations (composite key, 5 tenants)</text>
|
|
252
252
|
<rect x="0" y="1890" width="80" height="12" fill="#3b82f6" rx="2" />
|
|
253
|
-
<text x="85" y="1897" dominant-baseline="middle" class="value-label">1.00x (
|
|
253
|
+
<text x="85" y="1897" dominant-baseline="middle" class="value-label">1.00x (22.41ms)</text>
|
|
254
254
|
<text x="5" y="1913" dominant-baseline="middle" class="na-text">N/A</text>
|
|
255
|
-
<rect x="0" y="1922" width="
|
|
256
|
-
<text x="
|
|
257
|
-
<rect x="0" y="1938" width="
|
|
258
|
-
<text x="
|
|
255
|
+
<rect x="0" y="1922" width="58.04551539491298" height="12" fill="#f59e0b" rx="2" />
|
|
256
|
+
<text x="63.04551539491298" y="1929" dominant-baseline="middle" class="value-label">0.73x (16.26ms)</text>
|
|
257
|
+
<rect x="0" y="1938" width="140.1160196340919" height="12" fill="#ef4444" rx="2" />
|
|
258
|
+
<text x="145.1160196340919" y="1945" dominant-baseline="middle" class="value-label">1.75x (39.25ms)</text>
|
|
259
259
|
<rect x="0" y="1954" width="400" height="12" fill="#8b5cf6" rx="2" />
|
|
260
260
|
<line x1="397" y1="1954" x2="400" y2="1966" class="overflow-line" />
|
|
261
261
|
<line x1="394" y1="1954" x2="397" y2="1966" class="overflow-line" />
|
|
262
|
-
<text x="405" y="1961" dominant-baseline="middle" class="value-overflow">⚠️ 9.
|
|
262
|
+
<text x="405" y="1961" dominant-baseline="middle" class="value-overflow">⚠️ 9.77x (219.00ms)</text>
|
|
263
263
|
</g>
|
|
264
264
|
|
|
265
265
|
<!-- Legend -->
|