VillageSQL은 내장 확장 기능을 제공하며 VillageSQL 팀에서 구축 및 유지 관리하는 공식 확장 기능을 지원합니다. INSTALL EXTENSION 명령어로 설치할 수 있습니다.
내장 확장 기능
소스에서 빌드할 때는 vsql_complex와 vsql_simple만 포함됩니다. 아래의 공식 확장 기능은 별도의 저장소에서 관리됩니다.
vsql_complex
상태: VillageSQL 내장
저장소: villagesql-server/villagesql/examples/vsql-complex
전기 공학, 신호 처리, 과학 계산에 대한 완전한 산술 지원을 제공하는 복소수 데이터 유형입니다.
기능:
- 복소수(a + bi) 저장을 위한
COMPLEX 열 유형
- 문자열 리터럴 형식:
'(real,imaginary)' (예: '(3.0,4.0)')
- 산술: 덧셈, 뺄셈, 곱셈, 나눗셈
- 유틸리티:
complex_real(), complex_imag(), complex_abs(), complex_conjugate()
- 이진 저장: 16바이트(2개의 double)
설치:
예시:
핵심 확장 기능
다음 확장 기능은 별도의 저장소에서 관리되며 별도로 빌드하고 설치해야 합니다. 각 확장 기능은 자체 설치 지침과 문서를 제공합니다.
vsql_ai
저장소: villagesql/vsql-ai
AI 기반 SQL 함수. SQL 쿼리에 대한 AI 프롬프팅 및 임베딩 함수를 지원합니다. Anthropic Claude, Google Gemini, OpenAI, 로컬 Ollama를 지원합니다.
vsql_crypto
저장소: villagesql/vsql-crypto
암호화 함수. 해싱(MD5, SHA-1, SHA-256, SHA-512 등), HMAC, AES 암호화, 비밀번호 해싱, OpenSSL을 사용한 안전한 랜덤 데이터 생성을 지원합니다.
vsql_cube
저장소: villagesql/vsql-cube
N차원 상자 및 점 유형. 최대 100차원까지 기하학적 상자와 점을 저장하고 쿼리할 수 있으며, 생성자, 접근자, 조건자, 거리, 기하학 함수를 제공합니다. VillageSQL 0.0.4 이상이 필요합니다.
vsql_http
저장소: villagesql/vsql-http
HTTP 클라이언트 함수. SQL 쿼리에서 HTTP 요청(GET, POST, PUT, DELETE, PATCH)을 보내며 JSON 응답을 처리하고, URL 인코딩 및 디코딩을 지원합니다.
vsql_network_address
저장소: villagesql/vsql-network-address
네트워크 주소 유형. IPv4, IPv6, MAC 주소 데이터 유형을 검증, 비교, 네트워크 연산과 함께 지원합니다.
vsql_uuid
저장소: villagesql/vsql-uuid
UUID 데이터 유형 및 함수. SQL 내에서 직접 UUID(v1, v3, v4, v5, v6, v7)를 생성하고 작업할 수 있으며, 내장 16바이트 UUID 유형, 타임스탬프 추출, 비교 기능을 제공합니다.
커뮤니티 확장 기능
커뮤니티 확장 기능은 VillageSQL 확장 프레임워크(VEF)를 사용하여 제3자가 구축합니다. VillageSQL 팀에서 관리하지 않습니다.
vsql_statistics
저장소: ronaldbradford/vsql-statistics
관리자: Ronald Bradford
데이터 분석을 위한 통계적 집계 함수. 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
관리자: ProxySQL
내장 Prometheus 메트릭 내보내기. HTTP /metrics 엔드포인트에서 Prometheus 노출 형식으로 MySQL 서버 메트릭(전역 상태, 전역 변수, InnoDB 메트릭, 복제 상태)을 노출합니다.
vsql_luhn
저장소: intojhanurag/vsql-luhn
관리자: intojhanurag
Luhn 알고리즘 검증기 및 검사 숫자 생성기. luhn_valid()로 신용카드 번호, IMEI 코드, 캐나다 SIN 및 기타 업계 식별자를 검증하고, luhn_checkdigit()로 올바른 검사 숫자를 생성합니다.
vsql_nanoid
저장소: intojhanurag/vsql-nanoid
관리자: intojhanurag
짧고 URL 안전한 고유 식별자를 위한 NanoID 생성기. nanoid()는 21자 ID를 반환하며, nanoid_with(size[, alphabet])로 길이와 문자 집합을 사용자 지정할 수 있습니다. 암호학적으로 안전한 난수 소스를 사용합니다.
vsql_slugify
저장소: intojhanurag/vsql-slugify
관리자: intojhanurag
임의의 텍스트에서 URL 안전한 슬러그를 생성합니다 — 악센트가 있는 문자를 ASCII로 변환하고, 소문자로 만들고, 영숫자가 아닌 문자를 단일 구분자로 축약하고, 앞뒤 구분자를 제거합니다.