이 섹션에서는 Bubble에서 데이터로 작업하는 다양한 방법을 다룹니다. Bubble이 다양한 유형의 데이터를 관리하는 방법을 자세히 살펴봅니다.
(1) Intro : Database 소개
데이터 작업은 모든 애플리케이션의 초석입니다.
- 사실, 어떤 식으로든 데이터에 의존하지 않는 앱을 상상하기 어려울 정도로 앱 개발의 핵심적인 부분입니다.
- 사용자가 생성한 데이터든, 개발자가 소유한 데이터든, 다른 앱 및 서비스에서 가져온 데이터든, 정보를 수집, 저장 및 시각화하는 기능은 애초에 대부분의 애플리케이션이 존재하는 이유입니다.
- 예시)
- 예를 들어, 승차 공유 앱은 거래를 완료하기 위해 운전자, 고객, 위치 및 기타 여러 세부 정보에 대한 정보가 필요합니다.
- 소셜 미디어 앱에는 사용자 정보, 사진 및 사용자 생성 콘텐츠가 필요하고 신문에는 기사와 이미지가 필요합니다.
- 모두 다른 방식으로 데이터를 수집, 저장, 표시하지만 원칙적으로 모두 동일한 방식으로 작동합니다.
“데이터 작업 능력은 앱이 가장 잘할 수 있는 것, 즉 사용자에게 가치를 제공할 수 있게 해 줍니다.”
- 대부분의 앱은 가장 기본적인 정의에 따라 데이터와 함께 작동할 뿐만 아니라 대부분 동일한 방식으로 데이터를 데이터베이스에 저장합니다.
:Bubble의 데이터 섹션에서는 데이터와 관련된 많은 주제를 다룹니다. (페이지 하단의 각 페이지 링크 참고)
- 데이터베이스의 의미
- 버블 데이터베이스 특징
- 버블 데이터베이스의 유형
- 동적 데이터 : 개발자 혹은 사용자의 입력(선택)에 따라 변하는 데이터 (변수)
- 정적 데이터 : 개발자가 작성한 데이터 (변하지 않는 상수 개념)
- 임시 데이터 : 개발자가 작업한 임시 데이터
- Files: 버블의 파일 시스템, 사진 올리기, 삭제
- 사용자 계정: 사용자가 가입, 로그인 관리
(2) 버블 Database의 특징
1. 데이터베이스란?
데이터베이스는 기술 세계의 숨은 영웅과 같습니다.
- 대부분의 사용자는 그것이 어떻게 작동하는지 또는 존재한다는 사실조차 모르는 동안, 데이터는 백그라운드에서 조용히 앉아 작업을 수행합니다.
- 사용자가 보는 모든 것은 항상 데이터가 준비되어 있는 것처럼 보이는 멋진 사용자 인터페이스를 갖고 있습니다. 그러나 데이터베이스가 없다면 그러한 앱과 웹사이트는 아무 소용이 없을 것입니다.
2. 데이터베이스 작동원리
데이터베이스는 정확히 어떻게 작동합니까?
- 먼저, 마이크로소프트의 엑셀과 같이 수백, 수천 또는 수백만 개의 행과 열이 있고 각 셀에 데이터 조각이 포함된 거대한 스프레드시트를 상상해 보세요.
- 각 행은 고객 또는 주문과 같은 단일 엔티티를 나타내고 각 열은 이름이나 주문 번호와 같은 해당 엔티티의 특성을 나타내는 것으로 생각할 수 있습니다.
위와 같은 비교는 단순한 은유적 예시가 아닙니다.
- 위의 심플한 스프레드시트는 일종의 데이터베이스입니다. 그러나 앱에 연결된 복잡한 데이터베이스 유형은 안전한 방식으로 데이터를 저장하고 복잡한 쿼리를 사용하는 경우에도 특정 레코드를 찾고 검색하는 데 매우 효율적으로 설계되었습니다.
그렇기 때문에 훌륭한 애플리케이션 회사에서는 데이터와 훌륭한 디자인을 효율적으로 만드는 데 많은 노력을 기울이는 것입니다.
- Facebook과 같은 SNS나 TikTok과 같은 비디오 앱에 표시되는 것이 비디오 클립에 대한 좋아요 숫자나 URL의 주소뿐이라면 그리 재미나지 않을 것입니다. 데이터와 더불어 고객 친화적인 디자인이 함께 성공 스토리를 만드는 것입니다.
3. 버블의 데이터베이스 특징
데이터베이스 설정 및 관리는 전통적으로 컴퓨터학 학위, 심지어 추가 교육 같은 특정 교육이 필요한 까다로운 작업입니다.
그러나 Bubble의 핵심 강점 중 하나는 앱을 만들 때 자동으로 설정되는 내장 데이터베이스로, 전담 직원이 운영할 필요가 없습니다.
Bubble은 대부분의 데이터베이스 관리를 자동으로 처리합니다.
1) 앱을 처음 설정할 때 데이터베이스 만들기
- 두 개의 개별 데이터베이스 설정 및 유지 관리 : 하나는 테스트용(개발용)이고 다른 하나는 라이브 사용자용(실제운용)입니다. 두 개를 스위치 하면서 사용
2) 운영 유지 및 높은 uptime 유지율 : bubble의 평균 uptime 99.9%
업타임(uptime)이란?
- 동작 중이면서 사용 가능한 기계(일반적으로 컴퓨터)의 시간을 백분율로 나타낸 시스템의 신뢰성의 측정이다. 업타임의 반의어는 다운타임이다.
- 컴퓨터 운영 체제의 신뢰성이나 안정성의 측정을 위해 사용되며 여기서 시간은 컴퓨터가 그대로 두었을 대 충돌 없이, 관리나 유지보수 목적으로 재부팅 필요성 없이 동작할 수 있는 시간을 말한다. 역으로, 긴 업타임은 부주의(태만)를 의미할 수 있는데 일부 중요 업데이트는 일부 플랫폼에서 재부팅을 요구할 수 있기 때문이다.
3) 콘텐츠를 암호화하여 안전하게 저장 및 전송
4) 언제든지 복구할 수 있는 특정 시점 백업 수행
5) 개인 정보 보호 규칙은 누가 액세스를 시도하는지에 따라 사용자 데이터를 안전하게 보호합니다.
6) 보안 암호로 사용자 프로필 생성 및 유지 관리
7) 정기적인 취약점 테스트
(3) 버블의 데이터 유형
Bubble 애플리케이션을 개발하면서 다양한 방식으로 데이터를 저장해야 한다는 사실을 알게 될 것입니다.
이를 세 가지 범주로 나눕니다.
1. 동적 데이터: Dynamic data (the Database)
동적 데이터는 앱 사용자가 동적으로 생성, 읽기, 편집, 삭제, 검색 및 집계할 수 있어야 하는 정보입니다.
- 여기에는 소셜 미디어 게시물, 고객 정보, 블로그 기사, 전자 상거래 제품 및 채팅 메시지와 같이 개발자와 사용자가 지속적으로 작업하는 데 유용하다고 생각하는 모든 종류의 다양한 데이터가 포함됩니다.
- 이와 같은 정보들은 데이터베이스에 저장됩니다.
16. The database (중급) : 데이터베이스 기본지식과 버블 데이터의 특이점 > 바로가기
2. 임시 데이터: Temporary data (customer states와 URL parameter)
임시 데이터는 프로그램이 실행되는 동안 앱이 저장해야 하는 정보입니다.
- 기존 프로그래밍에서는 이를 변수라고 합니다. 탐색, 계산, 사용자가 선택한 항목 목록 기억, 영구적으로 저장할 필요가 없는 사용자 입력 memory, 앱이 열려 있는 동안에만 필요한 모든 종류의 정보에 사용할 수 있습니다.
19. 임시 데이터 (Temporary data) 빠르게 파악하기 (중급) > 바로가기
3. 정적 데이터 : Static data (Application Text와 Option Set)
정적 데이터는 일관성을 유지하고 싶거나 정기적으로 변경될 가능성이 없는 정보입니다.
- 이것은 주, 국가, 색상 또는 범주와 같은 옵션 목록, 헤더, 메뉴 옵션, 오류 메시지 또는 텍스트 번역과 같은 텍스트 문자열 및 회원 유형, 성별 또는 관심사와 같은 설정일 수 있습니다.
18. Static data (중급) : 버블 정적 데이터 쉽게 파악하기, 정적 데이터의 종류와 특징 > 바로가기
Bubble은 매우 다른 용도로 정적 데이터를 저장하는 다음의 두 가지 방법을 제공합니다.
1) App Text (번역되어 보임)
앱 텍스트는 헤더, 도구 설명, 설명 텍스트, 메뉴 옵션, 페이지 제목 및 메타데이터 와 같이 앱 주변에 표시되는 정적 텍스트 문자열입니다.
- 앱 텍스트는 다른 언어로 번역할 수 있는 문자열을 보유하기 위해 특별히 생성된다는 점에서 옵션 세트와 다릅니다. 이렇게 하면 전 세계 사용자가 사용할 수 있도록 앱을 쉽게 준비할 수 있습니다.
- "Welcome to my app"이라는 앱 텍스트를 추가한다고 가정해 보겠습니다. 그런 다음 독일어 및 힌디어와 같은 다른 언어로 해당 문자열의 번역을 추가할 수 있으며 Bubble은 사용자의 기본 설정에 따라 번역된 텍스트를 자동으로 사용합니다. 사용자가 선택할 수 있는 언어와 기본 설정 언어를 설정하는 방법으로 완전히 제어할 수 있습니다.
- 앱 텍스트는 번역에 사용할 수 있지만 반드시 그럴 필요는 없습니다. 앱 주변의 모든 정적 텍스트 문자열을 한 곳에서 관리하는 간단한 방법으로 사용할 수도 있습니다.
- 앱 텍스트는 공개 정보를 위한 것입니다. 암호화되지 않았으며 민감한 정보를 포함해서는 안 됩니다.
71. App text (중급) : 버블 앱 텍스트 (자동번역) 설정, 다중어 사용 설정, 글로벌 언어 앱 설정 > 바로가기
2) Option Set : 옵션 세트
옵션 세트를 사용하면 위의 예시와 같이 모든 유형의 변경되지 않는 정보를 저장할 수 있습니다.
- 텍스트나 숫자와 같은 단일 값이거나 확인란, 라디오 상자 및 드롭다운과 같은 요소에서 사용할 수 있는 값 목록일 수 있습니다.
- 이름에서 알 수 있듯이 옵션 집합을 사용하면 한 곳에서 관리할 수 있는 옵션 집합을 설정하여 필요에 따라 쉽게 유지 관리하고 업데이트할 수 있습니다. 실시간으로 변경할 수 있는 동적 데이터베이스 데이터와 달리 업데이트가 사용자에게 표시되기 전에 앱이 배포되어야 합니다. 그러므로 실시간으로 변경되는 동적 데이터와 달리 앱 사용 중에 옵션의 정보를 변경할 수 없습니다.
- 옵션 세트는 공개 정보를 위한 것입니다. 옵션 세트는 암호화되지 않았으며 민감한 정보를 포함하지 않아야 합니다.
72. Option SET (중급) : 버블에서 옵션 세트 구성, 사용하기, 서로 다른 옵션 연결, 옵션사용 예시> 바로가기
4. Files
- 버블의 파일 데이터, 사진 데이터의 형식, 사진 업로드, 삭제, 파일의 보호규칙에 대해 살펴봅니다.
5. User Account 데이터
- 버블의 특별한 형식인 사용자 계정 데이터에 대해서 알아보고 회원가입 구현 지식을 살펴봅니다.
20. User accounts data(중급) : 버블의 사용자 계정 데이터, 회원가입 구현 지식 알아보기 > 바로가기