프로젝트 아카이브
아카이브 만들기
섹션 제목: “아카이브 만들기”프로젝트에는 일반적으로 중요한 프로세스와 로직이 들어 있으므로 아카이브해 두는 것이 중요합니다. 프로젝트를 특정 상태로 복원해야 할 때를 대비해 아카이브가 반드시 필요합니다.
PlaidCloud에서는 언제든지 프로젝트를 아카이브할 수 있습니다. 아카이브 생성은 PlaidCloud에 기본 제공되는 시점별 추적을 보완하여 특정 시점을 따로 보존할 수 있게 해 줍니다. 대규모 변경 전이나 운영 환경의 정확한 상태를 기록으로 남길 때 특히 유용합니다.
전체 백업: 프로젝트에 포함된 모든 데이터 테이블이 포함됩니다. 프로젝트의 데이터 양에 따라 아카이브가 상당히 클 수 있습니다.
부분 백업: 프로젝트의 모든 데이터를 다른 소스에서 다시 만들 수 있는 경우에 사용할 수 있습니다. 이런 경우에는 프로젝트의 데이터를 아카이브하여 다른 곳에 중복 보관할 필요가 없습니다. 부분 아카이브는 아카이브를 만들 때의 시간과 저장 공간을 절약해 줍니다.
프로젝트를 아카이브하려면 다음과 같이 합니다.
- Analyze를 엽니다
- “프로젝트” 탭을 선택합니다
- 프로젝트를 선택한 다음 작업 메뉴에서 프로젝트 아카이브 내보내기를 선택합니다(또는 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 프로젝트 아카이브 내보내기를 선택합니다)
창의 제목 표시줄에 아카이브할 프로젝트의 이름이 표시되므로, 시작하기 전에 올바른 프로젝트인지 확인할 수 있습니다.
아카이브가 실행되는 동안
섹션 제목: “아카이브가 실행되는 동안”PlaidCloud가 요청을 수락하는 즉시 내보내기 창이 닫히고, 이후에는 진행률 창이 아카이브 진행 상황을 보여 줍니다. 진행률 창을 열어 둔 채 지켜보거나 백그라운드로 보내고 다른 작업을 계속할 수 있습니다. 어느 쪽이든 아카이브는 플랫폼에서 실행되며, 진행률 창을 닫아도 중지되지 않습니다.
알림으로 종료 결과를 알려 드립니다. 아카이브가 기록되었는지, 어떤 테이블이 데이터 없이 포함되었는지, 실패했다면 그 이유가 무엇인지 알 수 있습니다. 알림을 받기 위해 창을 계속 열어 둘 필요는 없습니다.
데이터를 포함할 수 없는 테이블
섹션 제목: “데이터를 포함할 수 없는 테이블”프로젝트에 나열된 테이블 뒤에 더 이상 데이터가 없는 경우가 가끔 있습니다. 예를 들어 한 번도 빌드되지 않은 테이블이거나 프로젝트 외부에서 데이터가 제거된 테이블입니다. 이 경우에도 아카이브는 기록됩니다. 해당 테이블은 테이블 데이터에서 제외되고, 내보내기가 끝날 때 해당 테이블의 이름이 담긴 메시지가 표시됩니다. 프로젝트 구성, 워크플로, 테이블 정의, 그 외 모든 테이블의 데이터 등 나머지는 모두 정상적으로 아카이브됩니다.
아카이브에는 어떤 테이블이 데이터 없이 포함되었는지가 기록되며, 아카이브를 복원할 때도 복원이 끝나는 시점에 해당 테이블의 이름을 다시 알려 주고 완전한 것처럼 표시하지 않습니다. 정의를 읽을 수 있었던 테이블은 열만 있고 행이 없는 상태로 복원되며, 정의마저 사라진 테이블은 뒤에 테이블이 없는 항목으로 복원됩니다. 테이블을 채우려면 해당 테이블을 빌드하는 워크플로를 다시 실행하십시오.
프로젝트의 테이블을 읽을 수 없는 경우
섹션 제목: “프로젝트의 테이블을 읽을 수 없는 경우”프로젝트의 테이블을 읽는 권한은 프로젝트 자체를 읽는 권한과 별개이며, 아카이브는 두 권한 모두에 의존합니다. 프로젝트를 열 수는 있지만 테이블 읽기 액세스 권한이 없다면 아카이브는 기록되지만 테이블 데이터도, 테이블 정의도 포함되지 않습니다. 둘 다 같은 권한 뒤에 있기 때문입니다. 내보내기가 끝나면 제외된 테이블의 이름이 담긴 메시지가 표시되는데, 이름은 아카이브에 포함되지 않은 정의에서 가져오므로 이름 대신 내부 ID로 식별됩니다.
이런 방식으로 만든 아카이브는 프로젝트의 데이터가 아니라 구성, 즉 읽을 권한이 있는 범위 내의 워크플로, 변수, 차원, 뷰, 레이아웃의 사본입니다. 복원해도 테이블이 전혀 다시 만들어지지 않으므로 프로젝트의 데이터를 복구할 수 있는 백업이 아닙니다. 이런 아카이브에 의존하기 전에 내보내기 메시지를 확인하십시오.
위에서 설명한 테이블과 달리, 이 경우는 워크플로를 다시 실행해도 해결되지 않습니다. 애초에 데이터를 읽지 못했기 때문입니다. 워크스페이스 관리자에게 프로젝트 테이블에 대한 읽기 액세스 권한을 부여해 달라고 요청한 다음 아카이브를 다시 만드십시오.
프로젝트에서 행 액세스를 사용하는 경우
섹션 제목: “프로젝트에서 행 액세스를 사용하는 경우”아카이브를 만들 때 프로젝트의 테이블을 읽으므로 행 액세스가 다른 읽기와 마찬가지로 적용됩니다. 아카이브에는 각 거버닝 열에서 사용자의 그룹에 부여된 행이 포함됩니다. 열에 부여된 권한이 없는 경우, 결과는 해당 열이 어떻게 선언되었는지에 따라 달라집니다. 기본적으로 거부하도록 둔 열은 행을 전혀 제공하지 않고, 기본적으로 모두 허용하도록 선언된 열은 필터링되지 않은 상태로 남습니다. 거버닝 열이 하나도 없는 테이블은 전체가 아카이브되며, 프로젝트 아키텍트는 권한 부여 내용과 관계없이 모든 행을 아카이브합니다. 예약된 아카이브는 사용자가 아닌 프로젝트 자체의 ID로 실행되므로 모든 행을 아카이브합니다.
일부 권한만 가진 멤버가 만든 아카이브는 프로젝트 데이터의 부분 사본이며, 기본적으로 거부하도록 둔 열이 있으면 테이블이 단순히 줄어드는 것이 아니라 비어 있는 상태로 복원될 수 있습니다. 이런 아카이브를 복원하면 해당 행이 누락된 채로 프로젝트가 다시 만들어지며, 아카이브 입장에서는 그 행이 애초에 없었던 것이므로 복원 과정에서는 이를 알려 주지 않습니다.
내보내기가 실패하는 경우
섹션 제목: “내보내기가 실패하는 경우”이제 내보내기가 실패하면 실패했다고 보고합니다. 이전에는 아카이브가 기록되지 않았는데도 완료된 것으로 보고될 수 있었고, 그 때문에 누락된 파일을 나중에, 대개 복원하려고 할 때 발견하게 되었습니다. 이제는 실패한 내보내기가 그렇다고 알려 주므로, 성공으로 보고된 것은 실제 성공으로 받아들이고 오류가 보고된 경우에는 메시지를 확인하십시오. 이는 프로젝트 아카이브뿐 아니라 다른 내보내기 유형에도 동일하게 적용됩니다.
아카이브 복원하기
섹션 제목: “아카이브 복원하기”아카이브가 있으면 복원하고 싶을 수 있습니다. 아카이브는 새 프로젝트 또는 기존 프로젝트로 복원할 수 있습니다.
아카이브를 복원하려면 다음과 같이 합니다.
- Analyze를 엽니다
- “프로젝트” 탭을 선택합니다
- 작업 메뉴(또는 도구 모음)에서 프로젝트 아카이브 가져오기를 선택하고 복원할 아카이브를 선택합니다
- 새 프로젝트 만들기와 기존 프로젝트로 가져오기 중에서 선택하고, 선택 트리에서 가져올 항목을 선택합니다
- 프로젝트 가져오기를 클릭합니다
가져오기는 백그라운드에서 실행됩니다. 진행률 창에 진행 상황이 표시되고, 완료되면 메시지로 알려 드리며, 누락된 항목이 있으면 이메일도 보냅니다. 선택한 프로젝트가 잠겨 있는 등의 이유로 가져오기를 시작할 수 없으면 창이 열린 상태로 유지되며 그 이유를 알려 줍니다.
아카이브는 열 때 검사됩니다. 프로젝트 아카이브에 절대 들어갈 수 없는 내용, 즉 아카이브 자체 폴더 밖에 놓이게 되는 파일, 아카이브 밖을 가리키는 링크, 또는 일반 데이터 이외의 것을 만들려는 설정이 포함된 아카이브는 아무것도 복원되기 전에 거부됩니다.
아카이브 전체를 가져올 필요는 없습니다. 선택 트리에는 아카이브에 들어 있는 항목이 워크플로, 단계, 테이블, 차원, 데이터 편집기, 사용자 정의 함수와 같은 유형별로 나열되며, 선택한 항목은 종속 항목과 함께 가져옵니다.
아카이브의 일부가 가져와지지 않는 경우
섹션 제목: “아카이브의 일부가 가져와지지 않는 경우”아카이브의 일부를 복원할 수 없어도 가져오기는 계속 진행됩니다. 아카이브를 읽을 수 있고 프로젝트 자체를 설정할 수 있다면 프로젝트는 가져와지며, 복원할 수 없었던 항목은 가져오기 결과에 나열됩니다. 아카이브를 읽을 수 없거나 프로젝트 자체를 설정할 수 없으면 가져오기가 실패하고 그 이유를 알려 주며, 새 프로젝트는 제거됩니다. 기존 프로젝트로 가져오는 경우에도 완료되기 전에 중단될 수 있습니다. 이미 복원된 항목은 프로젝트에 그대로 남습니다. 메시지와 이메일에는 가져오기가 중단되었다고 표시되고, 가져오기 결과에는 중단된 시점과 이유, 그 전까지 복원하지 못한 항목이 나열됩니다.
누락된 항목이 있으면 가져오기가 끝날 때 메시지와 이메일로 알려 주며, 메시지에는 가져오기 결과 창으로 연결되는 링크가 있습니다. 이 창에는 각 항목이 유형과 이름으로 표시되고 그 이유가 함께 제시되며, 항목은 다음 제목으로 그룹화됩니다.
- 가져오지 않음 — 항목이 프로젝트에 없습니다.
- 데이터 없이 생성됨 — 테이블, 뷰 또는 차원이 프로젝트에 있지만 데이터를 읽거나 로드할 수 없어서 데이터가 없습니다.
- 경고 — 항목은 가져왔지만 웨어하우스가 열을 테이블의 열 유형으로 변환한 경우처럼 확인해야 할 사항이 있습니다.
- 이 프로젝트의 값을 유지한 변수 — 프로젝트에 이미 같은 이름의 변수가 있어서 해당 변수가 자신의 값을 유지했습니다.
가장 심각한 항목이 먼저 나열되며, 나열된 것보다 항목이 더 많으면 창에 그렇다고 표시됩니다. 나중에 창을 다시 열려면 프로젝트 탭에서 프로젝트를 선택하고 작업 메뉴에서 가져오기 또는 복사 결과 보기를 선택하거나, 프로젝트를 마우스 오른쪽 버튼으로 클릭하십시오.
결과는 누군가 삭제하거나 같은 프로젝트로의 이후 가져오기가 이를 대체할 때까지 프로젝트에 남아 있습니다. 결과 삭제를 클릭하면 프로젝트를 열 수 있는 모든 사용자에게서 결과가 제거되며, 프로젝트 자체는 변경되지 않습니다. 결과를 삭제하려면 프로젝트에 대한 편집 액세스 권한이 필요하고 프로젝트가 잠겨 있지 않아야 합니다.
기존 프로젝트로 가져오기
섹션 제목: “기존 프로젝트로 가져오기”이미 존재하는 프로젝트로 가져오면 기존 내용을 대체하지 않고 추가됩니다. 아카이브와 프로젝트에 같은 항목이 모두 있을 때는 두 가지 사항이 결과를 결정합니다.
대상 프로젝트를 변경할 수 있어야 합니다. 역할이 없는 프로젝트로 가져오거나 변경을 막도록 잠긴 프로젝트로 가져오는 것은 거부됩니다. 이 검사는 아무것도 읽거나 쓰기 전에 수행되므로, 거부된 가져오기는 프로젝트를 그대로 둡니다.
프로젝트는 자체 설정을 유지합니다. 이름, 식별자, 데이터 연결 환경, 스토리지 기본값, 문서 계정, 액세스 유형, 액세스 목록, 행 액세스 권한 부여는 모두 그대로 유지됩니다. 선택한 콘텐츠만 가져옵니다.
Project Default로 설정된 단계는 계정이 아니라 해당 설정을 그대로 가져옵니다. 복원된 후에는 아카이브될 당시의 기본값이 아니라 프로젝트가 가진 기본값으로 확인됩니다.
중복 항목
섹션 제목: “중복 항목”들어오는 항목이 프로젝트에 이미 있는 항목과 동일한 항목인 경우, 해당 항목을 어떻게 처리할지 선택합니다.
- 중복 항목을 수신 데이터로 덮어쓰기 — 아카이브에 있는 버전이 프로젝트에 있는 버전을 대체합니다.
- 중복 항목의 새 사본 만들기 — 프로젝트는 기존 항목을 유지하고, 들어오는 항목은 이름 뒤에
copy가 붙은 채(그 이름도 이미 있다면 숫자가 추가됨) 옆에 추가됩니다. 이는 워크플로, 단계, 테이블, 차원, 데이터 편집기, 뷰, 사용자 정의 함수에 적용됩니다.
프로젝트 변수와 워크플로 변수는 예외입니다. 변수는 이름으로 식별되므로, 아무것도 참조하지 않는 이름으로 바꾸지 않고서는 두 번째 사본을 추가할 방법이 없습니다. 프로젝트에 아카이브에도 들어 있는 변수가 이미 정의되어 있으면 프로젝트의 값이 유지되고, 가져오기 결과에 그대로 둔 변수가 나열됩니다. 아카이브의 값을 사용하려면 나중에 변수에 직접 설정하십시오.
알아 두어야 할 점이 하나 있습니다. 이 일치 여부는 이름이 아니라 ID로 판단합니다. 원래 같은 프로젝트에서 나온 항목, 즉 아카이브를 내보낸 원본의 항목이나 그 사본은 같은 항목으로 인식됩니다. 우연히 이름만 같은 두 항목은 서로 다른 항목으로 처리되며, 가져온 후에는 둘 다 존재합니다.
테이블이 데이터 없이 복원되는 경우
섹션 제목: “테이블이 데이터 없이 복원되는 경우”테이블 데이터를 복원하려면 해당 열이 들어갈 테이블과 일치해야 합니다. 로드는 이름과 순서를 기준으로 하므로 같은 이름이 같은 순서로 있어야 합니다. 일치하지 않으면 해당 테이블의 데이터는 제외되고, 아카이브에 데이터가 없던 테이블과 마찬가지로 가져오기 결과의 데이터 없이 생성됨 아래에 해당 테이블이 나열됩니다. 열의 저장된 유형만 다른 경우에는 데이터가 보류되지 않습니다. 데이터는 로드되고, 테이블은 웨어하우스가 변환한 열과 함께 경고 아래에 나열됩니다.
모든 테이블의 데이터 로드가 실패한 가져오기에서도 프로젝트는 그대로 유지됩니다. 마무리 메시지와 가져오기 결과에 테이블 데이터를 하나도 로드하지 못했다고 표시됩니다. 모든 워크플로, 테이블, 차원이 제자리에 있는 상태로 가져오기가 끝났다면, 행도 함께 들어왔을 것이라고 가정하기 전에 마무리 메시지를 읽어 보십시오.
아카이브 일정
섹션 제목: “아카이브 일정”아카이브는 프로젝트의 정기 백업으로도 사용할 수 있습니다. PlaidCloud에서는 백업 일정을 관리하고 백업 아카이브의 보존 기간을 가장 편리하거나 원하는 대로 설정할 수 있습니다.
프로젝트의 모든 변경 사항은 자동으로 추적되므로 롤백을 위해 아카이브가 꼭 필요한 것은 아닙니다. 그러나 아카이브는 프로젝트 상태의 특정 스냅샷을 제공하므로 통제 목적이나 알려진 시점으로 복구하는 데 종종 유용합니다.
아카이브 일정을 설정하려면 다음과 같이 합니다.
- Analyze를 엽니다
- “프로젝트” 탭을 선택합니다
- 백업 아이콘을 클릭합니다
- 문서 계정에서 디렉터리 대상을 선택합니다
- 백업 빈도와 보존 기간을 선택합니다
- 백업할 항목을 선택합니다
- “업데이트”를 클릭합니다