개발자

MongoDB에서 Aggregation Operators는 통계용으로만 써야할까요?

2023년 08월 16일조회 96

공식 문서를 보면 통계용으로만 써야하는건가 싶어서요. Aggregation operations process multiple documents and return computed results. You can use aggregation operations to: - Group values from multiple documents together. - Perform operations on the grouped data to return a single result. - Analyze data changes over time.

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

인기 답변

손정현님의 프로필 사진

안녕하세요! 몽고 디비 Aggregation Operator를 꼭 통계용으로만 쓸 필요는 없습니다. 상황에 맞게 사용하시면 될 것 같아요! 데이터 규모, 조회하는 쿼리의 유형, 인덱스 여부 등 여러가지 고려사항에 따라서 적절한 aggregation pipeline을 만들어주시면 되지 않을까 싶어요. 물론, aggregation pipeline도 만능은 아니어서 limitations를 잘 숙지하시고 작업하면 좋을 것 같아요. 공식 문서에 aggregation pipeline 최적화를 위한 내용도 있으니 참고해보세요. - https://www.mongodb.com/docs/manual/core/aggregation-pipeline-limits/ - https://www.mongodb.com/docs/manual/core/aggregation-pipeline-optimization/ 아 참고로 커리어리 부트캠프 비교 페이지의 데이터는 몽고 디비를 사용하고 있으며 초창기에는 조회 쿼리에서 aggregation pipeline을 사용했었습니다. 데이터가 그렇게 많지 않아서 서비스하는데 크게 무리 없었던걸로 기억합니다. 물론 지금은 더 나은 유지보수를 위해서 변경했습니다 :)

토리님의 프로필 사진

토리

애드테크 백엔드 개발자2024년 02월 22일

안녕하세요, 혹시 지금은 aggregation pipeline 대신 어떤걸로 변경했는지 여쭤봐도 될까요?

손정현님의 프로필 사진

손정현

엔지니어2024년 02월 22일

안녕하세요, 제가 기억하기로는 당시 aggregation pipeline으로 주로 하던게 addFields와 몇 가지 필터링 및 정렬이어서 addFields 값을 코드로 동적으로 할당하지 않고 원천 데이터를 저장할 때 addFields로 계산하던 데이터도 같이 연산해서 직접 데이터 구조에 추가하는 방식으로 변경했습니다. 이후 인덱싱도 추가했던 것 같아요.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!