Format Atlas

비교

Arrow와 ORC 비교

Apache Arrow는 분석과 데이터 교환을 위한 언어 독립적인 메모리 컬럼 표현입니다. ORC는 행을 stripe로 나누고 컬럼 데이터·인덱스·통계를 저장해 분석 읽기를 지원하는 컬럼형 파일 형식입니다.

어떤 형식을 선택해야 할까요?

프로세스나 시스템 간 표 데이터를 메모리에서 효율적으로 전달하려면 Arrow를 선택하세요. 압축·컬럼 선택·stripe 읽기가 유리한 영속 데이터 레이크나 Hive 워크플로에는 ORC를 고려하세요. Arrow 메모리 레이아웃과 IPC 파일을 혼동하지 마세요.

적합한 경우 Apache Arrow IPC

호환되는 프로그램과 언어 사이에서 열 지향 테이블 데이터 교환 · Arrow를 지원하는 도구 간 분석 데이터 세트 전달

  • Arrow 라이브러리와 분석 엔진 사이에서 형식이 지정된 데이터 이동
  • IPC 파일 형식에서 레코드 배치에 임의 접근

적합한 경우 ORC

대규모 구조화된 표를 분석용으로 저장

  • 선택한 열과 인덱스를 활용하는 쿼리

기본 정보

항목Apache Arrow IPCORC
확장자.arrow, .feather, .arrows.orc
MIME 유형application/vnd.apache.arrow.file, application/vnd.apache.arrow.streamapplication/vnd.apache.orc
주요 용도호환되는 프로그램과 언어 사이에서 열 지향 테이블 데이터 교환 · Arrow를 지원하는 도구 간 분석 데이터 세트 전달대규모 구조화된 표를 분석용으로 저장
여는 방법Apache Arrow 라이브러리나 Arrow IPC를 지원하는 분석 도구로 읽습니다. .arrow는 보통 파일 형식, .arrows는 스트림 형식이지만 받는 도구가 기대하는 IPC 방식과 압축 코덱을 확인하세요. Feather 파일은 이전 Feather V1과의 호환성도 점검해야 합니다.ORC 지원 도구로 스키마, 열, 행 수, 압축 및 예시 값을 확인하세요.
내보내기 또는 변환Parquet은 분석 데이터 저장과 배포에, CSV는 단순한 표 교환에 적합할 수 있습니다. 변환 과정에서 Arrow 고유 형식, 중첩 구조, 사전 인코딩 또는 압축 설정이 바뀌거나 사라질 수 있습니다. 필요한 형식과 정밀도를 확인하고 원본 데이터를 보관하세요.Parquet이나 CSV로 바꿀 때 형식, null, 타임스탬프, 소수, 파티션 및 행 수를 확인하세요.

용도별 선택

Arrow 라이브러리와 분석 엔진 사이에서 형식이 지정된 데이터 이동

호환되는 프로그램과 언어 사이에서 열 지향 테이블 데이터 교환 · Arrow를 지원하는 도구 간 분석 데이터 세트 전달

Apache Arrow IPC

IPC 파일 형식에서 레코드 배치에 임의 접근

호환되는 프로그램과 언어 사이에서 열 지향 테이블 데이터 교환 · Arrow를 지원하는 도구 간 분석 데이터 세트 전달

Apache Arrow IPC

선택한 열과 인덱스를 활용하는 쿼리

대규모 구조화된 표를 분석용으로 저장

ORC

핵심 사항 1

Arrow는 메모리 배열·버퍼·타입을 명세하며 경우에 따라 제로카피 공유를 지원합니다. ORC 파일은 컬럼 스트림, stripe, 인덱스와 footer 통계를 사용합니다.

차이 자세히 보기

핵심 사항 2

Arrow는 효율적인 메모리 표현 및 전송에 중점을 둡니다. ORC는 압축 영속 저장과 선택적 분석 읽기를 위해 설계되었습니다.

차이 자세히 보기

차이 자세히 보기

상호 운용 가능한 메모리 분석과 전송에는 Arrow를 사용하세요. 저장 및 쿼리 생태계가 ORC 파일을 지원하고 컬럼 가지치기와 인덱스를 활용한다면 ORC를 선택하세요. 실제 부하로 측정하세요.

  • Arrow는 메모리의 컬럼 배열과 버퍼를 정의합니다. Arrow IPC/파일 형식은 이를 직렬화하고, ORC는 stripe와 컬럼 스트림을 포함한 별도의 디스크 구조를 정의합니다.
  • ORC는 압축, 컬럼 투영, stripe/행 인덱스로 쿼리에서 읽는 데이터를 줄일 수 있습니다. Arrow의 핵심 명세는 메모리 형식이며 모든 영속 테이블 형식을 대체하지 않습니다.
  • 읽기·쓰기 지원 및 타입, null, 타임스탬프, 십진수 매핑을 확인하세요. 실제 codec, 엔진, 쿼리로 크기와 성능을 비교하세요.

자주 묻는 질문

Arrow 테이블 파일은 ORC와 같은 형식인가요?

아닙니다. Arrow는 메모리 컬럼 형식과 별도 IPC 형식을 정의하고 ORC는 고유한 컬럼형 파일 형식입니다.

자세히 보기

참고 자료 및 사양