코우치베이스 모바일

엣지 AI에 SQLite가 잘못된 데이터베이스인 5가지 이유

AI 기반 애플리케이션을 제공할 때 중요한 개발 고려 사항은 데이터 저장 및 처리입니다. 빠르고 안정적인 데이터 access는 AI 기반 기능에 필수적이며 훌륭한 사용자 경험의 핵심입니다. 클라우드 전용 데이터베이스는 빠르고 안정적인 인터넷 연결이 가능한 고정 위치 앱에 적합합니다. 그러나 모바일이나 IoT 앱과 같은 엣지 환경의 앱의 경우 클라우드 전용 데이터베이스는 문제가 됩니다. 인터넷 지연 시간과 중단은 AI 응답을 방해하고, 사용자 경험을 망치며, 비즈니스 가동 중단으로 이어질 수 있습니다.  

임베디드 데이터베이스가 구출에 나서다

사용 중 임베디드 데이터베이스, 디바이스 상의 앱 내에서 직접 작동하여 인터넷 의존성 문제를 해결합니다. 앱은 클라우드 대신 로컬에서 데이터에 접근하고 저장합니다. 앱은 인터넷에 대한 의존도가 낮아지고, 더 빠르며, 가용성이 높아집니다.

SQLite 가장 잘 알려진 임베디드 데이터베이스이며 모바일이나 IoT 앱 개발자에게는 당연한 선택처럼 보일 수 있습니다. 하지만 잘 알려져 있다고 해서 엣지 AI 애플리케이션에 가장 좋은 선택이 되는 것은 아닙니다. 그 이유를 알아보려면 계속 읽어보세요.

SQLite란 무엇입니까?

SQLite는 가볍고 독립적인 SQL 데이터베이스 엔진으로, 호스트 응용 프로그램 내부에 직접 내장된 프로세스 내 라이브러리로 작동합니다. 오픈 소스이며 사용하기 쉬워서 독립형 또는 “외부망과 차단된”네트워크에 연결된 데이터베이스 없이 데이터를 로컬에 저장하고 접근하는 앱입니다. 이것이 바로 SQLite를 인터넷 연결이나 클라우드 백엔드 데이터베이스에 대한 직접 접근 없이 작동해야 하는 독립형 애플리케이션에서 인기 있는 선택으로 만드는 이유입니다.

SQLite는 어디에서 빛을 발할까요?

SQLite는 개인 건강 모니터링, 메모 정리, 스케치 앱과 같이 단일 사용자를 대상으로 하고 데이터를 공유할 필요가 없으며, 데이터가 수집되면서 비교적 빈 화면에서 사용자 경험이 시작되는, 독립적으로 작동하도록 설계된 앱에 아주 좋습니다.

위의 기준이 적용될 때, 개발자는 모바일, 데스크톱, IoT 애플리케이션에서 개인 정보, 로그, 기기 측정값, 사용자가 생성한 콘텐츠 및 기타 종류의 데이터를 저장하기 위해 SQLite를 사용할 수 있습니다.

SQLite는 별도의 연결된 데이터베이스의 필요성을 없애주기 때문에 인터넷 연결 앱에서 흔히 발생하는 지연 시간과 다운타임도 없애줍니다.

이러한 장점들만 보면 SQLite가 AI 기능이 포함된 앱을 포함하여 모든 엣지 컴퓨팅 앱에 이상적인 솔루션처럼 보일 수겠지만, 개발자가 알아야 할 한계와 더 나은 대안들이 존재합니다.

엣지 AI

엔터프라이즈 급 모바일 및 IoT 앱은 규모가 글로벌하고, 정보를 공유하는 많은 사용자를 지원하며, 속도와 가동 시간에 대한 높은 보장이 필요합니다. 엣지 컴퓨팅 초저지연과 고가용성이 최우선 요구사항인 애플리케이션을 위해 클라우드 컴퓨팅을 대체하는 아키텍처입니다. 엣지 컴퓨팅의 궁극적인 목표는 엣지 데이터 센터와 기기 내장형 데이터 스토리지를 사용하여 데이터 처리를 애플리케이션에 더 가깝게 이동시킴으로써 인터넷 의존성을 없애는 것입니다. 엣지 컴퓨팅이 앱 실행을 위해 클라우드를 대체하는 것이 아니라, 더 정확히는 데이터 처리를 클라우드에서 엣지로 확장하는 아키텍처라는 점에 주목할 필요가 있습니다.

“엣지 AI” 에지 컴퓨팅 아키텍처에 인공지능(AI) 처리를 포함하는 개념이다. 이것은 실행하는 것을 포함한다 대규모 언어 모델 클라우드에서 엣지에 이르기까지 각 아키텍처 계층의 데이터베이스와 함께, 다음을 포함하여 온디바이스 소형 언어 모델. 이러한 종류의 토폴로지는 앱의 기능을 구동하는 AI 모델에도 속도와 가동 시간에 대한 동일한 보장을 제공합니다.

임베디드 데이터베이스인 SQLite는 엣지 디바이스에서 실행될 수 있으며 엣지 AI 아키텍처에 적합해 보일 수 있습니다. 그러나 앱 요구 사항이 앞에서 설명한 단순한 요구 사항을 넘어선다면 다시 생각해 보아야 할 수도 있습니다.

엣지 AI에 SQLite가 부적합한 5가지 이유

엣지 AI 아키텍처를 구현하려면 격리된 상태로 실행될 수 있고, 무엇보다도 클라우드와 다른 앱 클라이언트 간에 데이터를 안전하게 동기화하는 동시에, 호스팅되는 위치에 관계없이 AI 모델과 원활하게 통합되는 데이터베이스가 필요합니다.

엣지 AI 아키텍처에서 SQLite가 고전하는 다섯 가지 이유는 다음과 같습니다:

  1. 유연하지 않은 데이터 모델: SQLite는 관계형이며 엄격한 스키마를 따르기 때문에 앱의 모델 요구 사항을 효율적이고 적절한 방식으로 표현하기가 어려울 수 있습니다. 이러한 엄격함 때문에 데이터베이스에 새 필드를 추가하는 것과 같은 간단한 작업조차도 전체 스키마 업데이트를 요구할 수 있습니다. 즉, 업데이트된 데이터 스키마를 가진 모바일 앱의새로운 릴리스는 앱 실행 시 비용이 많이 드는 데이터베이스 스키마 마이그레이션을 수행해야 하므로 앱 시작 비용이 증가합니다. SQLite의 관계형 모델은 지원할 수 있는 데이터 형식도 제한하며, 이는 결국 AI의 정확도와 컨텍스트를 제한합니다. GenAI는 광범위한 데이터 형식을 요구하므로 데이터베이스가 더 많은 형식을 지원할수록 좋습니다. 대안은 JSON 문서 데이터 저장을 지원하는 NoSQL 데이터베이스를 사용하는 것으로, 이는 AI에 이상적인 여러 형식의 방대한 양의 데이터를 처리할 수 있습니다.
  2. 내장된 데이터 동기화 기능 없음: 연결 상태가 끊겼다 이어지는 멀티유저 앱의 경우, 데이터 동기화는 훌륭한 사용자 경험을 위한 일관성을 제공할 뿐만 아니라 가장 빠르고 정확한 AI 응답을 제공합니다. 또한 데이터 동기화는 보안을 강화합니다. 사용자 권한이 변경되면 데이터 동기화가 앱 생태계 전반에 걸쳐 해당 변경 사항을 즉시 반영하여 아무도 액세스해서는 안 되는 데이터에 액세스하지 못하도록 보장합니다. SQLite는 기본적으로 데이터 동기화를 지원하지 않으므로, 개발자들은 자체 솔루션을 구축하다 또는 타사 솔루션과 통합하여 아키텍처를 복잡하게 만들고, 핵심 앱 기능에서 개발 초점을 빼앗아 갑니다.
  3. 엔터프라이즈급 백엔드 데이터베이스 없음: 로컬 데이터 스토리지를 사용하더라도 모바일 앱은 데이터의 중앙 집합 지점으로 백엔드 데이터베이스가 여전히 필요하며, 이것이 분산형 모바일 앱 생태계가 확장성과 성능을 유지하는 방식입니다. 이와 같이 클라우드에 자주 배포되는 백엔드 데이터베이스 서버는 에지 AI 아키텍처의 중요한 부분입니다. SQLite는 독립형의 확장 가능한 데이터베이스를 제공하지 않으며, 오직 임베디드 데이터베이스일 뿐입니다. SQLite를 사용하는 앱을 위해 확장 가능한 백엔드를 얻으려면 타사 데이터베이스 서버 기술과 통합해야 합니다. 이는 개발자에게 배포를 더욱 복잡하게 만들고 유지보수 및 업그레이드에 더 많은 시간이 소요되도록 만듭니다.
  4. 엔터프라이즈급 보안 부재: 동기화된 탈중앙화 데이터 스토ري를 사용할 때는 데이터를 안전하게 액세스, 전송 및 저장하는 것이 중요합니다. 이를 완벽하게 다루려면 인증, 저장 데이터(data at rest), 전송 데이터(data in motion), 읽기/쓰기 액세스 제어를 해결해야 합니다. SQLite는 역할 기반 액세스나 데이터 암호화를 기본적으로 지원하지 않습니다. AI의 경우처럼 엄격한 데이터 보안이 중요한 경우, 개발자는 타사 보안 확장을 활용하여 자체적인 보안 통합을 구축해야 합니다.
  5. 벡터 검색 없음: 대화형 챗봇, 추천 시스템, AI 어시스턴트와 같은 생성형 AI 기능의 경우, 벡터 검색은 현재의 로컬 벡터 데이터를 프롬프트와 함께 전달하여 LLM 응답의 정확성과 문맥을 향상시키는 검색증강생성(RAG)과 같은 기술을 통해 대형 언어 모델(LLM)과의 쉬운 통합을 가능하게 합니다. SQLite는 벡터 검색을 지원하지 않으므로, 온디바이스에서 RAG 기반 기능이나 시맨틱 검색에 사용할 수 없어 엣지 AI의 이점이 완전히 사라지게 됩니다.

요약하자면, 엣지에서 엔터프라이즈급의 대규모 AI 기반 애플리케이션을 구축하고 배포할 때 SQLite를 선택한다면 틀림없이 많은 개발 난관에 직면하게 될 것입니다.

Couchbase 모바일: 엣지 AI를 위한 최적의 데이터베이스

AI 기반 앱을 엣지에서 구축하고 배포할 때 SQLite의 단점을 극복하려고 시간을 낭비하지 마세요. 대신 기성 클라우드-엣지 동기화 솔루션을 사용하여 팀이 앱을 최고로 만드는 데 집중할 수 있도록 시간을 확보하세요! 

Couchbase Mobile은 데이터 처리와 벡터 검색을 애플리케이션에 직접 내장하고, 인터넷 연결이 없는 상태에서도 클라우드에서 엣지로, 그리고 기기 간에 데이터를 동기화하여 가장 빠르고 안정적인 AI 기반 앱을 제공합니다. 제품 스택은 다음과 같습니다.

엔터프라이즈급 백엔드 클라우드 데이터베이스

카우치베이스는 GenAI 애플리케이션과 에이전틱 시스템을 구축 및 배포하기 위한 고성장, 다목적 NoSQL JSON 문서 데이터베이스 플랫폼입니다. 메모리 우선 분산형이며, 대규모 벡터 검색을 기본적으로 지원합니다. 카우치베이스 카펠라, 당사의 호스팅형 Database-as-a-Service를 이용하거나 설치 및 관리하세요 카우치베이스 서버 공개 또는 비공개 클라우드에서.

내장형 모바일 데이터베이스
코우치베이스 라이트 모바일 및 IoT 앱을 위한 임베디드 버전의 Couchbase로, 기기에 데이터를 로컬로 저장합니다. 서버 버전과 마찬가지로 Couchbase Lite는 데이터를 JSON 문서로 저장하고, 에지 AI에 필수적인 벡터 검색을 지원하며, 내장 보안 및 세분화된 데이터 액세스 제어를 제공합니다. 또한 다음을 포함합니다: 예측 쿼리 이미지 분류기와 같은 AI 모델을 호출하도록 특별히 설계된 기능.

안전한 모바일 데이터 동기화
카우치베이스 모바일(Couchbase Mobile)은 피어 투 피어 및 클라우드 투 엣지 방식의 데이터 동기화를 기본으로 제공합니다. 다음과 같은 호스팅 데이터 동기화 사용을 선택하십시오. 카펠라 앱 서비스, 또는 설치 및 관리 카우치베이스 싱크 게이트웨이 자기 자신.

결론

대규모 백엔드 데이터베이스, 강력한 임베디드 데이터베이스, 클라우드에서 엣지에 이르는 벡터 검색, 그리고 포괄적인 데이터 동기화 기능을 결합하여 제공하는 Couchbase Mobile은 1초 미만의 응답 속도와 100% 가동 시간을 보장하는, 안전하고 복원력이 뛰어나며 오프라인 우선 방식의 엣지 AI 애플리케이션을 구축하고 배포하기 위한 유일한 선택지입니다.

엣지에서 자체 미션 크리티컬 앱을 위해 Couchbase Mobile을 사용하는 엔터프라이즈 고객은 다음과 같습니다:

펩시코 펩시코의 3만 명에 달하는 현장 영업 직원들은 인터넷 연결이 없는 상태에서도 주문 접수, 매장 상품 진열, 매장 내 영업 관리 등의 영업 활동을 차질 없이 수행할 수 있도록 Couchbase Mobile 기반의 앱을 사용합니다. 여기서 펩시코(PepsiCo) 도입 사례에 대해 자세히 알아보세요.

유나이티드 유나이티드항공의 41,000명이 넘는 조종사, 승무원, 운항 스케줄러는 업무 프로세스를 간소화하고 데이터 관리를 단순화하기 위해 Couchbase Mobile로 구축된 모바일 승무원 스케줄링 애플리케이션을 사용합니다. 여기서 유나이티드 유스 케이스에 대해 자세히 알아보세요.

퍼시픽 가스 앤드 엘렉트릭 PG&E는 현장의 가스 및 전력 검사관들에게 오프라인 상태에서도 실시간 데이터를 제공하는 Couchbase Mobile 기반 앱을 활용하여 사고 대응 및 안전을 개선하고 있습니다. 여기서 PG&E 사용 사례에 대해 자세히 알아보세요.

Couchbase Mobile에 대해 자세히 알아보기: www.couchbase.com/mobile, 그리고 다음 사이트에서 카펠라 앱 서비스 프리 티어에 가입하세요: cloud.couchbase.com/sign-up.

 

이 기사 공유하기

작가

저는 엔터프라이즈 및 오픈소스 기술 분야에서 20년 이상의 경력을 가진, 기술 및 솔루션 컨설팅 백그라운드를 갖춘 열정적인 제품 마케터입니다. 커리어 기간 동안 여러 데이터베이스 및 분석 솔루션을 출시했으며, 금융, 자동차, 호텔, 하이테크, 헬스케어 등 다양한 산업군의 고객들과 함께 일해 왔습니다. 분석과 인공지능(AI) 분야에 특히 전문성을 가지고 있고 데이터 관련 모든 것을 사랑하며, 공익을 위한 데이터(data-for-good) 이니셔티브를 열렬히 지지합니다.

댓글 남기기

카우치베이스 카펠라를 시작할 준비가 되셨나요?

개발 시작하기

NoSQL을 탐색하고, 리소스를 찾아보고, 튜토리얼을 시작하려면 개발자 포털을 확인하세요.

카펠라 프리 사용하기

단 몇 번의 클릭으로 카우치베이스(Couchbase)를 직접 체험해 보세요. Capella DBaaS는 시작하기 가장 쉽고 빠른 방법입니다.

연락해

Couchbase 제품군에 대해 더 알고 싶으신가요? 저희가 도와드리겠습니다.