mongoose - 关于mongodb的建模,有人建议我 把 “商品”的“品牌名” 从ObjectId 转为 string,这样好吗?
天蓬老师
天蓬老师 2017-04-25 09:02:36
0
1
651

他说这样更方便查询,是呀,傻子也知道这样便于查询。我质疑说这样在存储时会不好,但他说有shortId什么的,求解答!

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

모든 응답(1)
给我你的怀抱

이를 위해서는 특정 업종에 대한 상세한 분석이 필요합니다.
브랜드 이름을 ObjectId으로 설정하면 해당 브랜드를 보관하는 또 다른 collection이 있다는 의미입니다. 이는 일반적인 관계형 데이터베이스 방식으로, mongodb의 경우 제품의 브랜드 이름을 얻으려고 할 때마다 읽기 작업이 한 번 더 필요합니다.

String으로 설정하면 한 번의 작업으로 모든 제품 정보와 브랜드 이름을 검색할 수 있지만, 한 번의 요청으로 브랜드에 대한 일부 정보도 얻어야 하는 경우에는 브랜드를 수정하는 것이 매우 번거롭습니다. 브랜드가 위치한 국가, 확장성이 충분하지 않기 때문에 다시 쿼리를 수행해야 합니다.

Object으로 설정된 경우 예:

으아악

이렇게 하면 확장성 문제를 해결할 수 있고, 쿼리 속도도 매우 빠릅니다. 제품 브랜드 정보가 자주 업데이트되지 않는다면 이 방법을 추천합니다. 데이터 중복 정도는 높아지지만 쿼리 속도는 향상됩니다.

브랜드 정보가 자주 업데이트된다면 ObjectId을 사용하는 것이 더 좋습니다. 한 번 더 쿼리해야 하지만 신뢰성이 향상됩니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿