watsonx.data Spark 또는 IBM Analytics Engine Powered by Apache Spark 에서 배치 처리 환경 준비하기

watsonx.data Spark를 기반으로 하는 Analytics Engine 또는 Apache Spark 을 사용하여 일괄 처리를 구성하려면 배포 환경을 준비하십시오.

참고:IBM Analytics Engine Powered by Apache Spark 는 더 이상 사용되지 않습니다.

watsonx.data Spark 또는 Apache Spark 를 기반으로 하는 Analytics Engine 의 요구 사항

Apache Spark 또는 watsonx.data Spark를 사용하여 배치 처리를 구성하려면 다음 아티팩트가 필요합니다:

  • Apache Spark 또는 watsonx.data Spark의 인스턴스. Analytics Engine powered by Apache Spark 를 설치할 때, 사용자 정의 리소스(CR) 정의를 업데이트하여 다음 줄을 포함시키십시오:

    serviceConfig:
          sparkAdvEnabled: "true"
    
  • 사용자가 생성한 Apache Spark 또는 watsonx.data 스파크 인스턴스에 기본으로 연결된 볼륨과는 별개의 추가 볼륨입니다.

  • 볼륨에 대한 쓰기 권한을 제공하는 Cloud Pak for Data API키입니다. 이 API키는 서비스가 볼륨에 파일을 쓰지 않고 작업을 제출할 수 있도록 하는 플랫폼 API키입니다.

  • Apache Hive 버전 2.3.7 이상 데이터베이스.

  • Watson OpenScale 과 함께 실행되는 HIVE 또는 JDBC 에 대한 일괄처리를 구성하기 위한 특수화된 노트북

  • Hive 데이터베이스에서 작성하는 피드백 테이블, 훈련 데이터 테이블 및 페이로드 로깅 테이블

  • 사후 처리 분석에 사용되는 트랜잭션을 저장하는 drifted_transaction 테이블

1단계: 모델 평가에 필요한 모듈의 Python 아카이브 작성

watsonx.data Spark를 기반으로 하는 Analytics Engine powered by Apache Spark 또는 Analytics Engine 에서 실행되는 모델 평가에는 종속성인 Python 패키지가 필요합니다. 이러한 패키지가 없으면 평가에 실패합니다. 다음 단계를 따라 이러한 종속성을 설치하고 볼륨에 업로드할 수 있습니다:

  1. Python 가 설치된 Linux 운영 체제에 로그인한 후, 다음 명령을 실행하여 Python 의 버전을 확인하십시오. Python 버전이 3.11 인지 확인하십시오.

    python --version
    Python 3.11.9
    
  2. 다음 명령을 실행하여 GCC (GNU Compiler Collection) 라이브러리를 설치하는 python3-devel 패키지를 설치하십시오.

    yum install python3.11-devel
    
  3. Python 가상 환경이 작성된 디렉토리 (예: /opt 폴더) 로 이동하십시오.

    cd /opt
    
  4. 다음 명령을 실행하여 이전에 작성된 가상 환경을 삭제하십시오.

    rm -fr wos_env
    rm -fr wos_env.zip
    

    wos_env 폴더에는 Spark 작업 종속 항목이 있는 Python 가상 환경이 포함되어 있습니다.

  5. 다음 명령을 실행하여 가상 환경을 작성하고 활성화하십시오.

    python -m venv wos_env
    source wos_env/bin/activate
    

    wos_env 가상 환경이 작성되고 source 명령이 가상 환경을 활성화합니다.

  6. 다음 명령을 실행하여 pip 환경을 업그레이드하십시오.

    pip install --upgrade pip
    
  7. 사용하는 Watson OpenScale 의 버전에 따라 다음 방법 중 하나를 사용하여 모든 종속 항목을 설치하십시오.

    • 다음 명령을 실행하여 종속 항목을 설치하십시오.
      • postgresql-devel 패키지를 설치하십시오.

        yum install postgresql-devel
        
      • 종속 항목을 설치하십시오.

        python -m pip install "ibm-metrics-plugin[batch]~=5.4.0"
        
  8. deactivate 명령을 실행하여 가상 환경을 비활성화하십시오.

2단계: 아카이브 업로드

다음 명령을 실행하여 가상 환경을 포함하는 압축 파일을 작성하십시오.

zip -q -r wos_env.zip wos_env/
ls -alt --block-size=M wos_env.zip

API 인증 토큰을 생성한 다음, 필수 전제 조건을 완료할 때 생성한 추가 볼륨에 업로드하십시오.

  • 토큰을 생성하려면 ‘API 인증 토큰 생성’을 참조하세요.

  • 다음 API PUT /volumes 명령어를 사용하여 토큰을 업로드하세요:

    curl -k -i -X PUT 'https://<cluster_url>/zen-volumes/<volume_name>/v1/volumes/files/py_packages%2Fwos_env?extract=true' -H "Authorization: ZenApiKey ${TOKEN}"  -H 'cache-control: no-cache' -H 'content-type: multipart/form-data' -F  'upFile=@/<path_to_parent_dir>/wos_env.zip'
    

watsonx.data Spark 기반 Analytics Engine powered by Apache Spark 또는 Analytics Engine 구성

대량의 데이터를 처리하도록 배치 환경을 준비하기 위해 분석 엔진이 품질 평가를 위해 데이터를 처리하는 데 사용하는 자원을 늘릴 수 있습니다. 다음 설정을 사용하여 Apache Spark 또는 watsonx.data Spark에서 Watson OpenScale 배치 구독에 할당된 리소스를 늘릴 수 있습니다:

  • 배치에 최소 백만 개의 레코드가 포함된 경우 다음 설정을 사용하여 자원을 늘리십시오.

    {
    "driver_cores": 1,
    "driver_memory": 2,
    "executor_cores": 4,
    "executor_memory": 6,
    "max_num_executors": 4,
    "min_num_executors": 2
    }
    
  • 배치에 5백만개 이상의 레코드가 포함된 경우 다음 설정을 사용하여 자원을 늘리십시오.

    {
    "driver_cores": 3,
    "driver_memory": 6,
    "executor_cores": 4,
    "executor_memory": 6,
    "max_num_executors": 4,
    "min_num_executors": 2
    }
    

다음 단계

Watson OpenScale에서 일괄처리 구성