Clickhouse : Test 2
Clickhouse : Test 2 jppCet ordre SQL devait me permettre de voir s'il y avait des trous de numérotation dans les valeurs du champ "idx".
Il m'a valu de nombreux ennuis avant que la mémoire ne soir "gonflée" avec de méchants messages :
Received exception from server (version 22.8.2):
Code: 241. DB::Exception: Received from localhost:9000. DB::Exception: Memory limit (total) exceeded: would use 3.73 GiB (attempt to allocate chunk of 537537181 bytes), maximum: 3.48 GiB. OvercommitTracker decision: Query was selected to stop by OvercommitTracker.: While executing AggregatingTransform. (MEMORY_LIMIT_EXCEEDED)
L'ordre est très simple :
select min(idx),max(idx), count(distinct idx) from flowsv4;
Dès que la RAM a été "suffisante" (plus de 24Go de RAM) ces messages ont disparu et les résultats sont là et bien là.
1) Résultats Clickhouse.
┌─min(idx)─┬──max(idx)─┬─uniqExact(idx)─┐
│ 1 │ 488553902 │ 488521496 │
└──────────┴───────────┴────────────────┘
1 row in set. Elapsed: 27.822 sec. Processed 488.52 million rows, 3.91 GB (17.56 million rows/s., 140.47 MB/s.)
2) Résultats MariaDB.
+----------+-----------+---------------------+
| min(idx) | max(idx) | count(distinct idx) |
+----------+-----------+---------------------+
| 1 | 488553902 | 488521496 |
+----------+-----------+---------------------+
1 row in set (5 min 42,522 sec)
3) Résultat final.
27 secondes contre 342 soit environ 13 fois plus vite.