모든 애플리케이션 개발자는 샘플 데이터의 필요성에 직면해 있습니다. 기능 테스트든 대규모 스트레스 테스트든, 실제 조건에서 앱이 실제로 어떻게 작동하는지 확인하려면 의미 있는 대량의 데이터가 필요합니다. 대부분의 경우 운영 워크로드, 데이터 거버넌스 및 보안에 미치는 영향 때문에 실제 프로덕션 데이터를 사용하는 것은 불가능하므로 샘플 데이터가 필요합니다.

무작위 데이터 생성 도구는 존재하지만, 일반적으로 복잡한 애플리케이션 데이터와 유사하지 않은 일반 값을 가진 단순 반복 데이터만 생성합니다. 또한 이러한 도구는 엔터프라이즈급 규모와 성능을 위해 앱을 테스트하기에 충분한 데이터를 생성하지 못하는 경우가 많습니다.

저는 최근 이러한 상황에 직면한 개발 작업에 참여했는데, 소량의 수작업 데이터로는 잘 작동하지만 아직 대량의 데이터로 대규모 테스트를 거치지 않은 프로토타입 항공사 앱이 있었습니다. 게다가 데이터는 중첩된 요소로 복잡해야 했기 때문에 소량의 단순 데이터만 생성할 수 있는 데이터 생성 도구는 쓸모가 없었습니다.

저희는 솔루션을 위해 Couchbase의 놀라운 기능과 엄청난 규모에 주목했습니다. 카펠라서비스형 클라우드 데이터베이스입니다.

개요를 읽어보고, 솔루션이 실제로 작동하는 데모 동영상을 따라 하거나 깃허브의 코드로 바로 이동합니다..

 

저희가 생각해낸 레시피는 간단합니다:

    • 1부 카우치베이스 카펠라 데이터 서비스
    • 1부 카우치베이스 카펠라 이벤트 서비스
    • 2 이벤트 기능

특정 시간 동안 생성하려는 데이터의 양에 따라 아카펠라 구성으로 잘 섞습니다. 원하는 데이터를 생성하고 파이핑을 제거하여 바로 사용할 수 있도록 준비합니다.

자세히 알아봅시다!

카우치베이스 카펠라 = 속도와 확장성

Couchase Capella는 최신 애플리케이션을 위한 클라우드 데이터베이스 플랫폼으로, 분산형 NoSQL 데이터베이스의 민첩성과 성능, RDBMS의 강점을 단일 데이터베이스에 융합한 제품입니다.

카펠라는 다목적데이터 액세스 패턴의 조합이라는 의미입니다. 첫째, 초고속 응답성을 위해 메모리에서 키 값 처리를 제공합니다. 다음으로, 유연성과 복원력을 위해 JSON 문서 기반 데이터의 분산 저장소를 제공합니다. 여기에 전체 텍스트 검색, 모바일 데이터 동기화, IoT/시계열, 컬럼형 분석 등을 지원합니다.

또한 다른 문서 데이터베이스에서는 일반적으로 찾아볼 수 없는 SQL 쿼리 지원도 제공하므로 개발자는 이미 알고 있는 언어를 사용해 Capella로 작업할 수 있습니다. 이러한 기능은 고객이 더 이상 여러 가지 기술을 조합할 필요가 없는 기능으로, Capella를 사용하면 단일 데이터베이스에서 모든 기능을 이용할 수 있습니다.

Capella의 규모와 속도는 대기업 고객과 스타트업 모두의 신뢰를 받고 있으며 다음과 같은 분야에서 입증되었습니다. 경쟁사 대비 우수한 성능을 보여주는 벤치마크.

카펠라 이벤트 서비스 = 실시간 액션

다른 기본 제공 기능 외에도 Capella는 다음과 같은 기능을 제공합니다. 이벤트 서비스를 사용하면 개발자가 Capella에서 데이터가 변경될 때 실시간으로 호출되는 JavaScript 함수를 작성할 수 있습니다. 함수는 Capella 컨트롤 플레인의 데이터 도구 이벤트 편집기를 사용하여 함수를 실행할 소스 버킷을 지정하는 방식으로 쉽게 만들 수 있습니다.

이벤트 서비스의 일반적인 사용 사례는 다음과 같습니다:

    • 임계값 기반 알림
    • 모니터링 매개변수
    • 문서 강화
    • 향후 작업 예약하기
    • 데이터 정리 포인트 도구
    • 외부 REST 상호 작용

몇 분 만에 1억 개의 문서!

데이터 생성을 위해 Capella Eventing Service를 선택한 이유는 필요한 형식의 문서를 정확하게 생성할 수 있는 유연성과 생산할 수 있는 규모를 제공했기 때문입니다. lots 중 하나입니다!

먼저, 단시간에 대량의 데이터를 생성하도록 Capella 클러스터를 구성했습니다. 이 경우 5분 정도에 1억 개의 문서를 생성해야 했으므로 데이터 서비스를 실행하는 6개와 이벤트 서비스를 실행하는 4개로 총 10개의 클러스터 노드를 사용했습니다.

다음으로, 실제 항공사 데이터가 포함된 JSON 문서를 대상 버킷으로 출력하도록 설계된 루프를 사용하여 카펠라 이벤트 서비스용 함수를 만들었습니다.

거기서부터 데이터를 생성하는 것은 쉬웠습니다. 지정된 소스 폴더에서 간단한 데이터 변형을 수행하여 함수를 트리거했고, 3분 이내에 1억 개의 항공사 문서를 얻었습니다!

데이터가 생성된 후, 저희는 Capella의 다차원 스케일링 구성을 다시 3개 노드로 줄여 비용을 절감했습니다.

작성자

게시자 마크 갬블, 제품 및 솔루션 마케팅 담당 이사

저는 기술 및 솔루션 컨설팅 배경과 20년 이상의 엔터프라이즈 및 오픈 소스 기술 경력을 갖춘 열정적인 제품 마케터입니다. 저는 경력 전반에 걸쳐 여러 데이터베이스 및 분석 솔루션을 출시했으며 금융 서비스, 자동차, 호텔, 하이테크, 의료 등 다양한 산업 분야의 고객과 함께 일해 왔습니다. 특히 분석과 AI에 대한 전문성을 갖추고 있으며, 데이터에 관한 모든 것을 좋아하고, 선한 목적의 데이터 이니셔티브를 적극 지지합니다.

댓글 남기기