ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 엑셀에서 데이터베이스로 — 전환 시점 점수표와 이관 전 정제 루틴
    비개발자를 위한 기술 이해 2026. 7. 12. 20:06

    스프레드시트를 언제 버려야 하는가. 이 질문에 "데이터가 많아지면"이라고 답하면 대개 시점을 놓친다. 공식 상한부터 확인하면 이유가 분명해진다.

    마이크로소프트 공식 문서 기준으로 엑셀 워크시트 한 장은 1,048,576행 × 16,384열, 셀 하나에 32,767자까지 담는다. 구글 고객센터는 스프레드시트 한 파일의 상한을 1,000만 셀로 안내한다. 소규모 사업장이 이 벽에 부딪히는 일은 드물다. 그런데도 시트는 무너진다. 한계가 용량이 아닌 다른 축에 있기 때문이다.


    실제 한계는 세 축이다


    첫째는 동시성이다. 구글 고객센터에 따르면 문서 하나는 동시에 100개 탭 또는 기기에서 편집되고, 그 수를 넘으면 소유자와 일부 편집자만 값을 고칠 수 있다. 다만 이 숫자를 안전선으로 읽으면 안 된다. 셋이 같은 칸을 고치는 순간 마지막 저장이 앞선 작업을 덮는다. 경고도 로그도 없다.

    둘째는 무결성이다. 시트는 형식을 강제하지 않는다. 전화번호 칸이 문자열이든 숫자든 받아들이고, 중복 회원이 두 줄로 들어가도 막지 않는다. 셋째는 권한이다. 시트의 권한 단위는 파일이라, 특정 열만 감추려면 파일을 쪼개야 하고 쪼갠 데이터는 반드시 어긋난다.


    전환 시점 점수표


    아래 항목에 해당하면 점수를 더한다. 합계 3점 이상이면 이관을 검토하고, 5점 이상이면 미루는 비용이 옮기는 비용을 넘어선 상태로 본다.

    | 항목 | 배점 |
    |---|---|
    | 두 사람 이상이 같은 파일을 동시에 수정한다 | 2 |
    | 값 변경 이력을 나중에 따져야 한다(재고·정산·회원) | 2 |
    | 같은 정보가 두 파일 이상에 중복돼 있다 | 1 |
    | 고객·직원이 화면에서 직접 값을 입력할 예정이다 | 2 |
    | 파일 로딩·수식 계산이 눈에 띄게 느려졌다 | 1 |
    | 특정 열만 일부 직원에게 숨겨야 한다 | 1 |

    합계 0~2점이면 시트를 유지하는 편이 경제적이다. 혼자 쓰는 견적표나 월말 정산표를 옮기면 개발·운영 비용만 늘어난다. 전환은 사람이 겹치기 시작할 때 값을 한다.


    이관 비용을 좌우하는 건 정제다


    견적이 갈리는 지점은 개발이 아니라 데이터 정제인 경우가 많다. 옮기기 전에 아래 순서로 정리해두면 협의가 빨라진다.

    1. 열 단위로 자료형을 확정한다. 날짜·금액·전화번호를 각각 어떤 형식으로 통일할지 먼저 정한다.
    2. 중복 행을 판정할 기준 열을 고른다. 회원이면 연락처, 주문이면 주문번호처럼 유일값이 될 열이 필요하다.
    3. 빈칸 처리 규칙을 정한다. 비워둘 수 있는 칸인지, 반드시 채워야 하는 칸인지 구분한다.
    4. 과거 데이터의 보존 범위를 정한다. 3년 치를 전부 옮길지, 최근 1년만 옮기고 나머지는 파일로 보관할지 결정한다.
    5. 정제 전후 행 수를 대조한다. 옮긴 뒤 숫자가 맞지 않으면 어디서 빠졌는지 추적할 근거가 된다.

    이 다섯 가지가 정리돼 있으면 업체가 견적을 좁게 낼 수 있다. 반대로 형식이 뒤섞인 원본을 그대로 넘기면, 정제 공수가 견적의 큰 몫을 차지하고 그 몫은 대체로 발주자가 부담한다.


    옮긴 뒤에도 시트는 남는다


    데이터베이스를 도입한다고 스프레드시트를 버리지는 않는다. 원본은 데이터베이스에 두고, 분석·보고서는 필요할 때 시트로 내려받아 본다. 지켜야 할 규칙은 하나다. 원본은 한 곳에만 둔다. 이 원칙이 깨지면 두 벌의 데이터가 생기고, 결국 처음의 문제로 돌아간다.

    Q. 데이터가 적으면 데이터베이스가 필요 없나요?
    양이 아니라 동시성이 기준이다. 행 1만 개를 넷이 함께 고치는 쪽이 행 50만 개를 혼자 보는 쪽보다 사고 확률이 훨씬 높다.

    Q. 엑셀을 잘 설계하면 데이터베이스를 대신할 수 있나요?
    수식과 매크로로 입력 형식은 어느 정도 강제된다. 그러나 동시에 들어온 두 수정에 순서를 매기는 처리는 흉내 낼 수 없고, 중복 판매 사고는 바로 그 지점에서 난다.


    이력과 권한 — 늦게 드러나는 두 가지


    동시성 사고는 눈에 보인다. 중복 판매가 나거나 값이 사라지니 바로 안다. 반면 이력과 권한 문제는 한참 뒤에 드러난다.

    정산이 틀어졌을 때 "이 금액을 누가 언제 고쳤는가"를 따질 수 없으면 원인을 찾지 못한다. 시트에도 변경 기록이 남지만 셀 단위로 추적하기는 어렵고, 몇 달 지난 기록은 사실상 못 쓴다. 데이터베이스는 값이 바뀔 때 누가 언제 무엇을 어떻게 바꿨는지 기록으로 남기도록 설계할 수 있다.

    권한도 마찬가지다. 시트의 권한 단위는 파일이라, 아르바이트생에게 배송 상태만 보여주고 매출은 감추려면 파일을 따로 만들어야 한다. 그 순간 같은 데이터가 두 벌이 되고, 두 벌은 시간이 지나면 반드시 어긋난다. 데이터베이스에서는 같은 원본을 두고 열 단위로 접근을 나눈다.

    원문: https://nova-lab.dev/r/t/what-is-database


    자주 묻는 질문


    Q. 엑셀 대신 데이터베이스를 써야 하는 기준이 뭔가요?

    데이터 양보다 동시성이 기준이다.

    두 사람 이상이 같은 파일을 동시에 고치거나, 누가 언제 값을 바꿨는지 추적해야 한다면 시트로는 오래 못 간다.

    혼자 계산하고 끝나는 일이라면 엑셀이 여전히 빠르고 싸다.

     

    Q. 구글시트는 몇 명까지 같이 쓸 수 있나요?

    구글 고객센터에 따르면 문서 하나는 동시에 100개 탭 또는 기기에서만 편집할 수 있고, 그 수를 넘으면 소유자와 일부 편집자만 수정할 수 있다.

    다만 실무에서는 셋만 함께 고쳐도 값이 덮이는 사고가 나기 때문에 이 숫자를 안전선으로 보면 안 된다.

     

    Q. 지금 쌓인 엑셀 데이터를 그대로 옮길 수 있나요?

    대부분 옮길 수 있다.

    다만 형식이 뒤섞인 칸(전화번호·날짜·금액)은 정리하는 작업이 따로 붙고, 그 정리에 드는 시간이 이관 비용의 큰 몫을 차지한다.

    견적을 받을 때 데이터 정제가 포함된 금액인지 따로 확인하는 게 좋다.

    글 · 노바랩 NovaLab · https://nova-lab.dev

Designed by Tistory.