메인 콘텐츠로 건너뛰기
2021년 11월, YouTube는 모든 동영상의 공개 싫어요 수를 없앴습니다. 제작자는 여전히 싫어요 수를 확인할 수 있지만, 시청자는 동영상이 받은 좋아요 수만 볼 수 있습니다.
이 데이터셋에는 45억 5천만 개가 넘는 레코드가 있으므로, 리소스가 이 정도 규모를 감당할 수 없다면 아래 명령을 그대로 복사해 붙여넣을 때 주의하십시오. 아래 명령은 ClickHouse Cloudproduction 인스턴스에서 실행되었습니다.
데이터는 JSON 포맷이며 archive.org에서 다운로드할 수 있습니다. 동일한 데이터를 S3에도 제공하므로 ClickHouse Cloud 인스턴스로 더 효율적으로 가져올 수 있습니다. 다음은 ClickHouse Cloud에서 테이블을 생성하고 데이터를 삽입하는 단계입니다.
아래 단계는 ClickHouse 로컬 설치 환경에서도 쉽게 작동합니다. 유일한 차이점은 s3cluster 대신 s3 함수를 사용해야 한다는 점입니다(클러스터가 구성되어 있다면 예외이며, 이 경우 default를 클러스터 이름으로 변경하십시오).

단계별 안내

1

데이터 탐색

데이터가 어떤 형태인지 살펴보겠습니다. s3cluster 테이블 함수는 테이블을 반환하므로 결과를 DESCRIBE할 수 있습니다:
ClickHouse는 JSON 파일에서 다음과 같은 스키마를 자동으로 추론합니다:
2

테이블 생성

추론한 스키마를 바탕으로 데이터 타입을 정리하고 기본 키(primary key)를 추가했습니다. 다음 테이블을 정의하세요:
3

데이터 삽입

다음 명령은 S3 파일의 레코드를 youtube 테이블로 스트리밍합니다.
이 작업은 매우 많은 양의 데이터를 삽입합니다. 총 46억 5천만 개의 행이 삽입됩니다. 전체 데이터셋이 필요하지 않다면 원하는 행 수를 지정한 LIMIT 절을 추가하면 됩니다.
INSERT 명령에 대한 몇 가지 설명입니다:
  • 들어오는 날짜 필드의 포맷이 올바르지 않을 수 있을 때 parseDateTimeBestEffortUSOrZero 함수가 유용합니다. fetch_date가 제대로 파싱되지 않으면 0으로 설정됩니다
  • upload_date 컬럼에는 유효한 날짜가 들어 있지만, “4 hours ago” 같은 문자열도 포함되어 있습니다. 이는 분명 유효한 날짜가 아닙니다. 그래서 원래 값을 upload_date_str에 저장하고, toDate(parseDateTimeBestEffortUSOrZero(upload_date::String))로 파싱을 시도하도록 했습니다. 파싱에 실패하면 0이 반환됩니다
  • 테이블에 NULL 값이 들어가지 않도록 ifNull을 사용했습니다. 들어오는 값이 NULL이면 ifNull 함수가 값을 빈 문자열로 설정합니다
4

행 수 세기

ClickHouse Cloud의 SQL 콘솔에서 새 탭을 열거나 새 clickhouse-client 창을 열고, 개수가 증가하는 것을 확인하세요. 서버 리소스에 따라 45.6억 개의 행을 삽입하는 데는 다소 시간이 걸립니다. (설정을 별도로 조정하지 않으면 약 4.5시간이 걸립니다.)
5

데이터 탐색

데이터를 삽입한 후, 좋아하는 동영상이나 채널의 싫어요 개수를 세어 보세요. ClickHouse가 업로드한 동영상이 몇 개인지 확인해 보겠습니다:
위 쿼리가 매우 빠르게 실행되는 이유는 기본 키(primary key)의 첫 번째 컬럼으로 uploader를 선택했기 때문입니다. 따라서 237k개 행만 처리하면 되었습니다.
이제 ClickHouse 동영상의 좋아요와 싫어요를 살펴보겠습니다:
응답은 다음과 같습니다:
다음은 title 또는 description 필드에 ClickHouse가 포함된 비디오의 검색 결과입니다:
이 쿼리는 모든 행을 처리해야 하고, 문자열 컬럼 2개도 파싱해야 합니다. 그럼에도 초당 415만 행의 준수한 성능을 보여줍니다:
결과는 다음과 같습니다.

질문

누군가 댓글을 비활성화하면 사람들이 실제로 좋아요나 싫어요를 누를 가능성이 낮아질까요?

댓글이 비활성화되면 사람들은 영상에 대한 감정을 표현하기 위해 좋아요나 싫어요를 누를 가능성이 더 높아질까요?
댓글 활성화는 더 높은 참여율과 연관이 있는 것으로 보입니다.

시간에 따라 동영상 수는 어떻게 변하나요 - 주목할 만한 이벤트는 무엇인가요?

코로나19 전후로 업로더가 급증한 점이 눈에 띕니다.

시간이 지나면서 자막이 더 많아진 시점은 언제인가

음성 인식 기술의 발전으로 동영상 자막을 만드는 일이 그 어느 때보다 쉬워졌고, YouTube는 2009년 말 자동 자막 기능을 추가했습니다. 그렇다면 증가 폭이 커진 시점이 바로 그때였을까요?
데이터 결과를 보면 2009년에 급증한 것이 나타납니다. 당시 YouTube가 다른 사람의 동영상에 자막을 업로드할 수 있게 해 주던 커뮤니티 자막 기능을 없애고 있었던 것으로 보입니다. 이로 인해 청각장애인 및 난청 시청자를 위해 제작자가 자신의 동영상에 자막을 추가하도록 하는 매우 성공적인 캠페인이 촉발되었습니다.

시간에 따른 상위 업로더

조회수가 늘어날수록 좋아요 비율은 어떻게 달라집니까?

조회수는 어떻게 분산되나요?

마지막 수정일 2026년 6월 10일