> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-fbfa8bee.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> 메모리 문제를 디버깅하는 데 도움이 되는 쿼리입니다.

# 메모리 문제 디버깅

메모리 문제나 메모리 누수가 발생하면, 어떤 쿼리와 리소스가 많은 메모리를 소비하는지 파악하는 것이 중요합니다. 아래에는 메모리 문제를 디버깅하는 데 도움이 되는 쿼리가 나와 있으며, 이를 통해 최적화가 필요한 쿼리, 데이터베이스, 테이블을 식별할 수 있습니다.

<div id="list-currently-running-processes-by-peak-memory">
  ## 현재 실행 중인 프로세스를 최대 메모리 사용량 순으로 나열
</div>

```sql theme={null}
SELECT
    initial_query_id,
    query,
    elapsed,
    formatReadableSize(memory_usage),
    formatReadableSize(peak_memory_usage),
FROM system.processes
ORDER BY peak_memory_usage DESC
LIMIT 100;
```

<div id="list-metrics-for-memory-usage">
  ## 메모리 사용량 메트릭 목록
</div>

```sql theme={null}
SELECT
    metric, description, formatReadableSize(value) size
FROM
    system.asynchronous_metrics
WHERE
    metric LIKE '%Cach%'
    OR metric LIKE '%Mem%'
ORDER BY
    value DESC;
```

<div id="list-tables-by-current-memory-usage">
  ## 현재 메모리 사용량 기준 테이블 목록
</div>

```sql theme={null}
SELECT
    database,
    name,
    formatReadableSize(total_bytes)
FROM system.tables
WHERE engine IN ('Memory','Set','Join');
```

<div id="output-total-memory-used-by-merges">
  ## 머지 작업에서 사용하는 총 메모리 출력
</div>

```sql theme={null}
SELECT formatReadableSize(sum(memory_usage)) FROM system.merges;
```

<div id="output-total-memory-used-by-currently-running-processes">
  ## 현재 실행 중인 프로세스가 사용 중인 총 메모리 출력
</div>

```sql theme={null}
SELECT formatReadableSize(sum(memory_usage)) FROM system.processes;
```

<div id="output-total-memory-used-by-dictionaries">
  ## Dictionaries에서 사용하는 총 메모리 출력
</div>

```sql theme={null}
SELECT formatReadableSize(sum(bytes_allocated)) FROM system.dictionaries;
```

<div id="output-total-memory-used-by-primary-keys">
  ## 기본 키와 인덱스 세분화 수준이 사용하는 총 메모리 출력
</div>

```sql theme={null}
SELECT
    sumIf(data_uncompressed_bytes, part_type = 'InMemory') AS memory_parts,
    formatReadableSize(sum(primary_key_bytes_in_memory)) AS primary_key_bytes_in_memory,
    formatReadableSize(sum(primary_key_bytes_in_memory_allocated)) AS primary_key_bytes_in_memory_allocated,
    formatReadableSize(sum(index_granularity_bytes_in_memory)) AS index_granularity_bytes_in_memory,
    formatReadableSize(sum(index_granularity_bytes_in_memory_allocated)) AS index_granularity_bytes_in_memory_allocated
FROM system.parts;
```
