~/tech-blog/posts/es-terms-commands — zsh

RDBMS와 ElasticSearch 용어 대응시키기

RDBMS와 ES의 용어가 다르기 때문에 나중에 용어에서 헷갈리지 않게 잘 정리해야 됩니다.

이론을 들으면서 가장 헷갈렸던 것이 인덱스였습니다.

MySQL에서는 검색 시 인덱스를 사용하지만 엘라스틱서치에서는 인덱스가 테이블처럼 불리기 때문입니다.

MySQL Elasticsearch
테이블(table) 인덱스(index)
컬럼(column) 필드(field)
레코드(record), 로우(row) 도큐먼트(document)
스키마(schema) 매핑(mapping)

인덱스 생성하기 및 조회

(MySQL 기준 테이블 생성하기)

### 인덱스 생성
PUT /users

### 인덱스 확인
GET /users

인덱스 삭제

### 인덱스 생성
PUT /users

### 인덱스 삭제
DELETE /boards

매핑 정의

(MySQL 기준 테이블 스키마 정의)

### 맵핑 정의
PUT /users/_mappings
{
  "properties": {
    "name": { "type": "keyword" },
    "age": { "type": "integer" },
    "is_active": { "type": "boolean" }
  }
}

도큐먼트 삽입 및 조회

(MySQL 기준 레코드 삽입)

# 도큐먼트 삽입
POST /users/_doc
{
  "name": "Alice",
  "age": 28,
  "is_active": true
}

간단한 C/R/U/D 작업을 완료하였고, 해당 명령어를 진행할 때 JSON 형태의 데이터로 검색을 진행해야 된다는 것을 알았습니다. 이어서 단어 검색과 역인덱스로 진행하도록 하겠습니다.

댓글

GitHub 계정으로 로그인하시면 댓글과 질문을 남기실 수 있습니다. 남겨 주신 글은 이 저장소의 Discussions에 쌓입니다.

● main 214 posts UTF-8 LF © 2026 코징 RSS · GitHub