inflearn logo
강의

Course

Instructor

[Daily Completion Challenge] <From Planning to Launch with FastAPI> with the Author

Section 8.8: File Upload (p366~p389)

4주 5회차 과제 제출

Resolved

52

dkim72409371

6 asked

0

1) 부킹 파일 삭제 시, 먼저 '삭제 대기'로 해당하는 테이블 행에 표시를 하여 놓고, 일정 기간 후에 정리 작업을 통해 테이블로부터 삭제를 하여주고, 스토리지에서도 해당 파일을 같이 제거해 줍니다.

 

2) 부킹 삭제 시, 부킹을 먼저 '삭제 대기' 로 테이블 행에 표시를 하여 놓고, 파일들도 마찬 가지로 '삭제 대기'로 유지 시켜줍니다. 일정 기간 후, 부킹 데이터가 삭제 될 때, 같이 해당하는 부킹 파일 레코드 행들을 테이블로 부터 삭제하여주고, 스토리지에서도 물리적으로 제거 해줍니다.

 

이는 사용자가 실수로 특정 파일 및 부킹을 삭제 할 경우를 대비해 복구 할 시간을 주기 위함입니다. 즉시 물리 삭제를 수행할 경우 DB에는 삭제되었지만 파일이 남거나, 파일은 삭제되었지만 DB 에서는 계속 존재하는 불일치 문제가 발생할 수 있습니다.

python aws tdd FastAPI 북-챌린지

Answer 2

0

hannal

확인했습니다. 🙂

 

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. 김도균님.

질문해주신 방법은 데이터 관리에서 매우 효율적인 접근 방식입니다. 삭제 시 ‘삭제 대기’ 상태로 두는 것은 데이터 복구 가능성을 높이면서도 데이터 일관성을 유지할 수 있는 좋은 방법입니다.

파일 및 데이터 삭제 정책 전략

  1. ‘삭제 대기’ 상태 마킹: 즉시 물리적인 삭제를 하지 않고, ‘삭제 대기’ 상태로 마킹하는 것으로 충분히 삭제되지 않아서 발생할 수 있는 불일치를 방지합니다. 이는 사용자가 실수로 데이터를 삭제한 경우 복구할 시간을 제공하므로 안정성을 증가시킵니다.

  2. 주기적인 정리 작업: 일정 기간 후에 정리 작업을 통해 데이터베이스의 행과 스토리지의 파일을 일괄 삭제하는 방법입니다. 이는 트래픽이 적은 시간이나 특정한 유지보수 기간에 이루어질 수 있으며, 대량의 삭제 작업으로 인해 시스템에 무리가 가는 것을 방지할 수 있습니다.

  3. 일관성 있는 데이터 만듦: 부킹 데이터를 ‘삭제 대기’로 두고 스토리지의 파일과 함께 연동되는 모든 데이터를 물리적으로 삭제하도록 함으로써 데이터 일관성을 유지하고, 불필요한 스토리지 사용을 줄입니다.

참고할 만한 링크

아래는 관련 내용을 더 알아볼 수 있는 자료입니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

4주 1회차 과제

0

44

2

4주 5회차 과제

0

44

1

4주 4회차 과제 제출

0

62

2

351쪽 질문

0

52

2

4주 3회차 과제

0

49

2

refresh() 메서드와 픽스처에 대해 질문이 있습니다.

0

59

2

4주 2회차 과제 질문

0

57

3

4주 1회차 과제

0

53

2

4주 1회차 과제

0

44

2

4주 3회차 과제

0

55

2

4주 1회차 과제

0

52

2

4주 3회차 과제

0

38

1

4주 5회차 과제

0

38

2

4주 1회차 과제

0

30

2

4주 1회차 과제

0

25

2

4주 4회차 과제 제출

0

36

2

4주 1회차 과제 제출합니다.

0

43

1

4주 2회차 과제

0

49

1

patch 요청시 payload가 넘어가지 않습니다.

0

60

3

4주 1회차 과제

3

119

2

페이지 144 코드 문의

0

61

3

책과 github 코드가 다릅니다 p130

0

50

2

120페이지 코드 질문드립니다.

0

48

2

테스팅과 학습법의 관계 (?)

0

67

2