데이터베이스 · L0 입문 · 약 7분
데이터는 어디에 살까?
책상 위, 내 서랍, 은행 금고, 창고
한 줄로 말하면
데이터는 잠깐 쓰는 메모리, 내 기기 저장소, 서버 데이터베이스, 파일 저장소 중 한 곳에 살아. 데이터의 성격에 맞는 집을 골라줘야 해.
내 기기 안: 메모리와 기기 저장소
메모리 (책상 위)
React의 State처럼 앱이 켜져 있는 동안만 기억하는 곳이야. 제일 빠르지만 새로고침하거나 앱을 끄면 사라져. 입력 중인 글, 지금 열린 탭 같은 걸 둬.
기기 저장소 (내 방 서랍)
껐다 켜도 남지만 그 기기에만 있어. 웹은 localStorage, 앱은 AsyncStorage나 SQLite 같은 로컬 저장소를 써. 설정값, 임시 저장 글, 오프라인용 사본을 두기 좋아.
서버 쪽: 데이터베이스와 파일 저장소
서버 데이터베이스 (은행 금고)
회원, 글, 주문처럼 표로 정리되는 데이터가 사는 곳이야. 어느 기기에서든 같은 데이터를 보고, 권한과 백업이 관리돼. "진짜 원본"은 보통 여기야.
파일 저장소 (창고)
사진, 영상, PDF 같은 큰 파일은 데이터베이스가 아니라 파일 스토리지에 넣어. Supabase Storage, Firebase Storage, AWS S3 같은 서비스야. 데이터베이스에는 그 파일의 주소(경로)만 적어둬.
- 앱 — 사진 파일을 파일 저장소에 업로드
- 파일 저장소 — "avatars/user-7.jpg에 저장했어"
- 데이터베이스 — 회원 7번 행의 사진 칸에 경로만 기록
- 화면 — 경로로 사진을 불러와 표시
집을 고르는 기준
- 껐다 켜면 사라져도 되나? → 그렇다면 메모리
- 이 기기에서만 필요하고 민감하지 않나? → 기기 저장소
- 다른 기기나 다른 사람도 봐야 하나? 잃어버리면 큰일인가? → 서버 데이터베이스
- 크기가 큰 파일인가? → 파일 저장소 + DB에는 경로만
확인 퀴즈
Q. 사용자 프로필 사진은 어디에 저장하는 게 가장 알맞을까?
- React State
- 데이터베이스 칸에 base64로
- 파일 저장소에 올리고 DB에는 경로만
- localStorage
정답 보기
3번. 큰 파일은 파일 저장소에, 데이터베이스에는 그 파일의 경로만 저장하는 게 정석이야.
Q. 앱에서 로그인 토큰을 기기에 저장해야 해. 가장 안전한 곳은?
- AsyncStorage
- 키체인·키스토어를 쓰는 보안 저장소(SecureStore)
- 앱 코드 안의 변수
- 사진첩
정답 보기
2번. AsyncStorage는 암호화되지 않아. 민감한 값은 운영체제의 보안 저장소를 써야 해.
Q. 다크 모드 설정값은 어디에 두면 충분할까?
바코친 앱에서 퀴즈 풀고 AI한테 물어보기- 기기 저장소
- 서버 DB에 꼭 저장
- 파일 저장소
- 결제 시스템
정답 보기
1번. 민감하지 않고 그 기기에서만 필요한 값이라 기기 저장소면 충분해. 여러 기기에서 맞추고 싶다면 서버에 둘 수도 있어.
무료 · 카카오로 바로 시작 · 레슨 243개