목록MongoDB (2)
몰입공간

#1. GridFS 기존의 mongoDB BSON 데이터의 자료 크기는 16MB로 제한하기 때문에 사진이나 동영상과 같은 미디어파일을 그대로 업로드 하기에 무리가 있었다. 이런 문제를 해결할 강력한 도구가 바로 GridFS이다. Gridfs는 파일 형태의 자료를 서로 참조가 가능한 2개의 컬렉션으로 분리 저장한다. 파일의 용량을 255kb을 기준으로 여러개의 chunk형태로 DB에 저장하고 서버에서 파일을 조회할 때 chunk형태로 분리된 파일과 다른 컬렉션에 저장된 메타데이터 정보를 참조해 조합하여 내보낸다. (사용자가 수정하지 않으면 자동으로 fs라는 bucket 이름을 붙인다.) fs.files : 업로드한 파일의 metadata를 저장 fs.chunks: 파일을 binary 형태로 저장 (파일의 ..

네이버 영화 페이지 리스트의 영화 정보를 크롤링하여 게시하는 프로그램 구현 도중에 중복데이터가 발생하여 그대로 게시되는 일이 발생했습니다. 이참에 mongoDB에 저장한 중복데이터를 삭제하는 방법을 알아보겠습니다. 네이버 영화 랭킹에서 다음과 같이 조회순, 평점순으로 영화 정보를 크롤링하면 중복되는 영화(데이터)가 발생하기 마련입니다. 조회순 50개, 평점순 36개로 총 86개의 데이터가 DB에 저장됩니다. mongoDB에는 aggregate라는 강력한 데이터 처리 메서드가 있습니다. db.collection.aggregate(pipeline, options) 첫번째 매개변수인 pipeline이 핵심 개념인데 여러 스테이지(조건) 으로 이루어진 리스트로 저장되며 각각의 스테이지를 통해 데이터를 가공 및 ..