데이터베이스의 작동 방식
189
작성한 질문수 14
강의 내용과는 조금 별개로 궁금한 점이 있어서 질문드립니다.
지금 테스트환경에서는 userModel을 한두개 생성해서 테스트하지만, 실제로 네임드 앱들은 유저의 수가 수억개씩 존재하는데, 그렇게되면 데이터베이스가 특정 PostModel에 해당하는 하나의 user객체를 식별하는데 오랜 시간이 걸리지 않나요?
그 시간 차이가 미비해서 따로 신경쓰지 않아도 되는건지, 혹은 컴퓨터만의 쿼리 탐색 방법이 따로 존재하는건지 궁금합니다!
답변 1
1
안녕하세요!
데이터베이스 효율을 올리는 방법은 다양합니다.
데이터베이스 자체에서 할 수 있는 가장 좋은 방법은 index를 이용하는겁니다.
강의에서 따로 멘션하지는 않았지만 primary key도 index의 일종으로 select 오퍼레이션을 매우 빠르게 할 수 있도록 해줍니다. 다행이도 index는 primary key 외에 어떤 칼럼이든 적용 할 수 있어서 원하는 쿼리의 속도를 최대치로 올릴 수 있습니다.
부가적으로는 캐싱을 할 수 있습니다 (redis등 사용).
감사합니다!
cascade 질문
0
38
1
@types/bcrypt 설치과정이 누락된것같습니다.
0
45
1
process.env port key 에러
0
45
1
추상화
0
48
1
[공유] DTO optional 필드가 undefined로 잡혀 TypeORM 조건이 깨지는 현상
0
93
2
where 키워드가 들어가는 메서드와 아닌 메서드
0
56
1
BearerTokenGuard에서 db를 조회해서 유저 정보를 불러오는 이유?
0
69
1
app.controller app.service 는 지워도되나요?
0
69
1
@JoinColumn을 쓰는 경우와 안쓰는 경우의 차이
0
78
1
포트 3000에서 listen하는 곳까지 넘어가지 않습니다.
0
64
1
PickType 사용 시 `as const`를 꼭 사용해야 하나요?
0
102
2
socket connect 오류
0
96
2
강의를 들으면서 궁금한 점
0
97
2
DELETE 요청의 반환값은 어떤 기준으로 결정하는 게 좋을까요?
0
59
2
커리큘럼 질문
0
98
2
put 요청은 언제
0
90
3
typeorm VS prisma
0
343
2
142 강의 > 4:00 > 포스트멘 활용 관련 질문 드립니다.
0
76
2
User 데코레이터 버그 수정 전달드립니다.
0
67
1
git 주소 부탁드립니다.
0
112
2
nest g resource 명령어 에러
0
99
2
로그인 엔드포인트 관련 질문
0
84
2
yarn으로 express 다운 후 node 2_server.js 실행 안되는 경우
0
146
3
"흔히 사용되는 메서드" 강의 관련 질문입니다~
0
95
2





