- LangSmith 관리형 ClickHouse
- 직접 또는 클라우드 제공업체 마켓플레이스를 통해 ClickHouse Cloud를 프로비저닝:
- 클라우드 제공업체의 VM에서
처음 두 옵션(LangSmith 관리형 ClickHouse 또는 ClickHouse Cloud)을 사용하면 VPC 외부에 Clickhouse 서비스가 프로비저닝됩니다. 그러나 두 옵션 모두 private endpoint를 지원하므로 공용 인터넷에 노출하지 않고 ClickHouse 서비스로 트래픽을 전달할 수 있습니다(예: AWS PrivateLink 또는 GCP Private Service Connect를 통해).또한 민감한 정보가 Clickhouse에 저장되지 않도록 구성할 수 있습니다. 자세한 내용은 [email protected]로 문의하세요.
Requirements
- LangSmith 애플리케이션이 네트워크 액세스할 수 있는 프로비저닝된 ClickHouse 인스턴스(옵션은 위 참조).
- ClickHouse 데이터베이스에 대한 관리자 액세스 권한이 있는 사용자. 이 사용자는 필요한 테이블, 인덱스 및 뷰를 생성하는 데 사용됩니다.
- 독립형 ClickHouse와 외부 관리형 클러스터 배포를 모두 지원합니다. 클러스터 배포의 경우 모든 노드가 동일한 버전을 실행하고 있는지 확인하세요. 번들 ClickHouse 설치에서는 클러스터 설정이 지원되지 않습니다.
- ClickHouse 버전 >= 23.9만 지원합니다. ClickHouse 버전 >= 24.2를 사용하려면 LangSmith v0.6 이상이 필요합니다.
- ClickHouse 인스턴스에 설정해야 하는 몇 가지 구성 매개변수에 의존합니다. 자세한 내용은 아래와 같습니다:
우리 시스템은 위의 구성 매개변수와 함께 작동하도록 조정되었습니다. 이러한 매개변수를 변경하면 예기치 않은 동작이 발생할 수 있습니다.
HA Replicated Clickhouse Cluster
기본적으로 위의 설정 프로세스는 단일 노드 Clickhouse 클러스터에서만 작동합니다.
- 데이터 복제를 위해 Keeper 또는 Zookeeper로 설정되고 적절한 설정이 있는 Clickhouse 클러스터가 필요합니다. Clickhouse Replication Setup Docs를 참조하세요.
- LangSmith Configuration 섹션에서 cluster 설정, 특히
cluster설정을 Clickhouse Cluster 이름과 일치하도록 설정해야 합니다. 이렇게 하면 Clickhouse migration을 실행할 때Replicated테이블 엔진을 사용합니다. - HA 외에도 Clickhouse 노드 간에 로드 밸런싱을 하려면(읽기 또는 쓰기를 분산하기 위해) 로드 밸런서 또는 DNS 로드 밸런싱을 사용하여 Clickhouse 서버 간에 라운드 로빈하는 것이 좋습니다.
- 참고: LangSmith를 처음 시작하고 Clickhouse migration을 실행하기 전에
cluster설정을 활성화해야 합니다. 테이블 엔진이 복제되지 않은 엔진 유형이 아닌Replicated테이블 엔진으로 생성되어야 하므로 이는 필수 요구 사항입니다.
cluster가 활성화된 상태에서 migration을 실행하면 migration은 Replicated 테이블 엔진 형식을 생성합니다. 이는 데이터가 클러스터의 서버 간에 복제됨을 의미합니다. 이는 모든 서버가 읽기, 쓰기 또는 병합을 처리할 수 있는 master-master 설정입니다.
복제된 ClickHouse 클러스터의 예제 설정은 LangSmith Helm chart repo의 examples 아래 replicated ClickHouse section을 참조하세요.
LangSmith 관리형 ClickHouse
- LangSmith 관리형 ClickHouse를 사용하는 경우 LangSmith VPC와 ClickHouse VPC 간에 VPC peering 연결을 설정해야 합니다. 자세한 내용은 [email protected]로 문의하세요.
- Blob Storage도 설정해야 합니다. Blob Storage에 대한 자세한 내용은 Blob Storage documentation에서 확인할 수 있습니다.
LangSmith가 관리하는 ClickHouse 설치는 SharedMerge 엔진을 사용하여 자동으로 클러스터링하고 컴퓨팅과 스토리지를 분리합니다.
Parameters
외부 ClickHouse 데이터베이스를 구성하려면 LangSmith 설치에 여러 매개변수를 제공해야 합니다. 이러한 매개변수는 다음과 같습니다:- Host: ClickHouse 데이터베이스의 호스트 이름 또는 IP 주소
- HTTP Port: ClickHouse 데이터베이스가 HTTP 연결을 수신하는 포트
- Native Port: ClickHouse 데이터베이스가 native connections을 수신하는 포트
- Database: LangSmith가 사용해야 하는 ClickHouse 데이터베이스의 이름
- Username: ClickHouse 데이터베이스에 연결하는 데 사용할 사용자 이름
- Password: ClickHouse 데이터베이스에 연결하는 데 사용할 비밀번호
- Cluster (선택 사항): 외부 Clickhouse 클러스터를 사용하는 경우 ClickHouse 클러스터의 이름. 설정하면 LangSmith는 클러스터에서 migration을 실행하고 인스턴스 간에 데이터를 복제합니다.
클러스터 배포에 대한 중요 고려 사항:
- 클러스터 설정은 새로운 스키마에서 구성되어야 합니다 - 기존 독립형 ClickHouse 인스턴스는 클러스터 모드로 변환할 수 없습니다.
- 클러스터링은 외부 관리형 ClickHouse 배포에서만 지원됩니다. 필요한 ZooKeeper 구성이 포함되지 않은 번들 ClickHouse 설치와는 호환되지 않습니다.
- 클러스터 배포를 사용하는 경우 LangSmith는 자동으로:
- 클러스터의 모든 노드에서 데이터베이스 migration 실행
- 클러스터 전체에서 데이터 복제를 위한 테이블 구성
Configuration
이러한 매개변수를 사용하여 프로비저닝된 ClickHouse 데이터베이스를 사용하도록 LangSmith 인스턴스를 구성할 수 있습니다. LangSmith Helm Chart 설치의config.yaml 파일 또는 Docker 설치의 .env 파일을 수정하여 이 작업을 수행할 수 있습니다.
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.