더 이상 DB, API 클라이언트에 의존하지 않아도 되어요.

더 이상 DB, API 클라이언트에 의존하지 않아도 되어요.
Photo by Priscilla Du Preez / Unsplash

DB, API 클라이언트란?

DB 클라이언트는 흔히 데이터베이스를 조회하는 클라이언트 서비스를 지칭합니다. Database IDE, SQL 클라이언트 등의 다양한 용어로 불리며 대표적으로 오픈소스 또는 커뮤니티 버전을 제공하는 제품은 Sequel Pro, Postico, DBeaver, Mysql Workbench 등이 있습니다.

기업형 서비스는 Jetbrains의 Datagrip이 있고 Database IDE로 설명하고 있으며, TablePlus, TeamSQL(AWS에 인수됨), PopSQL 등 협업 기능이 강화된 클라우드 서비스도 있습니다. 국내에는 Querypie가 데이터 거버넌스에 특화된 제품을 만들어가고 있습니다. DB 클라이언트 안에서도 서비스들이 각자 다른 목적에 집중합니다.

API 클라이언트는 DB 클라이언트와 마찬가지로 API를 호출하는 클라이언트 서비스를 말합니다. 다양한 서비스가 있지만 스타트업 실무자들 주변에서 많이 쓰이는 Postman이 있습니다. 클라우드와 로컬 서비스 모두 제공하고 있으며, 클라우드에서는 호출 횟수에 제약이 있습니다. (로컬에서 동작하는 앱은 무제한 호출 가능)

용도

클라이언트 서비스들은 주로 개발자가 데이터를 조회해보거나 예외적으로 추가 또는 수정할 때 쓰입니다. 데이터 추출 또는 서비스 테스트 용도로도 쓰이며, 최근에는 개발자 외에도 데이터 분석가 또는 그로스해커 등 더 다양한 직군의 사용자가 늘어나고 있습니다.

서비스들은 크게 두가지 형태로, 대체로 무료인 커뮤니티(community) 버전과 유료인 기업형 솔루션을 제공합니다. 커뮤니티 버전을 지원하는 클라이언트는 대부분 앱을 다운받아 로컬에서 실행하며 데이터를 조회하는데 매우 편리하지만 쿼리나 결과를 저장하고 공유하는 등 협업 기능은 대부분 부족한 편입니다.

반면에 기업형 서비스를 제공하는 클라이언트 앱들은 협업 기능 등 다양한 부가기능을 제공하지만 당연하게도 사용자당 비용이 발생하게 됩니다. 이 비용은 대체로 인당 월 $20-50 사이입니다.

한계

DB, API 클라이언트 모두 개발자를 위한 도구이고 내부 사용자를 위한 서비스 툴은 아닙니다. 때문에 반복적인 작업이나 사내의 일반 사용자들이 문제를 해결할 수 있게 하기 위해서는 다른 툴을 이용해야합니다.

SQL 쿼리와 API를 배우고 DB, API 클라이언트를 활용한다면 어느정도 커버를 할 수도 있지만, 임시방편일 뿐입니다. 조직의 규모가 커지고 다양한 사람이 참여하게 되면 UI로 데이터를 조회하거나 수정할 수 있게 사내 서비스나 툴을 제공해야합니다.

어드민 개발과 비용

이러한 사내 서비스나 툴은 어드민, 백오피스, 운영툴 등 다양한 이름으로 불립니다. 많은 20-50명 이하의 스타트업은 서비스가 발전하는 단계에 있기 때문에 어드민 또한 지속적으로 발전하고 점검이 필요합니다.

20명 이하의 스타트업의 경우 1명 정도의 개발자가 주요 업무 시간을 할애하여 중간 중간 어드민을 개발하고 개선하게 되는데, 1명이 전담해서 항상 책임지지는 않기 때문에 유지보수, 인수인계 및 전환 비용 등도 함께 고려해야합니다. 이는 연간 약 1,500~3,000만원 정도의 비용으로 산정될 수 있습니다. 당연하게도 비즈니스가 복잡해지고 인원이 늘어나게 되면 어드민에 필요한 리소스 또한 증가할 가능성이 높습니다.

이런 복잡한 상황 때문에 어드민을 개발하지 않고, 그때 그때 개별 이슈에 대한 지원 가능한 사람을 급하게 구하고 DB, API 클라이언트로 처리를 하기도 합니다. 당장은 큰 이슈도 없어보이고 비용도 적어보이지만, 사실은 커뮤니케이션 비용, 전환 비용 등 숨은 비용이 증가하게 되는 결과를 낳게 됩니다.

어떻게 해야하는가

분명 클라이언트 서비스와 어드민의 장단점이 존재하고 적합한 순간들이 있습니다. 하지만 본래 용도에 맞지 않는 상황도 존재합니다. 그렇다면 다른 대안은 없는걸까요?

스타트업 비즈니스의 문제를 빠르게 잘 해결하는데 적합한 DB, API 클라이언트의 기능과 어드민의 장점을 잘 조합해볼 수는 없을까요? 간단한 SQL과 API 호출을 위해서 매번 클라이언트를 이용하거나, 매번 어드민을 개발하고 배포해야할까요?

셀렉트는 이 불편함을 바꾸고자 도구를 제공합니다. DB 클라이언트나 API 클라이언트에서 쓰던 설정을 그대로 옮기면 어드민과 같은 버튼과 입력폼으로 변하고 공유, 협업 가능한 페이지로 탄생합니다. 동시에 코드와 배포 없이 미리 준비된 모듈을 YAML 설정 파일만 작성하여 컨트롤이 가능합니다.

적은 리소스로 개발자와 일반 사용자 모두의 생산성을 올리고 숨은 비용을 절감할 수 있는 방법을 찾고 계시다면 셀렉트를 한 번 이용해보시기 바랍니다.

→ 셀렉트 이용해보기