2017-11-29 2 views
1

안녕하세요 stackoverflow 커뮤니티. dynamodb 용 소프트 삭제 솔루션을 구성하려고합니다.DynamoDB 테이블 모델링. 소프트 삭제 솔루션

동일한 문제가 있지만 해결 방법을 찾으신다면 의견을 공유하십시오.

다음에 대한 생각이 포함됩니다. 항목을 나열 (isDeleted : false 또는 0)하고 결과 제한을 사용합니다.

답변

0

색인을 생성해야합니다 (예 : Number, 데이터 (0/1)).

제 경우에는 삭제되지 않은 항목에 대해서는 "isActive = 1"입니다.

그런 다음 해당 IndexName으로 쿼리하거나 검색합니다. 항목이 부드러운 삭제하기 위해서는

, 우리는 속성 "isActive"

DynamoDB Scan and Query with Index

Official Best Practice: Take Advantage of Sparse Indexes을 제거해야 - 우리의 경우이 설명되어 있습니다.

const params = { 
     TableName: this.TABLE, 
     Key: { 
     _id: id 
     }, 
     UpdateExpression: 'REMOVE isActive', 
     ReturnValues: 'ALL_NEW' 
    } 
    return dynamodb.update(params).promise() 
     .then((data) => { 
     if (data) { 
      return data.Attributes 
     } 
     return null 
     }) 
: 사용이 예를 속성을 제거하기 위해