다음을 통해 공유


풀 모범 사례

이 문서에서는 풀의 정의와 풀을 가장 잘 구성하는 방법을 설명합니다. 풀을 만드는 방법에 대한 자세한 내용은 풀 구성 참조자료를 참조하세요.

참고 항목

워크로드가 서버리스 컴퓨팅을 지원하는 경우 Databricks는 항상 확장 가능한 컴퓨팅을 활용하기 위해 풀 대신 서버리스 컴퓨팅을 사용하는 것이 좋습니다. 서버리스 컴퓨팅에 연결을 참조하세요.

풀 고려 사항

풀을 만들 때 다음 사항을 고려하세요:

  • 대상 워크로드에 따라 인스턴스 유형 및 Azure Databricks Runtime을 사용하여 풀 만들기
  • 가능한 경우 스폿 인스턴스로 풀을 채워 비용 줄이기 스폿 풀만 작업자 노드로 사용합니다. 드라이버 노드는 주문형 인스턴스를 사용해야 합니다.
  • 짧은 실행 시간과 엄격한 실행 시간 요구 사항을 갖는 작업의 경우 주문형 인스턴스로 풀 채우기
  • 풀 태그 및 클러스터 태그를 사용하여 청구 관리하기
  • 클러스터에서 인스턴스가 필요할 때 즉시 사용할 수 있도록 풀을 미리 채우기

워크로드에 따라 풀 만들기

조직에서 일반적으로 사용하는 각 인스턴스 유형 및 Azure Databricks Runtime에 대해 풀을 만들면 인스턴스 획득 시간을 최소화할 수 있습니다. 예를 들어, 대부분의 데이터 엔지니어링 클러스터에서 인스턴스 형식 A를 사용하고, 데이터 과학 클러스터에서 인스턴스 형식 B를 사용하며, 분석 클러스터에서 인스턴스 형식 C를 사용하는 경우 각 인스턴스 유형으로 풀을 만듭니다.

스폿 인스턴스 풀 사용

드라이버 노드와 워커 노드의 요구 사항이 서로 다른 경우 각각 다른 풀을 사용하세요.

Azure Databricks는 드라이버 노드에 스폿 인스턴스를 사용하지 않는 것이 좋습니다. 작업자 노드에 스폿 풀을 사용하는 경우 주문형 풀을 드라이버 유형이select.

짧은 실행 시간과 엄격한 실행 시간 요구 사항을 갖는 작업의 경우 주문형 인스턴스를 사용하도록 풀을 구성합니다. 주문형 인스턴스를 사용하여, 획득된 인스턴스가 스폿 시장에서 더 높은 입찰자에게 가는 일을 방지합니다.

대화형 개발을 지원하는 클러스터 또는 안정성보다 비용 절감이 우선되는 작업의 경우 스폿 인스턴스를 사용하도록 풀을 구성합니다.

풀을 태그하여 비용 및 청구 관리하기

풀에 올바른 비용 센터 태그를 지정하면 비용 및 사용량 청구를 관리할 수 있습니다. 여러 개의 사용자 지정 태그를 사용하여 여러 비용 센터를 하나의 풀에 연결할 수 있습니다. 단, 풀에서 클러스터가 만들어질 때 태그가 어떤 식으로 전파되는지를 이해하는 것이 중요합니다. 풀의 태그는 기본 클라우드 공급자 인스턴스로 전파되지만 클러스터의 태그는 전파되지 않습니다. 클라우드 공급자 컴퓨팅 비용의 청구를 관리하는 데 필요한 모든 사용자 지정 태그를 풀에 적용합니다.

풀 태그와 클러스터 태그는 모두 Azure Databricks 청구로 전파됩니다. 클러스터 및 풀 태그의 조합을 사용하여 Azure Databricks 단위의 청구를 관리할 수 있습니다.

자세한 내용은 태그를 사용하여 사용량 모니터링을 참조하세요.

풀을 구성하여 비용 제어하기

다음 구성 옵션을 사용하여 풀 비용을 제어할 수 있습니다.

  • Set 최소 유휴 인스턴스를 0으로 설정하여 작업을 수행하지 않는 실행 중인 인스턴스에 대한 비용을 지불하지 않도록 합니다. 절충안은 클러스터가 새 인스턴스를 획득해야 할 때 시간이 증가할 가능성이 있다는 것입니다.
  • 예상 사용량에 따라 Set최대 용량. 이렇게 하면 풀에서 사용된 인스턴스 및 유휴 인스턴스의 최대 수에 대한 최대값이 설정됩니다. 작업 또는 클러스터가 최대 용량으로 풀에서 인스턴스를 요청하는 경우 요청이 실패하고 클러스터가 더 많은 인스턴스를 획득하지 못합니다. 따라서 Databricks는 엄격한 인스턴스 할당량이나 예산 constraint가 있을 경우에만 최대 용량을 set할 것을 권장합니다.
  • 유휴 인스턴스 자동 종료 시간을 Set 인스턴스가 클러스터에서 해제된 시점과 풀에서 삭제된 시점 사이에 버퍼를 제공합니다. 예약된 작업에 대한 인스턴스의 가용성을 보장하면서 비용을 최소화할 수 있는 기간으로 Set. 예를 들어 작업 A는 오전 8시에 실행되도록 예약되고 완료하는 데 40분이 걸립니다. 작업 B는 오전 9시에 실행될 예정이며 완료하는 데 30분이 걸립니다. 유휴 인스턴스 자동 종료 값을 Set으로 설정하여 20분으로 변경하고, 작업 A가 완료될 때 인스턴스가 풀로 반환되어 작업 B가 시작될 때 사용 가능하도록 합니다. 다른 클러스터에서 클레임하지 않는 한 해당 인스턴스는 작업 B가 종료된 후 20분 후에 종료됩니다.

풀 미리 채우기

풀을 완전히 활용하려면 새로 만든 풀을 미리 채우는 것이 좋습니다. 풀 구성에서 최소 유휴 인스턴스를 Set, 0보다 크게 설정하십시오. 또는 이 값을 0으로 set 권장 사항을 따르는 경우 시작 작업을 사용하여 새로 만든 풀에 클러스터에서 액세스할 수 있는 인스턴스가 있는지 확인합니다.

시작 작업을 사용하면 유연한 실행 시간 요구 사항을 갖는 작업이 더 엄격한 성능 요구 사항을 갖는 작업 전에 또는 사용자가 대화형 클러스터의 사용을 시작하기 전에 실행되도록 예약할 수 있습니다. 작업이 완료되면 작업에 사용된 인스턴스가 풀로 다시 해제됩니다. Set 최소 유휴 인스턴스 설정을 0으로 설정하고 유휴 인스턴스 자동 종료 시간을 충분히 높게 set 유휴 인스턴스를 후속 작업에 사용할 수 있도록 합니다.

시작 작업을 사용하면 풀 인스턴스를 늘리고, 풀을 채우고, 다운스트림 작업 또는 대화형 클러스터에 계속 사용할 수 있는 상태로 유지할 수 있습니다.