로컬 transform 미리보기의 데이터 보안
로컬 Palantir 확장의 Preview Engine은 필요한 데이터 일부를 개발자 컴퓨터의 메모리로 가져와 코드를 실행합니다. 로컬 도구나 제3자 확장이 필요할 때 사용할 수 있지만 다운로드 권한과 로컬 데이터 취급을 검토해야 합니다.
입력 데이터를 플랫폼에서 처리하려면 VS Code 작업공간을 사용합니다. 브라우저에 표시하는 결과와 입력 데이터셋의 전송 위치는 구분합니다.
권한 조건
로컬 preview에는 다음 두 조건이 모두 필요합니다.
- 플랫폼 관리자가 Control Panel의 Code Repositories 설정에서 로컬 preview를 허용합니다.
- 모든 입력 데이터셋에 Download 작업 권한을 가집니다. 증분 transform은 기존 출력 데이터셋의 Download 권한도 필요합니다.
이 권한은 데이터셋을 Foundry API로 내보낼 수 있는 권한입니다. 관련 downloader 작업 이름은 s3-proxy:datasets-read와 api:datasets-read입니다. 확장을 설치했다는 사실만으로 데이터셋 권한이 늘어나지는 않습니다.
입력 전송과 메모리
Preview Engine은 Foundry의 S3 호환 API로 연결하고 PySpark 또는 lightweight 경로의 Polars가 필요한 부분을 메모리로 스트리밍합니다. 전송 범위는 코드로 정의한 필터와 transform 로직에 따라 달라집니다.
Preview Engine의 입력 데이터셋 다운로드 경로는 입력을 디스크에 저장하지 않으며 미리보기 실행의 입력 캐시는 메모리에 둡니다. 각 로컬 preview의 플랫폼 접근은 감사 이벤트로 기록됩니다. 이것이 로컬 편집기나 파일 쓰기 전체의 감사 전사문을 뜻하지는 않습니다.
결과의 로컬 디스크 캐시
실행이 끝나면 결과를 Preview 표에 표시하기 위해 출력 데이터셋의 최대 10,000행을 로컬 캐시 폴더에 저장합니다. 이 결과 캐시는 입력의 메모리 스트리밍과 다른 저장입니다. 호스팅 작업공간의 결과 표 표시 한도와도 구분합니다.
위치는 확장의 Palantir > Cache: Path 설정에서 정합니다.
캐시는 다음 시점에 삭제합니다.
- 새 preview 실행 시작
- 창의 Close 같은 정상적인 VS Code 종료
- VS Code 시작
비정상 종료 직후에도 항상 즉시 지워졌다고 가정하지 않습니다. 필요하면 Command Palette의 Delete all locally stored Python transforms preview results를 실행합니다. 키 바인딩에는 palantir.transforms.datasets.cleanUp 식별자를 사용할 수 있습니다.
사용자 코드와 외부 도구의 위험
이 수명 관리 기능은 실수로 데이터를 남기는 위험을 줄이지만 의도적인 내보내기를 막는 보안 장치는 아닙니다. 사용자가 실행한 코드가 다른 로컬 폴더에 데이터를 저장하는 행위를 막을 수는 없습니다.
Download 권한을 받은 사용자는 API로 데이터를 가져올 때와 마찬가지로 로컬 preview에서도 데이터를 적절하게 취급해야 합니다. 기술적 준비는 로컬 preview 설정을 따릅니다.