Categories: 경영과학

강남스타일은 어떻게 유튜브 조회수 측정 서버에 문제를 일으켰나

싸이의 ‘강남스타일’ 인기는 상상을 초월합니다. 적어도 유튜브 코드에 의하면 확실히 그랬죠. 유튜브 조회수가 2,147,483,647 (21억) 을 넘어가면서 조회수를 64비트 숫자로 바꾸어 9,223,372,036,854,775,808(922경)까지 평가할 수 있게 바꾸었죠. 유튜브는 왜 조회수를 21억 이상 셀 수 없었던 걸까요?

답은 컴퓨터가 정보를 계산하는 방법에 있습니다. 숫자가 반도체에 저장되던 하드디스크에 저장되던 모든 숫자는 이진법으로 바뀌어 저장됩니다. 십진법에서는 모든 숫자는 0에서 9까지 10개의 숫자를 써서 나타납니다. 이진법에서는 0과 1 두 숫자를 가지고 숫자를 나타내죠. 십진법에서 세 자리는 각각 100, 10, 1을 나타냅니다. 십진법 세 자리에서 가장 큰 숫자는 999입니다. 이진법에서 세 자리는 각각 4,2,1을 뜻합니다. 세 자릿수로 가장 큰 숫자인 111은 7을 뜻하죠. 8자리 이진법 숫자는 0에서 255까지를 표기할 수 있고, 바이트라고 불립니다. 바이트부터는 각각 제곱수로 올라갑니다. 2바이트 (16비트) 는 0에서 65,535까지, 4바이트(32비트)는 0에서 4,292,967,295까지 표기할 수 있는 식이죠. 유튜브가 처음 만들어졌을 때 프로그래머들은 조회수를 나타내는 숫자에 32비트를 할당하기로 했고, 당시에는 합리적인 결정으로 보였죠.

여기서, 유튜브의 가능한 조회수가 2,147,483,647로 4,294,967,295가 아니라는 데 주목할 필요가 있습니다. 이건 왜 다른 걸까요? 32비트가 양수가 아니기 때문이다. 음수를 표기하기 위해서는 절반인 2,147,483,647을 음수에 할당한 것이죠. 유튜브의 32 비트 숫자는 0에서 4,294,967,295까지 표기하는 대신 -2,147,483,648에서 2,147,483,647까지 표기합니다. 유튜브의 조회는 음수가 될 일이 없지만 일반 데이터베이스나 프로그래밍을 할 때는 음수를 써야 될 때가 있습니다. 따라서 첫 자리는 음수인지 양수인지 판별하는 부호로 읽고 32비트 숫자는 -2,147,483,648로 2,147,483,647 읽는 것이 컴퓨터의 표준 언어지요. 유튜브의 조회수가 20억을 넘어가면서 32비트가 표현할 수 있는 최고 숫자를 넘어가자 더 이상 컴퓨터는 제대로 숫자를 읽을 수가 없었습니다. 결국 유튜브는 조회수를 64비트로 만들고 9,223,372,036,854,775,808(922경)까지 읽게 변환하였죠.

이런 문제를 안고 있는 건 유튜브만이 아닙니다. 수년 전에 지어진 프로그램들은 숫자가 넘쳐흘러 감당하지 못하곤 하죠. 유닉스 시스템이나 이에 기반한 안드로이드, 애플폰, 맥킨토시, 대부분 인터넷 서버는 2038년 1월 19일 03:14:07 시가 되면 더 이상 시간을 계산할 수 없게 됩니다. 유닉스는 1970년 1월 1일부터 모든 시간을 1초 단위로 계산하는데 32비트만 할당하여 2,147,483,647초가 지나면 더 이상 숫자를 읽지 못하는 것이죠. 이는 “2038 버그” 라 하여 밀레니엄 버그에 버금가는 문제로 뽑힙니다. 새로운 버젼들은 시간을 계산하는 숫자를 64로 비트로 바꾸었으나, 오래된 소프트웨어나 기기는 문제를 일으킬 겁니다. 그때가 되면 유튜브 조회수도 922경을 넘어설지도 모르죠. (Economist)

원문보기

heesangju

샌프란시스코에서 프로덕트 매니저로 일하고 있습니다. 기술의 발전과 열린 인터넷이 인류의 진보를 도우리라 믿는 전형적인 실리콘밸리 테크 낙천주의자 너드입니다. 주로 테크/미디어/경영/경제 글을 올립니다만 제3세계, 문화생활, 식음료 관련 글을 쓸 때 더 신나하곤 합니다. 트위터 @heesangju에서 쓸데없는 잡담을 하고 있습니다.

View Comments

  • 사소한 번역오류 발견했습니다. 원문과 감당하는 범위가 1만큼 다르네요. 원문에서는 "from -2,147,483,648 to 2,147,483,647, rather than 0 to 4,294,967,295." 라고 했죠. 컴퓨터 공학도한테는 쉬운 기초 개념입니다 ㅎㅎ..

Recent Posts

“숨 쉬는 건 범죄가 아니다”…노숙도 마찬가지? 간단치 않은 사정들

미국 연방대법원이 노숙을 불법으로 규정하고 노숙자를 처벌한 지방 정부(시 정부)의 행동이 위헌이라는 사건에 관해 이번…

5 시간 ago

[뉴페@스프] Z세대 가치관에 문제 있다? 그런데 부모인 X세대가 더 문제다?

* 뉴스페퍼민트는 SBS의 콘텐츠 플랫폼 스브스프리미엄(스프)에 뉴욕타임스 칼럼을 한 편씩 선정해 번역하고, 글에 관한 해설을…

2 일 ago

기후변화로 인한 ‘변화’가 이 정도였어? 뜻밖의 결과들

기후변화로 인한 이상 기후, 자연 재해는 우리에게 더는 낯선 일이 아닙니다. 아예 "기후 재해"라는 말이…

3 일 ago

[뉴페@스프] 경합지 잡긴 잡아야 하는데… 바이든의 딜레마, 돌파구 있을까

* 뉴스페퍼민트는 SBS의 콘텐츠 플랫폼 스브스프리미엄(스프)에 뉴욕타임스 칼럼을 한 편씩 선정해 번역하고, 글에 관한 해설을…

6 일 ago

데이트 상대로 ‘심리 상담’ 받는 사람을 선호한다고? 운동만 자기 관리가 아니다

보스턴 대학에서 일하는 정신과 의사가 ‘자녀의 정신 건강에 과몰입하는 미국 부모들’에 대한 칼럼을 기고 했습니다.…

6 일 ago

[뉴페@스프] 습관처럼 익숙한 것 너머를 쳐다볼 때 비로소 보이는 것

* 뉴스페퍼민트는 SBS의 콘텐츠 플랫폼 스브스프리미엄(스프)에 뉴욕타임스 칼럼을 한 편씩 선정해 번역하고, 글에 관한 해설을…

1 주 ago