> ## Documentation Index
> Fetch the complete documentation index at: https://villagesql.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 사용 가능한 확장 기능

> AI, 암호화, 네트워킹, HTTP, UUIDs, 기하학 기능을 지원하는 VillageSQL의 공식 확장 기능입니다.

VillageSQL은 내장 확장 기능을 제공하며 VillageSQL 팀에서 구축 및 유지 관리하는 공식 확장 기능을 지원합니다. `INSTALL EXTENSION` 명령어로 설치할 수 있습니다.

## 내장 확장 기능

<Warning>
  소스에서 빌드할 때는 `vsql_complex`와 `vsql_simple`만 포함됩니다. 아래의 공식 확장 기능은 별도의 저장소에서 관리됩니다.
</Warning>

### vsql\_complex

**상태:** VillageSQL 내장
**저장소:** [villagesql-server/villagesql/examples/vsql-complex](https://github.com/villagesql/villagesql-server/tree/main/villagesql/examples/vsql-complex)

전기 공학, 신호 처리, 과학 계산에 대한 완전한 산술 지원을 제공하는 복소수 데이터 유형입니다.

**기능:**

* 복소수(a + bi) 저장을 위한 `COMPLEX` 열 유형
* 문자열 리터럴 형식: `'(real,imaginary)'` (예: `'(3.0,4.0)'`)
* 산술: 덧셈, 뺄셈, 곱셈, 나눗셈
* 유틸리티: `complex_real()`, `complex_imag()`, `complex_abs()`, `complex_conjugate()`
* 이진 저장: 16바이트(2개의 double)

**설치:**

```sql theme={null}
INSTALL EXTENSION vsql_complex;
```

**예시:**

```sql theme={null}
CREATE TABLE signals (
    id INT PRIMARY KEY,
    impedance COMPLEX,
    frequency_response COMPLEX
);

INSERT INTO signals VALUES
    (1, '(50.0,0.0)', '(0.95,0.31)');

SELECT
    complex_abs(impedance) as magnitude,
    complex_add(impedance, frequency_response) as total
FROM signals;
```

## 핵심 확장 기능

다음 확장 기능은 별도의 저장소에서 관리되며 별도로 빌드하고 설치해야 합니다. 각 확장 기능은 자체 설치 지침과 문서를 제공합니다.

### vsql\_ai

**저장소:** [villagesql/vsql-ai](https://github.com/villagesql/vsql-ai)

AI 기반 SQL 함수. SQL 쿼리에 대한 AI 프롬프팅 및 임베딩 함수를 지원합니다. Anthropic Claude, Google Gemini, OpenAI, 로컬 Ollama를 지원합니다.

### vsql\_crypto

**저장소:** [villagesql/vsql-crypto](https://github.com/villagesql/vsql-crypto)

암호화 함수. 해싱(MD5, SHA-1, SHA-256, SHA-512 등), HMAC, AES 암호화, 비밀번호 해싱, OpenSSL을 사용한 안전한 랜덤 데이터 생성을 지원합니다.

### vsql\_cube

**저장소:** [villagesql/vsql-cube](https://github.com/villagesql/vsql-cube)

N차원 상자 및 점 유형. 최대 100차원까지 기하학적 상자와 점을 저장하고 쿼리할 수 있으며, 생성자, 접근자, 조건자, 거리, 기하학 함수를 제공합니다. VillageSQL 0.0.4 이상이 필요합니다.

### vsql\_http

**저장소:** [villagesql/vsql-http](https://github.com/villagesql/vsql-http)

HTTP 클라이언트 함수. SQL 쿼리에서 HTTP 요청(GET, POST, PUT, DELETE, PATCH)을 보내며 JSON 응답을 처리하고, URL 인코딩 및 디코딩을 지원합니다.

### vsql\_network\_address

**저장소:** [villagesql/vsql-network-address](https://github.com/villagesql/vsql-network-address)

네트워크 주소 유형. IPv4, IPv6, MAC 주소 데이터 유형을 검증, 비교, 네트워크 연산과 함께 지원합니다.

### vsql\_uuid

**저장소:** [villagesql/vsql-uuid](https://github.com/villagesql/vsql-uuid)

UUID 데이터 유형 및 함수. SQL 내에서 직접 UUID(v1, v3, v4, v5, v6, v7)를 생성하고 작업할 수 있으며, 내장 16바이트 UUID 유형, 타임스탬프 추출, 비교 기능을 제공합니다.

## 커뮤니티 확장 기능

커뮤니티 확장 기능은 VillageSQL 확장 프레임워크(VEF)를 사용하여 제3자가 구축합니다. VillageSQL 팀에서 관리하지 않습니다.

### vsql\_statistics

**저장소:** [ronaldbradford/vsql-statistics](https://github.com/ronaldbradford/vsql-statistics)
**관리자:** [Ronald Bradford](https://github.com/ronaldbradford)

데이터 분석을 위한 통계적 집계 함수. IQR, 사분위수, 중앙값, Tukey 경계 이상치 탐지 — `STATS_IQR`, `STATS_Q1`, `STATS_Q3`, `STATS_MEDIAN`, `STATS_IQR_LOWER_FENCE`, `STATS_IQR_UPPER_FENCE`. VillageSQL 0.0.4 이상이 필요합니다.

### prometheus\_exporter

**저장소:** [ProxySQL/vsql-prometheus-exporter](https://github.com/ProxySQL/vsql-prometheus-exporter)
**관리자:** [ProxySQL](https://github.com/ProxySQL)

내장 Prometheus 메트릭 내보내기. HTTP `/metrics` 엔드포인트에서 Prometheus 노출 형식으로 MySQL 서버 메트릭(전역 상태, 전역 변수, InnoDB 메트릭, 복제 상태)을 노출합니다.

### vsql\_luhn

**저장소:** [intojhanurag/vsql-luhn](https://github.com/intojhanurag/vsql-luhn)
**관리자:** [intojhanurag](https://github.com/intojhanurag)

Luhn 알고리즘 검증기 및 검사 숫자 생성기. `luhn_valid()`로 신용카드 번호, IMEI 코드, 캐나다 SIN 및 기타 업계 식별자를 검증하고, `luhn_checkdigit()`로 올바른 검사 숫자를 생성합니다.

### vsql\_nanoid

**저장소:** [intojhanurag/vsql-nanoid](https://github.com/intojhanurag/vsql-nanoid)
**관리자:** [intojhanurag](https://github.com/intojhanurag)

짧고 URL 안전한 고유 식별자를 위한 NanoID 생성기. `nanoid()`는 21자 ID를 반환하며, `nanoid_with(size[, alphabet])`로 길이와 문자 집합을 사용자 지정할 수 있습니다. 암호학적으로 안전한 난수 소스를 사용합니다.

### vsql\_slugify

**저장소:** [intojhanurag/vsql-slugify](https://github.com/intojhanurag/vsql-slugify)
**관리자:** [intojhanurag](https://github.com/intojhanurag)

임의의 텍스트에서 URL 안전한 슬러그를 생성합니다 — 악센트가 있는 문자를 ASCII로 변환하고, 소문자로 만들고, 영숫자가 아닌 문자를 단일 구분자로 축약하고, 앞뒤 구분자를 제거합니다.
