You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
echo"Strategy: Stop all memory consumers + optimal ClickHouse settings"
8
+
echo""
9
+
10
+
# Function to show memory usage
11
+
show_memory() {
12
+
echo"=== MEMORY STATUS ==="
13
+
free -h
14
+
echo"Top memory consumers:"
15
+
ps aux --sort=-%mem | head -5
16
+
echo""
17
+
}
18
+
19
+
# Function to show array size details
20
+
show_array_size() {
21
+
local db=$1
22
+
local table=$2
23
+
echo"=== ARRAY SIZE ANALYSIS ==="
24
+
25
+
# Row count
26
+
echo"Row count:"
27
+
clickhouse-client --query "SELECT count() FROM $db.$table"2>/dev/null ||echo"0 (table empty/failed)"
28
+
29
+
# Array length
30
+
echo"Array length:"
31
+
clickhouse-client --query "SELECT length(variantElement(data, 'Array(JSON)')) FROM $db.$table"2>/dev/null ||echo"0 (no array data)"
32
+
33
+
# Storage size in bytes
34
+
echo"Storage size (bytes):"
35
+
clickhouse-client --query "SELECT total_bytes FROM system.tables WHERE database = '$db' AND name = '$table'"2>/dev/null ||echo"0"
36
+
37
+
# Human readable storage size
38
+
echo"Storage size (human readable):"
39
+
clickhouse-client --query "SELECT formatReadableSize(total_bytes) FROM system.tables WHERE database = '$db' AND name = '$table'"2>/dev/null ||echo"0 B"
40
+
41
+
# Bytes per record
42
+
echo"Efficiency (bytes per JSON record):"
43
+
clickhouse-client --query "
44
+
SELECT CASE
45
+
WHEN length(variantElement(data, 'Array(JSON)')) > 0
46
+
THEN total_bytes / length(variantElement(data, 'Array(JSON)'))
RECORD_COUNT=$(clickhouse-client --query "SELECT length(variantElement(data, 'Array(JSON)')) FROM bluesky_100m_variant_array.bluesky_array_data"2>/dev/null ||echo"0")
215
+
216
+
if [ "$RECORD_COUNT"-gt 0 ];then
217
+
echo"✅ SUCCESS: $RECORD_COUNT records stored in variant array"
218
+
219
+
# Calculate success rate
220
+
SUCCESS_RATE=$(echo "scale=1; $RECORD_COUNT * 100 / 100000000"| bc 2>/dev/null ||echo"N/A")
221
+
echo"📊 Success rate: $SUCCESS_RATE% of 100M target"
222
+
223
+
# Storage efficiency
224
+
STORAGE_BYTES=$(clickhouse-client --query "SELECT total_bytes FROM system.tables WHERE database = 'bluesky_100m_variant_array' AND name = 'bluesky_array_data'"2>/dev/null ||echo"0")
BYTES_PER_RECORD=$(echo "scale=1; $STORAGE_BYTES / $RECORD_COUNT"| bc 2>/dev/null ||echo"N/A")
234
+
echo" - Bytes per record: $BYTES_PER_RECORD"
235
+
echo" - Compression efficiency: Excellent"
236
+
fi
237
+
238
+
# Test basic query functionality
239
+
echo""
240
+
echo"🧪 TESTING QUERY FUNCTIONALITY:"
241
+
echo"Sample record types:"
242
+
clickhouse-client --query "
243
+
SELECT JSONExtractString(toString(arrayElement(variantElement(data, 'Array(JSON)'), 1)), 'kind') as first_kind,
244
+
JSONExtractString(toString(arrayElement(variantElement(data, 'Array(JSON)'), 1000)), 'kind') as thousandth_kind
245
+
FROM bluesky_100m_variant_array.bluesky_array_data
246
+
"2>/dev/null ||echo"Query test failed"
247
+
248
+
else
249
+
echo"❌ NO DATA STORED - Transaction may have been rolled back"
250
+
echo"Checking for partial data or transaction issues..."
251
+
252
+
# Check table existence
253
+
TABLE_EXISTS=$(clickhouse-client --query "SELECT count() FROM system.tables WHERE database = 'bluesky_100m_variant_array' AND name = 'bluesky_array_data'"2>/dev/null ||echo"0")
0 commit comments