CouchDB

2024년 11월 18일
4

CouchDB

1. Introduction — Apache CouchDB® 3.3 Documentation

CouchDB는 키와 값이 하나의 쌍을 이루는 데이터를 저장하며, JSON 객체 형태인 도큐먼트를 저장합니다.

HTTP 기반의 서버로 동작하며 REST API 형식으로 HTTP 메소드를 사용해 요청을 받고, 처리합니다.

DB 생성

curl -X PUT http://admin:[email protected]:5984/baseball

DB 조회

curl -X GET http://admin:[email protected]:5984/_all_dbs

DB 삭제

curl -X DELETE http://admin:[email protected]:5984/baseball

데이터 삽입

curl -X PUT http://127.0.0.1:5984/my_database/001 -d
'{ " Name " : " Raju " , " age " :" 23 " , " Designation " : " Designer " }'

데이터 수정

curl -X PUT http://127.0.0.1:5984/my_database/001/ -d
' { " age " : " 24 " , " _rev " : " 1-1c2fae390fa5475d9b809301bbf3f25e " } '

데이터 삭제

curl -X DELETE http://127.0.0.1:5984/my_database/001?rev=1-
3fcc78daac7a90803f0a5e383f4f1e1e

Server

/메타 정보
/_all_dbs데이터 베이스 목록
/_utils관리자 페이지

Databases

/db데이터베이스에 대한 정보
/{db}/_all_docs데이터 베이스의 도규먼트 목록
/{db}/_find데이터 베이스에서 JSON 쿼리에 해당하는 모든 도큐먼트

연산자

  1. Comparison Operators (비교 연산자):
    • $eq: 값이 주어진 값과 동일한 문서를 선택합니다.
    • $ne: 값이 주어진 값과 다른 문서를 선택합니다.
    • $lt: 값이 주어진 값보다 작은 문서를 선택합니다.
    • $lte: 값이 주어진 값보다 작거나 같은 문서를 선택합니다.
    • $gt: 값이 주어진 값보다 큰 문서를 선택합니다.
    • $gte: 값이 주어진 값보다 크거나 같은 문서를 선택합니다.
  2. Logical Operators (논리 연산자):
    • $and: 모든 조건을 충족하는 문서를 선택합니다.
    • $or: 하나 이상의 조건을 충족하는 문서를 선택합니다.
    • $not: 주어진 조건을 만족하지 않는 문서를 선택합니다.
  3. Element Operators (요소 연산자):
    • $exists: 필드가 존재하는 문서를 선택합니다.
  4. Array Operators (배열 연산자):
    • $elemMatch: 배열 필드에서 조건을 충족하는 요소가 있는 문서를 선택합니다.
  5. Regular Expression Operators (정규 표현식 연산자):
    • $regex: 정규 표현식을 사용하여 값을 선택합니다.
  6. Text Search Operators (텍스트 검색 연산자):
    • $text: 텍스트 검색을 수행합니다.
  7. Geo-spatial Operators (지리 공간 연산자):
    • $geoWithin: 특정 지리적 범위 내의 값에 대한 문서를 선택합니다.