BrainStorm/문학코딩

[Snack] 디스코드가 1조개의 메세지를 저장하는법 (2)

MOONCO 2023. 8. 15. 14:10

 

 

디스코드

 

서문

저번 게시글에서는,

디스코드가 대량의 데이터를 저장하기 위해서 이전에 사용했던 방식을 살펴보았다.

 

[Snack] 디스코드가 1조개의 메시지를 저장하는법

서문 작년 (2022), 디스코드는 기존의 사용하고 있는 데이터베이스인 Cassandra에서, 새로운 데이터베이스인 ScyllaDB로 모든 데이터를 옮겼다. (migrate) 이는, 디스코드가 서비스에서 중요하게 생각하

defineall.tistory.com

 

또, 그 방식에 따른 문제점과, 사용자와 개발자에게 미친영향을 알아보았다.

결국 그 문제점들 때문에 디스코드는 DB를 교체하기로 결정했다

( 처음에 기술의 정확한 장단점을 최대한 인지하는것이 중요한 이유 )

 

과정

 

1. 데이터 중복 저장하기

하지만, 대용량의 데이터를 저장하는 것과,

저장된 데이터를 옮기는것 (migration) 은 다른 이야기다.

또, 디스코드는 실제로 운영중인 서비스 이므로,

유저에게 양해를 구하고, 잠깐 서비스를 중지할 수 는 없는 노릇.

그렇기에 디스코드는, 새로운 DB인 ScayllaDB 클러스터를 만들고,

새로운 데이터를 기존의 DB 인 Cassandra 와,

새로운 ScayllaDB에 동시에 저장했다.

 

2. ..... ...

 

 

반응형