그란데클립 AI 실습
데이터 저장하기 · 개념

데이터베이스와 API


방금 한 일

데이터 저장하기에서 방문자가 남긴 내용을 저장되게 만들었습니다. 화면에만 떴다 사라지지 않고, 대시보드 목록에 한 줄씩 쌓였죠. 새로고침해도, 껐다 켜도 그대로 남아 있었고요.

데이터베이스

화면에만 있는 글자는 새로고침하면 사라집니다. 저장은 남긴 것을 어딘가에 계속 모아 두는 거예요. 그렇게 데이터를 차곡차곡 쌓아 두고 꺼내 쓰는 전용 창고가 데이터베이스입니다.

사실 엑셀이나 구글 스프레드시트도 훌륭한 저장 도구예요. 익숙하고, 눈으로 바로 보고 고칠 수 있고, 공유도 쉽죠. 게다가 스프레드시트에 Apps Script를 붙이면 자동화나 간단한 앱의 뒷단으로도 쓰고, 스프레드시트를 데이터베이스처럼 다루도록 만들 수도 있어요. 요즘은 비개발자에게 이 조합을 권하기도 합니다.

스프레드시트가볍고 빠르게vs데이터베이스크고 안전하게
가볍고 빠르게는 스프레드시트, 크고 여럿이 안전하게는 데이터베이스가 강해요.

그럼에도 규모가 커지고 여럿이 함께 쓰기 시작하면, 처음부터 그런 일을 위해 만든 데이터베이스가 강합니다. 이럴 때 데이터베이스를 고르는 이유는 이렇습니다.

  • 여러 사람이 동시에 많이 써도 서로 덮어쓰지 않고 안전하다
  • 같은 정보를 한 곳에만 두어 중복과 불일치를 막는다
  • 수십만 줄이 넘어도 원하는 것을 빠르게 찾고 거른다
  • 조건을 걸어 정확히 조회하고 집계할 수 있다
  • 형식·규칙을 강제해 잘못된 값이 들어오는 걸 막는다

API

그런데 내 페이지가 그 창고 문을 직접 열지는 않습니다. 대신 서버에게 “이거 저장해줘”, “목록 줘”라고 정해진 방식으로 부탁하고, 서버가 데이터베이스를 다뤄요. 이렇게 프로그램끼리 ‘이런 요청엔 이렇게 답한다’고 미리 정해 둔 약속된 창구가 API입니다.

예를 들어 날씨 앱은 날씨를 직접 재지 않아요. 날씨 서버에 “서울 날씨 줘”라고 API로 요청하면, 서버가 “맑음, 24℃”라고 정해진 형식으로 답해 줍니다.

요청“서울 날씨 줘”내 앱클라이언트날씨 서버다른 서비스API응답“맑음 · 24℃”
정해진 형식으로 묻고 답하기로 미리 약속한 창구가 API예요. (예: 날씨 받아오기)

서버와 클라이언트에서 본 요청과 응답이, 실은 이 약속(API)을 따라 오간 것이었어요. 다른 서비스의 데이터를 가져오거나 AI에게 물어볼 때도 같은 방식으로 주고받습니다.


← 돌아가기