Filecoin과 Arweave로 설계하는 분산 스토리지 전략
Filecoin 스토리지 마켓과 Arweave 영구 저장 구조를 비교하고, 데이터 보관 정책·보안·운영 전략을 정리한다.
2026-08-14 · 최초 발행 2025-10-31
저장 기간이 다른 데이터는 같은 방식으로 다룰 수 없다
블록체인 기반 분산 스토리지는 데이터 보존, 무결성, 검증 가능성을 핵심 가치로 삼는다. Filecoin은 저장 기간과 가격 조건을 계약으로 다루는 시장에 가깝고, Arweave는 데이터를 장기간 남기는 영구 저장 모델을 지향한다. 두 체계 모두 콘텐츠 주소를 통해 데이터를 참조하지만, 비용 구조와 운영 방식은 다르다.
Filecoin에서는 스토리지 제공자(Storage Provider)와 클라이언트가 저장 계약(Deal)을 맺고 이를 온체인에서 정산한다. Proof-of-Replication(PoRep)과 Proof-of-Spacetime(PoSt)은 데이터가 실제 저장되고 있음을 지속해서 검증하는 증명 체계다. IPFS 콘텐츠 주소체계와 상호보완적으로 동작하지만, 별도 합의망과 경제 인센티브 모델을 가진다.
Arweave는 Blockweave와 Proof of Access를 바탕으로 영구 저장을 지향하는 퍼블릭 체인이다. 일회성 선불(endowment) 모델은 장기 보관 비용을 뒷받침하도록 설계되며, Permaweb 계층은 영구 URL 주소화와 애플리케이션 호스팅을 지원한다.
양쪽 모두 CID 또는 TX ID 같은 콘텐츠 주소 기반 식별자를 사용한다. 물리적인 데이터는 오프체인에 저장되더라도, 온체인 검증 가능성과 해시 기반 무결성 검사는 유지된다. 접근 경로에는 게이트웨이와 리트리벌 노드가 놓인다. 최신 수수료·거버넌스·스펙은 변동 가능성이 있으므로 최신 정보 확인이 필요하다.
Filecoin은 계약 이행과 증명 상태를 운영한다
클라이언트는 데이터와 함께 기간·가격 조건을 제출하고, 스토리지 제공자는 이를 수락해 온체인에 기록한다. 계약이 이행되지 않으면 슬래싱이 발생할 수 있고, 이행되면 보상이 지급된다.
PoRep은 고유한 복제를 증명하며, PoSt는 시간이 흐르는 동안에도 저장이 계속되고 있음을 증명한다. 증명을 이행하지 못하면 담보가 삭감되므로, 이 구조는 데이터 가용성을 유도하는 역할을 한다.
데이터를 다시 가져오는 경로는 별도 리트리벌 마켓이나 게이트웨이·캐시 계층으로 구성할 수 있다. 대용량 데이터에서는 전달 대역폭과 지연을 고려해 지역성 및 캐시 전략을 함께 설계해야 한다.
Arweave에서는 불변 데이터의 갱신 방식을 먼저 정한다
Arweave의 Proof of Access는 채굴 시 과거 블록 데이터에 접근했다는 증명을 요구해 오래된 데이터 보존을 유도한다. 일회성 비용으로 장기 저장의 지속성을 확보하는 것이 이 모델의 방향이다.
Permaweb에서는 트랜잭션 ID를 불변 URL로 사용하고, 메타데이터와 인덱싱을 조합해 정적 사이트·에셋·메타데이터를 영구화할 수 있다. Bundlr 등 L2 업로더는 처리량과 지연을 최적화하는 경로가 된다.
데이터가 불변이므로 수정은 기존 데이터를 덮어쓰는 대신 버전을 추가하고 인덱스 포인터를 갱신하는 패턴으로 처리한다. 삭제할 수 없다는 성질은 프라이버시와 규제 요건을 설계 단계에서 검토해야 하는 이유이기도 하다.
주소 체계와 접근 계층을 분리해 설계한다
Filecoin은 IPFS CID 등을 이용해 콘텐츠 주소 기반의 무결성을 확보하고, Arweave는 TX ID를 고정 식별자로 사용한다. 두 방식 모두 해시 기반 검증으로 데이터 무결성을 확인한다.
사용자 접근 경로에는 퍼블릭 게이트웨이나 사설 캐시를 둘 수 있다. 접근 지연을 낮추려면 이 계층이 필요하며, 높은 가용성이 요구되는 환경에서는 멀티 게이트웨이와 헬스체크를 운영한다.
공개망에 데이터를 저장하는 구조인 만큼 민감 데이터는 클라이언트 측 암호화와 키 관리가 필수다. 정책 기반 키 순환과 접근 로깅도 함께 고려한다. 비용 측면에서 Filecoin은 기간·용량·시장 상황에 따라 변동하는 비용 구조이고, Arweave는 일회성 요금 모델이다. 정확한 단가는 네트워크 상황과 시세에 따라 변동하므로 최신 정보 확인이 필요하다.
장기 보관부터 AI 데이터셋까지의 적용 방식
회계·감사 로그, 소스 코드 증적, 연구 데이터 아카이브처럼 규제 준수가 필요한 장기 보관 데이터에는 데이터 분류부터 시작한다. 민감·비민감 여부와 변경 주기를 구분한 뒤, 비민감 장기 보관 데이터는 Arweave에, 대용량·기간 지정형 데이터는 Filecoin에 매핑할 수 있다. 클라이언트 암호화(AES-GCM)와 무결성 해시를 별도로 저장하고, 온체인 레퍼런스를 내부 메타데이터 카탈로그와 동기화한다. 샘플링 리트리벌과 해시 검증도 정기 작업으로 자동화한다.
문서·이미지·빌드 산출물에 영구 URL을 제공하려는 웹 애플리케이션에서는 CI 파이프라인에서 빌드 산출물 해시를 만들고 Arweave에 업로드한다. 이후 TX ID를 릴리스 메타데이터에 기록하고, 게이트웨이 헬스체크와 캐시 무효화를 자동화한다.
NFT 아트워크와 메타데이터 JSON은 원본을 Arweave에 영구 저장하고, 썸네일·프리뷰는 CDN 캐시에 둘 수 있다. 토큰 메타데이터에는 Arweave TX ID 또는 IPFS CID를 고정한다. Filecoin 딜을 병행해 이중화하고 리트리벌 실패 시 대체 경로를 사용한다.
TB~PB급 비정형 AI 학습 데이터셋을 장기 보관하면서 주기적으로 접근해야 한다면 Filecoin의 다중 제공자 딜로 지역 분산과 가용성을 강화할 수 있다. 오프체인 인덱스인 파티션 매니페스트와 샤딩 전략을 적용하고, 빈번히 읽는 샤드는 캐시층에, 드물게 읽는 샤드는 저비용 보관 경로에 둔다.
장기 보관에는 Arweave 일회성 모델을, 대용량·기간형 보관에는 Filecoin 변동형 모델을 조합해 TCO를 절감할 수 있다. 정확 단가·수수료는 시장 변동이 있으므로 최신 정보 확인이 필요하다. 해시와 TX ID/CID 기반 검증 자동화는 감사 대응 시간을 단축하고, 다중 딜·다중 게이트웨이는 SLO 달성 확률을 높인다. 공급자 종속을 줄이고 이식성을 높이며, 영구 URL과 온체인 증빙을 통해 협업의 신뢰 기반을 강화할 수 있다.
저장 정책에서 검증과 페일오버까지
| 항목 | Filecoin | Arweave |
|---|---|---|
| 성능(리트리벌 지연) | 제공자·경로에 따라 변동, 캐시로 안정화 가능 | 게이트웨이 상태에 의존, Bundlr/L2로 업로드 최적화 |
| 확장성 | 대용량·다중 제공자 병렬 처리 용이 | 영구 단일 트랜잭션 모델, 대규모는 번들 업로드 권장 |
| 일관성/불변성 | CID 무결성, 딜 기간 종료 시 재딜 필요 | 트랜잭션 불변, 버전 추가 방식으로 일관성 유지 |
| 안정성(장기 보관) | 기간형 계약, 만료 전 갱신/재딜 필요 | 일회성 비용 기반 장기 보관 경제 인센티브 |
| 운영 편의 | 딜 관리·증명 모니터링 필요, 자동화 도구 다수 | 업로드 단순, 거버넌스·요금 변동성 모니터링 필요 |
운영에서는 데이터 수명과 위험을 함께 관리한다
데이터 정책은 영구·기간형, 민감·비민감, 접근 빈도로 분류한다. 영구 보관은 Arweave에, 기간형·대용량은 Filecoin에 매핑하며, 혼합 요건에는 이중화를 적용한다.
파이프라인의 입력은 원본 파일, 메타데이터, 해시다. 처리 단계에서는 클라이언트 암호화, 샤딩 또는 번들링, 업로드, 식별자 수집이 이어진다. 결과물은 TX ID/CID, 온체인 레퍼런스, 갱신된 내부 카탈로그다.
모니터링 대상에는 Filecoin 딜 상태와 증명 실패·슬래싱 이벤트, 게이트웨이 헬스, 리트리벌 지연, 무결성 샘플링 실패가 포함된다. 클라이언트 측 암호화, HSM/KMS 기반 키 관리, 접근 로깅, 데이터 최소화도 기본 운영 항목으로 둔다.
영구 저장의 삭제 불가성과 규제 준수의 삭제 요청은 충돌할 수 있다. 민감 데이터에는 암호화·토큰화를 적용해야 한다. 수수료와 가용성 역시 변동할 수 있으므로 멀티 제공자와 멀티 게이트웨이로 완화한다.
Filecoin 업로드 경로
전제조건은 Node.js 18+, npm, WEB3_STORAGE_TOKEN 환경변수다. IPFS에 업로드한 뒤 백그라운드에서 Filecoin 딜을 매칭하며, 딜 확정과 상태는 서비스 대시보드/SDK로 확인한다.
npm install web3.storage
// node >=18
import { Web3Storage, getFilesFromPath } from "web3.storage";
const token = process.env.WEB3_STORAGE_TOKEN;
const client = new Web3Storage({ token });
const main = async () => {
const files = await getFilesFromPath("./artifact.zip");
const cid = await client.put(files, { wrapWithDirectory: false });
console.log("CID:", cid); // 무결성·리트리벌에 사용
};
main().catch(console.error);
Arweave에 아카이브를 올리는 경로
전제조건은 Node.js 18+, npm, 월렛 키 파일(arweave-key.json), 네트워크 수수료 보유다. 대량 업로드에는 Bundlr 등 사용을 권장한다.
npm install arweave
import Arweave from "arweave";
import fs from "node:fs";
const arweave = Arweave.init({
host: "arweave.net",
protocol: "https",
port: 443,
});
const main = async () => {
const key = JSON.parse(fs.readFileSync("./arweave-key.json", "utf-8"));
const data = fs.readFileSync("./artifact.zip");
const tx = await arweave.createTransaction({ data }, key);
tx.addTag("Content-Type", "application/zip");
await arweave.transactions.sign(tx, key);
const res = await arweave.transactions.post(tx);
console.log("TX ID:", tx.id, "Status:", res.status);
};
main().catch(console.error);
선택 기준은 데이터의 수명과 운영 책임이다
Filecoin은 기간·용량·가격 조건을 유연하게 다루는 스토리지 마켓으로, 대규모 데이터와 정책적 수명 관리에 맞는다. Arweave는 일회성 비용 기반 영구 저장과 불변 URL이 필요한 장기 증적·콘텐츠 보존에 강점이 있다.
실무에서는 데이터 특성에 맞춘 하이브리드 전략에 클라이언트 암호화, 다중 게이트웨이·다중 제공자, 자동화된 모니터링을 결합한다. 수수료·성능·거버넌스에는 변동성이 존재하므로 주기적으로 파라미터를 재평가하고 최신 정보를 확인해야 한다.