PouchDB 로고

개요[편집 / 원본 편집]

PouchDB는 오픈 소스 NoSQL 데이터베이스로, 자바스크립트를 기반으로 하여 설계되어 있는 데이터베이스이다. 주로 웹 브라우저에서 실행되며, 이 데이터베이스는 Apache CouchDB와 완벽하게 호환되도록 설계되어 있다. 즉, PouchDB가 CouchDB에서 동일하게 사용되는 HTTP 기반의 RESTful API를 제공한다.

특징[편집 / 원본 편집]

오프라인 동작 가능[편집 / 원본 편집]

PouchDB의 가장 두드러진 특징 중 하나는 오프라인 환경에서 작동하는 것이다. 이는 PouchDB를 사용하는 웹 애플리케이션을 오프라인 상태에서도 작동 시킬 수 있다는 것을 의미하며, 이는 사용자가 인터넷 연결이 불안정하거나 전혀 없는 환경에서도 애플리케이션을 계속 사용할 수 있음을 보장한다. 이는 특히 모바일 애플리케이션에 있어서 중요한 기능으로, 이동 중인 사용자가 신호 강도가 약한 지역이나 인터넷에 연결할 수 없는 환경에서도 애플리케이션을 사용할 수 있다. 또한 HTML/CSS/JS로 모바일 앱을 만들 경우, 오프라인 상황에서도 사용이 가능하다는 것이다.

데이터 동기화[편집 / 원본 편집]

또 다른 주요 특징은 데이터 동기화 능력이다. PouchDB를 사용하는 웹 애플리케이션이 오프라인 상태에서 다시 온라인 상태가 되면, PouchDB는 자동으로 사용자의 로컬 데이터베이스와 원격 서버의 데이터베이스를 동기화 한다. 이로써 서비스의 가용성을 높이며, 사용자가 언제든지 최신의 정보에 접근할 수 있도록 해준다. 이 동기화 과정은 비동기적으로 이루어지며, 서버와의 연결이 끊어졌을 때에도 로컬 데이터베이스에 데이터를 저장하고, 연결이 다시 되면 서버와 동기화하는 방식으로 작동한다.

사용법[편집 / 원본 편집]

직접 호출[편집 / 원본 편집]

index.html 안에 pouchdb 자바스크립트 파일을 호출한다.

<script src="pouchdb.min.js"></script>

Bower[편집 / 원본 편집]

터미널에 아래의 명령어를 입력한다.

$ bower install pouchdb

이후 index.html 안에 다음과 같이 호출한다.

<script src="bower_components/pouchdb/dist/pouchdb.min.js"></script>

npm[편집 / 원본 편집]

터미널에 아래의 명령어를 입력한다.

$ npm install pouchdb

이후 index.html 안에 다음과 같이 호출한다.

<script src="node_modules/pouchdb/dist/pouchdb.min.js"></script>

jsdeliver CDN[편집 / 원본 편집]

터미널에 아래의 명령어를 입력한다.

<script src="//cdn.jsdelivr.net/npm/pouchdb/dist/pouchdb.min.js"></script>

Node.js[편집 / 원본 편집]

터미널에 아래의 명령어를 입력한다.

$ npm install pouchdb

이후 자바스크립트 코드에 다음과 같이 호출한다.

var PouchDB = require('pouchdb');

Typescript[편집 / 원본 편집]

터미널에 아래의 명령어를 입력한다.

$ npm install pouchdb @types/pouchdb

tsconfig.json 파일에서allowSyntheticDefaultImports을 active 시킨다.

{
  "compilerOptions": {
    "allowSyntheticDefaultImports": true
  }
}

이후 자바스크립트 코드에 다음과 같이 호출한다.

import * as PouchDB from 'pouchdb';
• 현재 페이지 URL 줄이기