> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nora.my/llms.txt
> Use this file to discover all available pages before exploring further.

# 데이터 익스포트

> 데이터를 뽑습니다. 트레이스, 메모리, 문서, Flow, 감사

Nora의 모든 것을 내보낼 수 있습니다. 백업, 워크스페이스 사이 이전, 컴플라이언스(데이터 이동성), 오프라인 분석에 중요합니다.

## 내보낼 수 있는 것

| 갈래                  | 형식                 | 위치                                                |
| ------------------- | ------------------ | ------------------------------------------------- |
| **Flow 페이로드**       | JSON               | `nora flows get <slug>`                           |
| **Flow 스냅샷(편집 가능)** | JSON               | `nora flows snapshot <slug>`                      |
| **파이프라인 페이로드**      | JSON               | `nora pipelines get <id>`                         |
| **문서**              | 원본 파일 + 메타데이터 JSON | Data → Documents → Export                         |
| **메모리 노트/노드/엣지**    | JSON               | `nora memory {notes,nodes,edges} list ... --json` |
| **트레이스**            | JSONL              | `nora traces list ... --json`                     |
| **데이터셋**            | JSONL / CSV        | Datasets → 내보내기 버튼                                |
| **감사 트레일**          | JSON / CSV / PDF   | Audit → Export                                    |
| **전부(워크스페이스 통째로)**  | ZIP                | Settings → Data → Full export                     |

## 워크스페이스 통째 내보내기

**Settings → Data → Full export** 입니다.

1. 범위를 고릅니다(전부 또는 특정 갈래).
2. 날짜 범위 필터를 걸 수 있습니다.
3. 제출합니다.
4. Nora가 비동기로 준비합니다. 준비되면 알려 줍니다(보통 몇 분, 큰 워크스페이스는 몇 시간).
5. 서명된 ZIP을 내려받습니다.

ZIP에 이런 게 담깁니다.

* `manifest.json` 내용 인덱스, 체크섬, 내보낸 시각.
* `flows/*.json` Flow마다 파일 하나.
* `pipelines/*.json` 파이프라인마다 파일 하나.
* `documents/` 원본 파일 + 메타데이터.
* `memory/*.json` 메모리 스페이스마다 파일 하나.
* `traces/*.jsonl` 날짜별로 묶임.
* `datasets/*.jsonl` 데이터셋마다 하나.
* `audit.jsonl` 전체 감사 트레일.
* `signature.sig` `manifest.json`에 대한 서명.

다운로드 URL은 보안상 7일 뒤 만료됩니다.

## 프로그램으로 내보내기

`--json`을 받는 CLI 명령 대부분이 파싱할 수 있는 출력을 냅니다.

```bash theme={null}
# 모든 Flow를 디렉터리로
mkdir -p export/flows
for slug in $(nora flows list --json | jq -r '.[].slug'); do
  nora flows get $slug > export/flows/$slug.json
done

# 날짜 범위의 모든 트레이스
nora traces list --from 2026-07-01 --to 2026-07-31 --limit 100000 --json > export/traces-jul.json
```

주기적 백업이면 cron과 엮으세요.

## 워크스페이스 사이 데이터 옮기기

흔한 레시피로 스테이징 → 프로덕션이 있습니다.

```bash theme={null}
# 스테이징에서 스냅샷
nora --workspace staging flows snapshot support > support.json
nora --workspace staging vars list --json > vars.json

# 프로덕션에 적용
nora --workspace prod flows apply support support.json
# (vars는 손으로 다시 선언합니다. vars는 워크스페이스별입니다)

nora --workspace prod flows publish support --note "staging → prod"
```

일부는 바로 안 옮겨집니다.

* **커넥터와 provider 키** 목적지에 다시 만들어야 합니다(자격증명 자체는 소스를 못 떠납니다).
* **메모리 콘텐츠** `nora memory ... list --json`으로 뽑아 다시 넣을 수 있지만, 스코프 키가 다를 수 있습니다.
* **트레이스** 이력이 새 워크스페이스의 Flow에 안 붙습니다.

## 개별 사용자 데이터 내보내기(GDPR)

사용자 데이터 이동성 요청은 이렇게 합니다.

**Settings → Data → User exports → New** 입니다.

1. 사용자 식별자(Flow에 쓰인 이메일이나 스코프 키)를 넣습니다.
2. Nora가 워크스페이스 데이터를 훑습니다.
   * 스코프가 맞는 트레이스.
   * 사용자에게 스코프된 메모리 항목.
   * 사용자에게 붙은 피드백.
   * 사용자가 결정한 승인.
3. 사용자별 ZIP을 만듭니다.

서명되고 시각이 찍힙니다.

이동성 요청은 감사에 남습니다(내보낸 콘텐츠가 아니라 요청 자체).

## 형식과 관례

* **JSONL** 줄마다 JSON 객체 하나. 데이터베이스나 로그 도구로 스트리밍하기 좋습니다.
* **JSON** 예쁘게 찍습니다. 사람과 작은 데이터셋에 좋습니다.
* **CSV** 스프레드시트와 QA 흐름용.
* **PDF** 인쇄용 산출물을 원하는 컴플라이언스 리뷰어용.

CLI가 `--json`을 받는 곳에 붙이면 스크립트용으로 기계가 읽을 출력이 나옵니다.

## 서명된 내보내기

내보낸 ZIP마다 manifest에 대한 서명이 들어 있습니다. 워크스페이스의 내보내기 공개 키로 확인합니다.

```bash theme={null}
openssl dgst -sha256 -verify workspace-export-pubkey.pem \
  -signature signature.sig \
  manifest.json
```

내보내기가 전송 중에 안 변조됐는지 확인합니다.

## 요율 제한

* 워크스페이스 통째 내보내기: 워크스페이스당 동시 1개, 24시간마다 하나.
* 갈래별 내보내기: CLI로 무제한.
* 개별 사용자 내보내기: 워크스페이스당 동시 10개.

Enterprise 플랜 워크스페이스는 이걸 올릴 수 있습니다.

## 관련

* [보존](/ko/settings/data/retention) 만료 정책(오래되기 전에 내보내기).
* [컴플라이언스](/ko/settings/data/compliance) 규제 내보내기 요건.
* [`nora flows`](/ko/cli/flows) Flow 스냅샷.
* [`nora memory`](/ko/cli/memory) list 명령으로 메모리 내보내기.
