이번 섹션에서는 Bubble 데이터베이스 Editor에서 직접적으로 데이터에 API 워크플로를 실행할 수 있는 대량 작업에 대해 설명합니다.
: 대량 작업(Bulk Operations)을 통해 Editor 내에서 대규모 데이터 집합에 대한 워크플로를 실행할 수 있습니다.
- 제공된 목록에서 미리 정의된 API 워크플로를 예약하면 앱에서 수행할 수 있는 작업 목록에 대해 동일한 광범위한 작업을 수행할 수 있습니다.
참고사항: 대량 작업(Bulk Operations)은 클라이언트 측에서 실행되므로 열려 있고 활성 상태인 브라우저 창에 따라 달라집니다. 즉, 이 작업을 계속하려면 팝업을 열어 두어야 합니다. 많은 양의 데이터를 수정하려는 경우 가장 효과적이고 안정적인 솔루션인 재귀 예약 워크플로(Recursive scheduled workflow)를 대신 사용할 수 있습니다. 이것은 서버 측에서 작동되는 백엔드 워크플로우의 하나입니다.
(1) API 워크플로우 설정
데이터에 대한 대량 워크플로를 수행하려면 먼저 호출할 API 워크플로를 정의해야 합니다.
Bubble의 Workflow API 및 API Workflows 설정 방법에 익숙하지 않은 경우 먼저 작동 방식을 알아보는 것이 좋습니다.
1. API 워크플로 매개변수 설정 (유효한 매개변수 주의사항)
: 대량 작업 기능으로 일정을 예약이 가능하려면 API워크플로우에 몇 가지 속성이 있어야 합니다.
1) 데이터 매개변수(Parameter) 설정
- 작동시키려는 workflow Action에는 대량 작업을 수행하려는 것과 동일한 데이터 유형(type)이 필요한 매개변수가 포함되어야 합니다.
- API 워크플로우에는 워크플로를 실행할 대상을 지정할 수 있는 매개변수가 있어야 합니다.
- 위의 예시에서 우리는 Bubble에게 Product 유형(type)의 데이터를 요청하도록 지시하고 있습니다 .
2) 하나의 매개변수(Parameter)만 설정
- 대량 작업이 호출되면 Bubble은 하나의 매개변수(Parameter), 즉 현재 작업을 예약하고 있는 매개변수만 채웁니다. 다른 매개변수를 설정하지 마십시오.
3) 데이터 list는 대상이 될 수 없음
- 대량 작업은 데이터에서 하나씩 예약됩니다. 즉, 작업을 수행할 항목을 묻는 매개 변수는 list/array(목록/배열)이 아니라 단일 데이터를 요청해야 합니다.
4) 공개 API 워크플로로 노출할 필요는 없음
- 노출해도 여전히 작동하지만 공개 API 워크플로로 노출 체크박스를 선택하지 않아, 앱 외부에서 트리거 될 수 없도록 하는 것이 좋습니다.
2. 워크플로우에 Action 추가
이제 작업을 실행하려는 대상인 단일 매개변수를 허용하는 API 워크플로우가 있습니다.
: 이 예제에서는 해당 항목을 Product라는 사용자 지정 데이터 type(유형)으로 설정했으므로 해당 항목을 변경해 보겠습니다. product 유형은 위에서 API에서 설정한 유형과 동일합니다.
- 예시에서는 설정하려는 Published라는 필드에 'yes' 값으로 변경합니다.
- API 워크플로에서 간단한 Make changes to a thing 작업으로 데이터 필드 값을 변경합니다.
(2) 대량 작업 실행
대량 작업을 실행하려는 API workflow를 설정했으므로 실행을 트리거하는 방법을 살펴보겠습니다.
1. 실행할 데이터베이스 선택
1) 먼저 대량 작업을 실행할 데이터 유형(type)을 선택합니다.
- 예제의 경우 product로 작업하려고 생각합니다. 왼쪽편의 All Products를 선택합니다.
2) 실행할 데이터베이스를 선택합니다.
- 예를 들어 Trucker cap(트러커 캡)과 Baseball cap(야구 모자)는 출시 준비가 되었지만 product1은 아직 작업이 필요하다고 가정하고 상위 2개만 체크하겠습니다.
3) 그런 다음 대량 버튼을 클릭합니다.
- 우측편의 Bulk를 선택, 그다음 아래의 설명처럼 API를 선택합니다.
! 주의: 대량 작업은 다른 모든 작업과 마찬가지로 앱의 서버 용량을 소비한다는 점에 유의하세요.
- 수천 개의 항목에 대해 대량 작업을 실행하는 경우 작업을 완료하는 데 약간의 시간이 걸릴 수 있으며 눈에 띄는 용량 청크를 사용할 수 있습니다.
- 대량 작업은 일반적으로 레코드 목록을 변경합니다.
- 대량 작업을 실행할 때 실수를 한 경우 데이터베이스 복사 및 복원 기능을 사용하여 데이터 형식을 작업 전의 모습으로 복원할 수 있습니다.
2. 실행할 API 워크플로우 선택
여기에서 선택한 항목에서 실행할 API 워크플로를 선택합니다.
1) List og modify 드롭다운에서 작업을 실행할 목록을 선택합니다.
- 전체 보기 또는 선택한 항목에서 실행하도록 선택할 수 있습니다.
- 여기서는 특별히 선택된 두 항목으로 했습니다.
2) API workflow 드롭다운에서 호환되는 API 워크플로 목록을 찾을 수 있습니다.
* 워크플로우가 선택된 데이터 Type(유형)을 매개변수(parameter)로 허용하지 않는 경우 선택할 수 없습니다.
- 3번 항목 옆의 텍스트는 이 경우 워크플로가 '우리가 선택한 항목 2개'에서 실행됨을 나타내줍니다.
3) 마지막으로 Run workflow를 클릭하면 작업이 시작됩니다.
- 우리는 두 개의 항목에 대해서만 약간의 변경을 가하고 있기 때문에 매우 빨리 완료되어야 합니다.
- 아래의 결과에서 확인할 수 있듯이, 선택한 두 데이터의 published 필드가 yes로
(3) 보기(view) 기준으로 데이터를 대량 작업에 추가
view(보기)를 사용하면 데이터 검색과 마찬가지로 특정 제약조건으로 데이터베이스 편집기에 표시되는 데이터를 필터링할 수 있습니다.
- 대량 작업을 통해 현재 view(보기)의 모든 레코드에 대해 작업을 실행할 수 있으므로 이러한 기능을 결합하여 목록에서 항목을 수동으로 선택하는 대신, 특정 기준과 일치하는 항목에 대해 대량 작업을 쉽게 추가할 수 있습니다.
- 새 보기(New view)를 설정하려면 작업을 실행하려는 데이터 좌측 편에 있는 (New view) 버튼 또는 데이터 유형 이름 옆의 연필 아이콘을 클릭합니다.