기획자인 내가 수파베이스 & Postgre SQL 을 공부하는 이유?! (feat. 파이어베이스, 노션과의 비교)

 

 

사실 계기는 별 게 없었다.

 

트립핀 때부터 모스까지 프로젝트를 함께 개발했던 프론트엔드 개발자 J가

자신이 새로 공부하게된 '수파베이스'에 대한 장점을 알려주겠다고 했던 때가 시작이였다.

기획자인 내가 개발적인 용어는 잘 알지 못하니 최대한 간결하게 설명을 해주었다.

 

그런데 들으면 들을 수록 노션의 관계형 데이터베이스와 닮은 듯 했다.

J에게 설명해주었더니 아주 비슷하다고.

너는 구조 짜는 걸 좋아하고, 노션의  데이터베이스를 잘 쓰니 잘 이해할 것 같다며 추천했다.

(왼)J가 해준 설명과 (오)내가 노션과 연결지어 해독한 파이어베이스 vs 수파베이스

 

 

목차

1. 기획자인 내가 수파베이스와 Postgre SQL을 공부하는 이유
2. 수파베이스 vs 파이어베이스
3. 수파베이스와 노션의 유사성

 


 

1. 기획자인 내가 수파베이스와 Postgre SQL을 공부하는 이유

 

1) Postgre SQL 은 안그래도 SQL 에 대해서 꼭 공부해보고 싶었고,

2) 수파베이스는 우리 둘이서 또 만들고 싶은 앱이 있었는데 (현실적으로 한 달 뒤쯤부터 가능한)

     기획자 1명, 개발자 1명으로 앱을 만들 때 내가 공부해두면 활용하기 좋을 것 같았다.

    J도 이번엔 파이어베이스 대신 수파베이스를 써보고 싶어하고,

    내가 기획하면서 스스로 필요한 것들을 바로 테이블로 만들어 놓으면, 프론트엔드 입장에서 바로 활용할 수 있으니깐 말이다.

 

 

➜ 8월 말 - 9월 초 시작할 OO 프로젝트는 수파베이스 PostgreSQL을 활용해보기로 했다!

OO 프로젝트에 대한 카톡방 공지

 

 

 


 

2. 수파베이스 vs 파이어베이스

 

1) 오픈 소스

  • 수파베이스는 오픈 소스 기반의 백엔드 서비스 플랫폼이다. (마치 누구나 자유롭게 볼 수 있는 요리책과 같다!) 원하는 대로 레시피를 수정할 수 있고, 다른 사람들이 만든 새로운 레시피를 활용할 수도 있다. 이렇게 자유로운 환경 덕분에 원하는 기능을 추가하거나 바꿀 수 있는 유연성이 있다. 사용자나 개발자가 원하는 대로 코드를 수정하거나 커스터마이징할 수 있게 된다!
  • 파이어베이스와의 비교: 파이어베이스는 구글이 제공하는 비공개 소스 플랫폼이다. 여러가지 장점이 있지만 마치 특정 레스토랑에서만 사용하는 비밀 레시피처럼 내부를 들여다볼 수 없다. 필요한 기능이 없거나 변경하고 싶어도 제한이 있을 수 있다.

 

2) PostgreSQL 기반의 관계형 데이터베이스

  • 수파베이스: 수파베이스는 PostgreSQL이라는 관계형 데이터베이스(노션과 비슷하다!✨)를 기반으로 한다. 관계형 데이터베이스는 데이터를 표 형태로 저장하고, 데이터 간의 관계를 관리할 수 있어 다양한 데이터 분석과 검색이 용이하다! 또한 복잡한 데이터 관계와 쿼리를 처리하는 데 강점을 지니고 있어, 복잡한 비즈니스 로직을 구현하기에 적합하다.
  • 파이어베이스: 파이어베이스는 NoSQL 데이터베이스인 Firestore를 사용한다. Firestore는 유연한 데이터 구조를 제공하지만, 복잡한 관계를 처리하는 데 한계가 있을 수 있다.

 

 

트립핀 때 채팅 구현시에 파이어베이스를 썼기에 직접 J가 보여주었다.

내가 잘 알지는 못해도 굉장히 경직되어 있다고 느껴졌다.

 

마치 노션을 처음 쓰면 데이터베이스를 활용하기 보다 페이지를 활용하는데

(페이지 안에 페이지를 넣는 식), 파이어베이스가 그런 느낌이였다.

페이지1 안에 페이지2, 그 안에 페이지3... 이런 식으로 쓰다보면

하위 페이지에 있는 정보를 찾기에도 쉽지가 않고 그러다보니 활용하기에도 쉽지가 않다.

 

노션의 관계형 데이터베이스를 쓰면 각기 다른 데이터베이스간에 링크를 걸어 참조할 수 있는데,

이게 내가 수파베이스를 보는 느낌이였다.🔥

 

 

 

2) 사용자 경험 및 커스터마이징

  • 수파베이스: 수파베이스는 사용자가 직접 데이터를 구조화하고 커스터마이징할 수 있는 자유가 있다!
  • 파이어베이스: 파이어베이스는 이미 정해진 틀 안에서 사용해야 하는 경우가 많다.

 

3) 비용 및 확장성

  • 수파베이스: 수파베이스는 시작할 때 비용이 들지 않고, 규모가 커져도 비용 구조가 비교적 명확하다. 마치 처음에 맛보기로 무료 샘플을 주고, 필요하면 더 사는 식당처럼, 사용한 만큼만 지불하면 된다.
  • 파이어베이스: 파이어베이스는 초기에는 무료로 시작할 수 있지만, 사용량이 늘어나면 갑자기 높은 비용이 발생할 수 있다. 마치 음식을 무제한으로 먹다가 갑자기 추가 요금이 붙는 뷔페처럼, 사용량에 따라 예기치 않은 비용이 발생할 수 있다!

 

3. 수파베이스와 노션의 유사성

 

1) DB 관리의 구조적인 유연성

  • 수파베이스: 수파베이스는 SQL 기반의 데이터베이스로, 데이터를 구조적으로 관리할 수 있는 유연성이 있다. 이건 노션의 데이터베이스가 다양한 방식으로 데이터를 입력하고 필터링할 수 있도록 하는 것과 비슷하다! 사용자가 원하는 대로 데이터를 쉽게 조작하고 관리할 수 있다는 점에서 두 기능은 유사하다.
  • 노션: 노션 역시 굉장히 직관적인 사용자 인터페이스를 제공한다. 복잡한 데이터를 쉽게 관리할 수 있게 해주는데, 유저는 표, 목록, 카드 등의 형태로 데이터를 정리하고 필요에 따라 다양한 필터와 뷰를 적용할 수 있다!

 

2) 확장성과 커스터마이징 가능성

  • 수파베이스: 수파베이스는 위에 말한 것처럼 사용자나 개발자가 필요한 기능을 자유롭게 확장하고 커스터마이징할 수 있다. 이는 노션에서 사용자가 템플릿을 만들고 원하는 대로 페이지를 구성할 수 있는 유연성과 비슷하다.
  • 노션: 노션은 다양한 블록과 템플릿을 사용하여 페이지를 자유롭게 구성할 수 있는 기능을 제공한다. 사용자는 필요에 따라 다양한 형태로 데이터를 확장하고 연결할 수 있다.(그래서 내가 굉장히 사랑하기도 한다...)

 

 


 

 

자, 아무튼 나는 J가 들으려고 신청했다는 이 강의가 무료여서 나도 들어보려고 한다.

 

 

1. 플러터 기본기 다지기 및 기본 위젯 설명
2024년 8월 5일(월) | 오후 9시

2. SQL 파헤치기 및 슈파베이스 기본기
2024년 8월 12일(월) | 오후 9시

3. 프로젝트! SNS 및 리얼타임 채팅 기능 플러터와 슈파베이스
2024년 8월 19일(월) | 오후 9시

4. 플러터와 앱 개발의 모든 것! 마스터 Q&A
2024년 8월 26일(월) | 오후 9시

 

나는 플러터 강의는 내게 해당이 되지 않으니 2번과 3번 정도만 들으면 될 것 같다.

아, 얼른 빨리 OO 프로젝트를 시작하고 싶어라...! 설레인다.

그 사이에 할 수 있고, 해야하는 일들을 해두어야지!