자바스크립트 0.5용 리덕트 스토리지 클라이언트 SDK 출시

자바스크립트 0.5용 리덕트 스토리지 클라이언트 SDK 출시

2022-10-19 last update

7 minutes reading database node news javascript
며칠 전에 SDKnext version를 출시했습니다. 전통적으로 Reduct Storage HTTP API 에 새로운 변경 사항을 도입한 후 SDK를 업데이트합니다. 그러나 이번 릴리스는 스트리밍 데이터를 추가했기 때문에 조금 특별합니다. 어떻게 사용할 수 있는지 봅시다.

Reduct Storage를 처음 사용하는 경우 시작하기 전에 살펴볼 수 있습니다.

데이터 읽기



이 예는 스토리지 엔진에서 레코드를 읽고 파일에 쓰는 가장 쉬운 방법을 보여줍니다.

const {Client} = require("reduct-js");
const fs = require("fs");

client = new Client("https://play.reduct-storage.dev");
const bucket = await client.getBucket("bucket");

const readStream = await bucket.readStream("entry-name");
const fileStream = fs.createWriteStream("somefile.txt");
readStream.pipe(fileStream);


보시다시피 파일에서 스트림을 만들고 스트림으로 읽히는 레코드와 파이프했습니다. 그런 다음 레코드를 다운로드하여 파일에 비동기적으로 작은 청크로 썼습니다.

데이터 쓰기



스트림을 사용하여 스토리지 엔진에 데이터를 쓸 수도 있습니다. 그러나 쓰기 작업을 시작할 때 콘텐츠 길이를 제공해야 합니다. 즉, 레코드의 크기를 미리 알아야 합니다. 코드에서 보자:

const bucket = await client.getBucket("bucket");

const fileStream = fs.createReadStream("somefile.txt");
const {size} = fs.statSync("somefile.txt");

await bucket.writeStream("entry-name", fileStream, size);


여기에서 스트림과 동일한 파일을 읽고 스토리지 엔진에 업로드했습니다. 구문은 약간 다르지만 본질적으로 pipe() 처럼 작동합니다.