|
121 | 121 | $mysqli->query("INSERT INTO `bench_test`.`test` (name) VALUES " . implode(',', $values));
|
122 | 122 | return $i;
|
123 | 123 | },
|
124 |
| - 'update' => function ($multiplier = 1, $count = 50) use (&$mysqli) { |
| 124 | + 'update' => function ($multiplier = 1, $count = 1000) use (&$mysqli) { |
125 | 125 | if ($mysqli === null) {
|
126 | 126 | return INF;
|
127 | 127 | }
|
128 | 128 |
|
129 | 129 | $count = $count * $multiplier;
|
130 | 130 | $time = StopWatch::time();
|
131 | 131 | for ($i = 0; $i < $count; $i++) {
|
132 |
| - $mysqli->query("UPDATE `bench_test`.`test` SET name = 'test' WHERE id % 2 = 0"); |
| 132 | + $mysqli->query("UPDATE `bench_test`.`test` SET name = 'test' WHERE id = '$i'"); |
133 | 133 | }
|
134 | 134 | extraStat('q/s', round($count / (StopWatch::time() - $time)));
|
135 | 135 | return $i;
|
136 | 136 | },
|
| 137 | + 'update_with_index' => function ($multiplier = 1, $count = 1000) use (&$mysqli) { |
| 138 | + if ($mysqli === null) { |
| 139 | + return INF; |
| 140 | + } |
| 141 | + |
| 142 | + $mysqli->query("CREATE INDEX idx ON `bench_test`.`test` (id)"); |
| 143 | + |
| 144 | + $count = $count * $multiplier; |
| 145 | + $time = StopWatch::time(); |
| 146 | + for ($i = 0; $i < $count; $i++) { |
| 147 | + $mysqli->query("UPDATE `bench_test`.`test` SET name = 'test' WHERE id = '$i'"); |
| 148 | + } |
| 149 | + extraStat('q/s', round($count / (StopWatch::time() - $time))); |
| 150 | + |
| 151 | + $mysqli->query("DROP INDEX idx ON `bench_test`.`test`"); |
| 152 | + return $i; |
| 153 | + }, |
137 | 154 | 'transaction_insert' => function ($multiplier = 1, $count = 1000) use (&$mysqli) {
|
138 | 155 | if ($mysqli === null) {
|
139 | 156 | return INF;
|
|
187 | 204 | $stmt->close();
|
188 | 205 | return $i;
|
189 | 206 | },
|
190 |
| - 'indexes' => function ($multiplier = 1, $count = 100) use (&$mysqli) { |
| 207 | + 'indexes' => function ($multiplier = 1, $count = 1000) use (&$mysqli) { |
191 | 208 | if ($mysqli === null) {
|
192 | 209 | return INF;
|
193 | 210 | }
|
|
196 | 213 | $mysqli->query("DROP INDEX idx_name ON `bench_test`.`test`");
|
197 | 214 | return 1;
|
198 | 215 | },
|
199 |
| - 'delete' => function ($multiplier = 1, $count = 100) use (&$mysqli) { |
| 216 | + 'delete' => function ($multiplier = 1, $count = 1000) use (&$mysqli) { |
200 | 217 | if ($mysqli === null) {
|
201 | 218 | return INF;
|
202 | 219 | }
|
203 | 220 |
|
204 | 221 | $count = $count * $multiplier;
|
205 | 222 | $time = StopWatch::time();
|
206 | 223 | for ($i = 0; $i < $count; $i++) {
|
207 |
| - $mysqli->query("DELETE FROM `bench_test`.`test` WHERE id % 2 = 0"); |
| 224 | + $mysqli->query("DELETE FROM `bench_test`.`test` WHERE id = '$i'"); |
208 | 225 | }
|
209 | 226 | extraStat('q/s', round($count / (StopWatch::time() - $time)));
|
210 | 227 | return $i;
|
|
0 commit comments