별도의 파이썬 프로세스를 통해 HDF5를 안정적으로 쓰고 동시에 읽을 수 있습니까?


9

시간이 지남에 따라 라이브 데이터를이 프로젝트의 전체 데이터 세트가 포함 된 단일 HDF5 파일로 기록하는 스크립트를 작성 중입니다. Python 3.6으로 작업 중이며 click데이터를 수집하는 데 사용하는 명령 줄 도구를 만들기로 결정했습니다 .

데이터 수집 스크립트가 HDF5 파일에 쓰고 있는데 아직 ML 응용 프로그램이 동일한 파일에서 데이터를 읽으려고하면 어떻게 될까요?

HDF5 병렬 I / O 에 대한 HDF 그룹의 문서를 살펴 보았지만 실제로는 명확하지 않았습니다.

답변:


10

HDF5 병렬 I / O는이 문제를 해결하지 못합니다. 이 기술은 주로 충돌 방지를위한 것이 아니라 성능을위한 것입니다.

원하는 것은 SWMR (단일 작성기 / 다중 판독기)입니다 .

데이터 수집 및 컴퓨터 모델링 시스템은 종종 데이터가 작성되는 동안 데이터를 분석하고 시각화해야합니다. 예를 들어, 어플리케이션이 실행 도중에 일부 기본 매개 변수가 변경되거나 센서가 조정되거나 실행이 완전히 폐기되었음을 나타내는 결과를 생성하는 것은 드문 일이 아닙니다.

사용자가 그러한 시스템을 점검 할 수 있도록 SWMR (수영 선수)이라고하는 동시 읽기 / 쓰기 파일 액세스 패턴을 개발하고 있습니다. SWMR은 단일 작성기 / 다중 판독기의 줄임말입니다. SWMR 기능을 사용하면 기록기 프로세스가 파일에 데이터를 추가하는 동시에 여러 판독기 프로세스가 파일에서 읽을 수 있습니다.

SWMR은 2016-03-30에 출시 된 HDF5 버전 1.10.0 에 처음 포함 되었습니다.

HDF5 파일에 대한 동시 액세스-단일 기록기 / 복수 판독기 (SWMR)

단일 기록기 / 다중 판독기 또는 SWMR 기능을 사용하면 데이터를 쓰는 동안 동시에 데이터를 읽을 수 있습니다. 프로세스와 파일 잠금 간의 통신은 필요하지 않습니다. 프로세스는 POSIX 호환 공통 파일 시스템을 공유하는 한 동일하거나 다른 플랫폼에서 실행될 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.