Share via


풀 모범 사례

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

풀 고려 사항

풀을 만들 때 다음을 고려합니다.

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

워크로드에 따라 풀 만들기

드라이버 노드와 작업자 노드에 서로 다른 요구 사항이 있는 경우 각각에 대해 서로 다른 풀을 만듭니다.

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

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

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

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

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

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

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

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

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

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

풀 미리 채우기

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

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

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