ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • CSV 120만 행 Excel 직접 열기 실측 — 사용 범위 1,048,576행
    AI Agent 2026. 8. 25. 22:08
    728x90
    반응형

    헤더와 120만 데이터 행의 합성 CSV를 Excel에서 직접 연 다섯 실행에서 사용 범위 1048576행과 마지막 보이는 ID 1048575가 나온 결과입니다.
    직접 열기 다섯 번에서 같은 표시 경계를 확인했습니다. Save As와 저장 뒤 데이터 손실은 아직 확인하지 못했습니다.

    CSV를 분석이나 적재 전에 Excel로 열어 눈으로 확인하는 데이터 실무자를 위한 경계 실험입니다. 여기서 사용 범위는 Excel이 사용 중이라고 보고한 행 범위입니다. 직접 열기에서는 다섯 파일 모두 1,048,576행까지만 보였지만, 이것이 파일 전체를 안전하게 읽거나 저장했다는 뜻은 아닙니다. 1,048,576행을 넘는 CSV는 Excel에서 직접 열어 마지막 행만 보고 전체 입력을 확인하면 안 됩니다. 저장본과 데이터 삭제 여부는 아직 확인하지 못했습니다.

    무엇을 확인하려 했나

    1,200,000개 데이터 행과 헤더 한 행이 든 CSV를 Excel에서 직접 열면, 이 Mac의 워크시트가 마지막으로 보고하는 행과 ID가 무엇인지 확인했습니다. Microsoft는 CSV나 텍스트 파일이 Excel 격자보다 크면 일부 데이터가 로드되지 않을 수 있으며, 원본에 덮어쓰지 말라고 안내합니다. Microsoft 지원 문서를 2026-08-25에 다시 확인했습니다.

    이번 질문은 저장 결과가 아닙니다. 별도 저장 경로 실험에서는 Excel 16.95.3의 일반 SaveSave As가 비활성화되어 저장본을 하나도 만들지 못했습니다. 따라서 저장본의 행 수, 원본 삭제 여부, 다른 이름으로 저장했을 때의 데이터 손실은 아직 확인하지 못했습니다. 여기서는 파일을 열고 관찰한 뒤 저장하지 않고 닫았습니다.

    사전등록한 기준은 다섯 측정 파일 모두에서 사용 범위가 정확히 1,048,576행이고, 헤더가 첫 행을 차지할 때 마지막 행의 ID가 1,048,575인 경우였습니다.

    어떻게 돌렸나

    항목 조건
    장비 Apple M4 Max, 통합 메모리 64GB
    이 실행의 시스템 macOS 26.6.2, build 25G83
    Excel 16.95.3
    생성·검증 도구 Python 3.14.6
    입력 헤더 + 결정적으로 생성한 1,200,000 데이터 행 CSV
    측정 횟수 첫 실행은 예열로 빼고, 서로 다른 입력 파일 5개
    난수·설정 해당 없음. ID 1부터 1,200,000까지 같은 순서와 규칙을 사용했습니다.

    각 측정 파일은 별도 이름을 가진 합성 CSV입니다. 각 파일에는 고유 ID, 정수값, 레이블, 그리고 경계 전후 ID의 표식이 들어 있습니다. 자동화로 파일을 직접 열어 사용 범위의 행 수와 경계 셀을 읽고, 저장하지 않은 채 닫았습니다. Save, Save As, Power Query, Data Model은 실행하지 않았습니다.

    입력 직후와 Excel을 저장하지 않고 닫은 직후에 각 CSV를 다시 읽어 데이터 행 수, 최대 ID, 정수 합계, 검증용 요약값을 비교했습니다. 처음 시도는 Excel 열기 대화상자에서 중단되어 직접 열기 관찰과 사후 검증이 없었으므로, 예열이나 집계에 넣지 않았습니다.

    1,048,576행을 넘는 CSV는 Excel에서 직접 열어 마지막 행만 보고 전체 입력을 확인하면 안 됩니다. 원본 행 수는 데이터 처리 도구나 코드로 따로 세고, Excel 직접 열기는 일부를 눈으로 보는 용도로만 써야 합니다.

    합성 CSV 생성기와 macOS Excel 직접 열기 runner는 공개 재현 저장소의 Excel 실험에 있습니다. 첫 공개 재실행은 warm-up에서 Excel AppleEvent timeout으로 멈춰 직접 열기 관찰을 만들지 못했습니다. SaveSave As는 실행하지 않았고, 실패 내용은 재실행 기록에 남겼습니다.

    결과

    워밍업은 10.420초였고 사용 범위 1,048,576행, 마지막 확인 ID 1,048,575를 기록했습니다. 아래 표의 다섯 행만 집계했습니다.

    측정 직접 열기 사용 범위 행 수 워크시트 1,048,576행의 ID 입력·사후 검증값 일치 경과 시간(초)
    1회 1,048,576 1,048,575 일치 12.410
    2회 1,048,576 1,048,575 일치 7.440
    3회 1,048,576 1,048,575 일치 6.860
    4회 1,048,576 1,048,575 일치 6.840
    5회 1,048,576 1,048,575 일치 6.350
    집계 지표, n=5 평균 표본 표준편차 개별값
    경과 시간(초) 7.980 2.506 12.410, 7.440, 6.860, 6.840, 6.350
    사용 범위 행 수 1,048,576 0.000 1,048,576 × 5
    마지막 확인 ID 1,048,575 0.000 1,048,575 × 5

    다섯 파일에서 입력·사후 검증의 데이터 행 수, 최대 ID, 정수 합계, 검증용 요약값은 모두 일치했습니다. Excel로 저장한 파일은 없습니다.

    헤더와 120만 데이터 행의 합성 CSV를 Excel에서 직접 연 다섯 실행에서 사용 범위 1048576행과 마지막 보이는 ID 1048575가 나온 세로 결과 요약입니다.
    직접 열기 다섯 번에서 같은 표시 경계를 확인했습니다. Save As와 저장 뒤 데이터 손실은 아직 확인하지 못했습니다.

    뭐가 달랐나

    사전등록한 직접 열기 경계는 다섯 측정 파일에서 모두 관찰됐습니다. 헤더가 워크시트 첫 행을 차지한 상태에서 사용 범위는 1,048,576행이었고, 그 범위의 마지막 행에는 ID 1,048,575가 있었습니다.

    이 관측은 Microsoft가 문서화한 워크시트 행 한계와 같은 경계를 보입니다. 다만 이 실험은 사용 범위와 경계 셀을 읽은 결과입니다. Excel 내부에서 파일을 어떤 방식으로 보관했는지, 저장했을 때 어떤 행이 사라지는지는 이 숫자만으로 판단할 수 없습니다.

    파일을 저장하지 않고 닫은 뒤 검증용 요약값이 입력과 같았다는 것은 이 무저장 경로에서 원본 CSV가 변하지 않았다는 관찰입니다. 저장본의 내용이나 원본 덮어쓰기 결과를 검증한 값은 아닙니다.

    남은 것

    정상 워크시트 경로에서 Save As가 활성화되어 별도 CSV를 만들고, 그 파일의 행 수·최대 ID·정수 합계·검증용 요약값을 원본과 비교하는 일은 아직 하지 못했습니다. 이전 시도에서는 SaveSave As가 비활성화되어 그런 출력이 생성되지 않았습니다. 데이터가 삭제됐다고 쓰지 않는 이유입니다.

    이 결과는 Apple M4 Max 한 대, macOS 26.6.2, Excel 16.95.3, 정수 열과 고정된 텍스트 표식을 가진 합성 CSV에 한정됩니다. Windows Excel, Power Query, Data Model, 다른 인코딩·수식·따옴표·빈 행이 섞인 CSV, Excel이 경고를 실제로 표시하는지 여부는 측정하지 않았습니다.

    공개 저장소의 첫 커밋은 이 글의 원래 로컬 결과 뒤에 생겼습니다. 그래서 원래 가설과 결과의 Git 순서를 이 링크로 입증할 수는 없습니다.

    728x90
    반응형
Designed by Tistory.