Sharing custom workloads
출처: 문서
본문
사용자 정의 워크로드 공유
사용자 정의 워크로드를 GitHub의 workloads repository에 업로드하여 다른 OpenSearch 사용자와 공유할 수 있습니다.
워크로드 데이터셋에 포함된 데이터에 독점 데이터나 개인 식별 정보(PII)가 포함되지 않도록 하세요.
사용자 정의 워크로드를 공유하려면 다음 단계를 따르세요.
README.md 만들기
다음 내용을 포함하는 상세한 README.MD 파일을 제공하세요:
- 워크로드의 목적. 워크로드에 대한 설명을 작성할 때는 특정 용도와 해당 사용 사례가 workloads repository의 다른 워크로드와 어떻게 다른지 고려하세요.
- 데이터 구조를 이해하는 데 도움이 되는 데이터셋의 예제 문서.
- 워크로드를 사용자 정의하는 데 사용할 수 있는 워크로드 매개변수.
- 워크로드에 포함된 기본 테스트 절차와 워크로드가 실행할 수 있는 기타 테스트 절차 목록.
- 테스트 실행 후 워크로드가 생성하는 출력 샘플.
- 사용자와 OpenSearch Benchmark가 데이터셋을 사용할 수 있는 권한을 부여하는 오픈소스 라이선스 사본.
예제 워크로드 README 파일은 http_logs README를 참조하세요.
워크로드 구조 확인
워크로드에는 다음 파일이 포함되어야 합니다:
workload.jsonindex.jsonfiles.txttest_procedures/default.jsonoperations/default.json
두 default.json 파일 이름은 설명적인 이름으로 사용자 정의할 수 있습니다. 워크로드에는 더 동적인 기능을 추가하기 위해 선택적 workload.py 파일을 포함할 수 있습니다. 파일 내용에 대한 자세한 내용은 워크로드 구조를 참조하세요.
워크로드 테스트
OpenSearch Benchmark에 기여하는 모든 워크로드는 다음 테스트 요구 사항을 충족해야 합니다:
- 워크로드를 탐색하고 예제를 생성하기 위해 실행되는 모든 테스트는 OpenSearch 클러스터를 대상으로 해야 합니다.
- 워크로드는 모든 통합 테스트를 통과해야 합니다. 워크로드가 통합 테스트를 통과하는지 확인하려면 다음 단계를 따르세요:
- workloads repository의 포크된 복사본에 워크로드를 추가하세요.
opensearch-benchmark-workloads저장소와 OpenSeach Benchmark 저장소를 모두 포크했는지 확인하세요. - 포크된 OpenSearch Benchmark 저장소에서
/osbenchmark/it/resources디렉토리의benchmark-os-it.ini및benchmark-in-memory.ini파일을 업데이트하여 워크로드가 포함된 포크된 워크로드 저장소를 가리키도록 하세요. .ini파일을 수정한 후 변경 사항을 테스트용 브랜치에 커밋하세요.- 변경 사항을 커밋한 브랜치를 선택하여 GitHub Actions를 사용해 통합 테스트를 실행하세요. 테스트가 예상대로 실행되었는지 확인하세요.
- 통합 테스트가 예상대로 실행되면 포크된 워크로드 저장소로 이동하여 워크로드 변경 사항을
1및2브랜치에 병합하세요. 이렇게 하면 워크로드가 OpenSearch Benchmark의 두 주요 버전에 모두 표시됩니다.
- workloads repository의 포크된 복사본에 워크로드를 추가하세요.
PR 만들기
워크로드 테스트 후 포크에서 opensearch-project workloads repository로 풀 리퀘스트(PR)를 생성하세요. PR 설명에 샘플 출력과 요약 결과를 추가하세요. OpenSearch Benchmark 유지 관리자가 PR을 검토합니다.
PR이 승인되면 데이터셋의 데이터 코퍼라를 공유해야 합니다. 그러면 OpenSearch Benchmark 팀이 데이터셋을 공유 S3 버킷에 추가할 수 있습니다. 데이터 코퍼라가 S3 버킷에 저장되어 있는 경우 AWS DataSync를 사용하여 데이터 코퍼라를 공유할 수 있습니다. 그렇지 않은 경우 유지 관리자에게 데이터 코퍼라가 있는 위치를 알려야 합니다.