중간 데이터의 스키마를 안전하게 변경하는 단계
주로 연결한 것은 데이터베이스나 스토리지 사이에 끼운 다단 배치입니다만, 스트리밍이나 서비스간 통신에서도 일방통행이라면, 대체로 이런 느낌이 되는 것은 아닐까 생각합니다.
열(필드) 추가 패턴
한 데이터베이스 (스토리지)의 테이블 (경로)에 열 (필드) a가 있고 그것을 읽고 쓰고 있다고 가정합니다. 이 흐름에 b를 추가하는 절차를 생각해 봅시다.
※ 용어는 환경에 따라 적당히 읽어주십시오.
테이블에 열 b를 NULL 권한 (선택 사항)으로 추가합니다.
이 단계에서 b는 NULL로 작성되었으며 읽을 수 없습니다.
열 b 의 값을 쓰도록 합니다.
열 b의 값을 읽으십시오.
이 때, NULL 가 되어 있는 낡은 레코드도 읽는다면 writer 로 처리하기 전에 디폴트치 메우는 등의 대응이 필요하게 될 것입니다.
열 b 에서 NULL 을 없애면 NULL 을 허용하지 않습니다.
이 reader 가 한층 더의 어딘가의 테이블에 b 의 정보를 써 넣고 있는 경우는, 이번은 writer 로서 이 패턴을 반복해 갑니다.
열(필드) 삭제 패턴
추가 패턴을 역주행합니다.
얼른 절차로서, 추가는 상류에서, 삭제는 하류에서, 라고 기억해 두면 됩니다.
이렇게 해서 데이터를 상류에서 조금씩 흘려가는/하류로부터 조금씩 거절해 가는 것으로, 부분적인 테스트나 잘라내기가 쉬워집니다
테이블(경로) 전환 패턴
a b를 읽고 쓰고 있다고 가정합니다. 이것을 완전히 c d라는 다른 열로 전환하는 것을 고려해 봅시다.
열 c d 를 가지는 새로운 테이블을 작성합니다.
이전 테이블과 새 테이블 모두에 쓰도록 합니다.
이들은 다른 데이터베이스에 있을 수 있습니다.
이전 레코드는 이전 테이블에서 새 레코드를 새 테이블에서 읽습니다.
신구의 廻別는 타임 스탬프 등의 정보를 사용하게 될 것입니다.
이전 테이블에 있는 레코드가 더 이상 필요하지 않으면 읽기를 중지합니다.
언제까지 지나도 불필요하게 되지 않는 경우는, 어딘가에서 구 레코드 상당의 것을 새로운 테이블에 써 넣는 등의 대응이 필요하게 될 것입니다.
이전 테이블에 쓰기를 중지합니다.
이전 테이블을 삭제합니다.
필요한 경우 아카이브해 둡시다.
요컨대, 이것은 추가 패턴과 삭제 패턴의 합치기군요.
Reference
이 문제에 관하여(중간 데이터의 스키마를 안전하게 변경하는 단계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/piyo7/items/be5c0399197ef1235adf
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
추가 패턴을 역주행합니다.
얼른 절차로서, 추가는 상류에서, 삭제는 하류에서, 라고 기억해 두면 됩니다.
이렇게 해서 데이터를 상류에서 조금씩 흘려가는/하류로부터 조금씩 거절해 가는 것으로, 부분적인 테스트나 잘라내기가 쉬워집니다
테이블(경로) 전환 패턴
a b를 읽고 쓰고 있다고 가정합니다. 이것을 완전히 c d라는 다른 열로 전환하는 것을 고려해 봅시다.
열 c d 를 가지는 새로운 테이블을 작성합니다.
이전 테이블과 새 테이블 모두에 쓰도록 합니다.
이들은 다른 데이터베이스에 있을 수 있습니다.
이전 레코드는 이전 테이블에서 새 레코드를 새 테이블에서 읽습니다.
신구의 廻別는 타임 스탬프 등의 정보를 사용하게 될 것입니다.
이전 테이블에 있는 레코드가 더 이상 필요하지 않으면 읽기를 중지합니다.
언제까지 지나도 불필요하게 되지 않는 경우는, 어딘가에서 구 레코드 상당의 것을 새로운 테이블에 써 넣는 등의 대응이 필요하게 될 것입니다.
이전 테이블에 쓰기를 중지합니다.
이전 테이블을 삭제합니다.
필요한 경우 아카이브해 둡시다.
요컨대, 이것은 추가 패턴과 삭제 패턴의 합치기군요.
Reference
이 문제에 관하여(중간 데이터의 스키마를 안전하게 변경하는 단계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/piyo7/items/be5c0399197ef1235adf
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(중간 데이터의 스키마를 안전하게 변경하는 단계), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/piyo7/items/be5c0399197ef1235adf텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)