HeatWave AutoML을 활용한 인 데이터베이스 머신러닝

Michael Chen | Content Strategist | 2024년 10월 15일

인-데이터베이스 머신러닝(in-database machine learning)은 머신러닝 알고리즘과 기술을 데이터베이스 관리 시스템에 통합하는 것을 의미합니다. 데이터 세트 선택, 학습 알고리즘, 모델 평가를 포함한 모든 프로세스가 데이터베이스 내에 존재합니다. 기업은 인-데이터베이스 머신러닝을 통해 데이터베이스 내에서 직접 복잡한 분석 작업을 수행할 수 있으므로 시스템 간에 데이터를 이동할 필요가 없습니다. 이를 통해 데이터 가져오기/내보내기 프로세스와 관련된 대기 시간, 데이터 무결성 및 보안 문제가 제거됩니다.

갑자기 많은 고객 이탈을 겪고 있는 회사를 생각해 보십시오. 머신러닝 또는 ML 알고리즘은 어떤 고객이 경쟁사로 전환할 것인지 예측하고 개인화된 마케팅 캠페인을 제안하며 해당 구매자를 재참여시키는 방법에 대한 권장 사항을 제시할 수 있습니다. 자주 구매한 품목의 경우 초과 재고가 있을 수 있습니다. 특별 프로모션을 제공하면 재고를 소진하고 고객을 행복하게 할 수 있습니다. 데이터베이스 내에서 직접 머신러닝을 사용할 수 있는 경우 최신 데이터로부터 이러한 제안을 훨씬 더 빠르게 생성할 수 있습니다. 회사는 빠르게 방향을 전환할 수 있습니다. 또한 외부 ML 엔진으로 데이터를 이동할 필요가 없기 때문에 고객 정보 노출에 대한 우려가 사라집니다.

인-데이터베이스 머신러닝이란 무엇인가요?

인-데이터베이스 머신러닝은 머신러닝 알고리즘을 데이터베이스에 직접 제공하므로 다른 시스템 간에 데이터를 이동할 필요가 없습니다. 전통적으로 머신러닝은 데이터베이스에서 데이터를 추출하여 별도의 ML 분석 플랫폼 또는 툴에서 처리해야 했습니다. 이는 특히 대용량 데이터 세트를 처리할 때 시간이 많이 걸리고 리소스를 많이 소모할 수 있습니다.

인-데이터베이스 머신러닝을 사용하면 머신러닝 알고리즘이 데이터베이스 환경 내에서 실행되는 동안 데이터가 그대로 유지됩니다. 데이터베이스에 ML 알고리즘을 내장하면 얻을 수 있는 주요 이점은 더 빠르고 효율적인 분석입니다.

간단히 말해 데이터를 이동하게 되면 모든 작업이 느려집니다.

인-데이터베이스 머신 러닝은 AI 모델 학습 등에 필요한 대규모 데이터세트에 특히 유용합니다. 인-데이터베이스 머신러닝을 통해 데이터베이스 환경은 플랫폼에 내장된 도구로 코딩, 모델 구축 및 테스트를 수행할 수 있습니다. 따라서 몇 번의 클릭만으로 데이터베이스의 모든 테이블을 데이터 집약적인 프로젝트에 사용할 수 있습니다.

또한 인-데이터베이스 머신러닝은 교육 또는 배포에 관계없이 인프라 일관성을 제공합니다. 즉, IT 팀은 관련 유지 관리 및 QA 작업뿐만 아니라 새로운 프로덕션 준비 인프라를 생성하지 않아도 되며 차기 모델 사용 단계를 지원할 수 있습니다.

주요 요점

  • 인-데이터베이스 머신러닝을 통해 조직은 데이터베이스 환경 내에서 머신러닝 모델을 코딩, 구축, 테스트 및 배포할 수 있습니다.
  • 머신러닝 프로세스를 데이터베이스 내에 유지함으로써 훨씬 더 효율적으로 진행합니다.
  • 인-데이터베이스 머신러닝으로 구축된 모델은 독립형 도구로 구축된 모델보다 복잡하지 않은 경우가 많습니다. 이러한 모델은 환경 내에서 사용 가능한 기능에 의존하기 때문입니다.

인-데이터베이스 머신 러닝 알아보기

인-데이터베이스 머신러닝은 직원들이 익숙한 데이터베이스 시스템 및 도구를 사용하는 원활한 경험입니다. 마찬가지로 분석가는 기존 데이터베이스 및 친숙한 쿼리 언어를 사용하여 추가 소프트웨어 또는 하드웨어 투자 없이도 고급 분석을 수행할 수 있습니다. 데이터베이스 내에서 직접 데이터를 분석함으로써 조직은 최신 데이터에 대한 중요한 통찰력을 발견하고 보다 시기적절한 데이터 기반 의사 결정을 내릴 수 있습니다.

인-데이터베이스 머신러닝이 없다면 ML 분석을 데이터에 적용하려는 기업은 추출/변환/로드(ETL) 또는 추출/로드/변환(ELT) 프로세스를 수행하고 데이터를 외부 시스템으로 전환해야 합니다. 이 전통적인 모델에서 데이터 사이언티스트는 수동 가져오기/내보내기 작업을 수행하거나 API를 통해 시스템을 통합할 수 있습니다. 두 경우 모두 머신러닝 기능을 위한 데이터 세트를 준비하려면 여러 가지 추가 단계가 필요하며, 이러한 추가 단계에서는 다음과 같은 잠재적인 문제가 발생할 수 있습니다.

  • 중복 데이터 오류
  • 데이터 손상 오류
  • 보안 결함
  • 과도한 리소스 및 컴퓨팅 사용량 및 관련 비용
  • 통합 호환성 문제
  • 형식 호환성 문제

인-데이터베이스 머신러닝은 내보내기/가져오기 단계를 건너뛰므로 호환성을 보장하기 위해 재구축 또는 재포맷 작업을 수행하지 않아도 데이터 자체와 동일한 환경에서 ML 작업을 유지할 수 있습니다. 데이터가 데이터베이스 내에 머무르면 이동을 처리할 수 있는 시스템을 유지 관리할 필요도 없어집니다.

인-데이터베이스 머신러닝의 중요성

데이터 규모가 커질수록 머신러닝 작업, 특히 AI 모델 교육에 다양한 데이터 소스 세트를 사용할 때 여러 가지 장애물이 발생합니다. 여기에는 다음이 포함됩니다.

  • 모델 학습 제약. 다수의 데이터 집합이 너무 커지면 지속적으로 ETL/ELT 처리를 수행할 수 없기 때문에 데이터 팀은 대개 모델 학습에 데이터의 하위 집합만 사용하게 됩니다. 이는 모델이 "실제 세계"에 배포될 때 발생할 시나리오의 전체 스펙트럼을 나타내지 않는 데이터만을 학습하게 만들 수 있고, 이에 따라 제한이 생깁니다.
  • 데이터 소스의 복잡성. 공장의 실시간 사물 인터넷(IoT) 센서, 오랜 역사와 수많은 분야를 가진 고객 데이터베이스, 방대한 보안 로그 파일 등 데이터 소스는 다양하고도 많습니다. 단일하고, 통합되고, 간소화된 형식이 없다면 비즈니스 인텔리전스 시스템을 포함한 애플리케이션에 문제가 발생하고 머신러닝과 같은 보다 복잡한 기능도 수행할 수 없게 됩니다.

인-데이터베이스 머신러닝은 데이터 볼륨과 다양성의 급속하고 지속적인 성장으로 인해 데이터 팀의 중요한 과제가 되었습니다. 간단히 말해, 데이터 집약적인 작업은 더 어려워질 것이므로 인-데이터베이스 머신러닝을 워크플로에 통합하는 것이 그 어느 때보다 중요해졌습니다.

인-데이터베이스 머신러닝은 어떻게 작동하나요?

가장 기본적인 인-데이터베이스 머신러닝은 표준 머신러닝과 유사하게 작동합니다. 주요 차이점은 추출에서 변환/정리에 이르기까지 시스템 간에 데이터를 이동하는 데 필요한 모든 단계가 제거된다는 것입니다. 그러나 데이터베이스 환경 내에서 작업하는 특성으로 인해 몇 가지 제한 사항과 요구 사항이 발생합니다.

광범위한 측면에서 인-데이터베이스 머신 러닝의 작동 방식은 다음과 같습니다.

1. 데이터가 분석 데이터베이스에 로드되고 선행 처리됨

모든 것은 데이터베이스에 처음 로드하는 것부터 시작되지만, 인-데이터베이스 머신러닝의 경우 한 가지 주의 사항이 남아 있습니다. 데이터베이스가 해당 기능을 지원해야 하며, 특히 인-데이터베이스 머신러닝으로 가능한 모든 효율성 향상을 누리기 위해서는 코드를 데이터 가까이에 유지해야 한다는 점입니다.

2. 머신러닝 알고리즘 최적화

머신러닝 알고리즘이 데이터베이스 내 또는 타사 플랫폼에 위치하든 관계없이 필수 최적화 프로세스를 거쳐야 합니다. 즉, 모델을 교육하고 결과를 평가하며 필요에 따라 미세 조정을 수행합니다. 인-데이터베이스 머신러닝의 가장 큰 차이점은 이러한 단계가 데이터의 저장 위치와 별개의 시스템이 아닌 데이터베이스 내에서 수행된다는 것입니다. 따라서 모델 최적화 작업을 수행하기 위해 여러 시스템과 데이터 저장소 간에 데이터를 이동할 필요가 없습니다.

3. 데이터 과학자의 특수 API를 사용한 머신러닝 훈련

기존 머신러닝에서는 데이터를 데이터베이스에서 데이터 레이크와 같은 저장소로 이동해야 모델을 교육하고 결과를 평가하며 개별 알고리즘 및 매개변수 조정과 같은 세분화를 수행할 수 있습니다. 해당 단계마다 많은 컴퓨트 리소스를 사용하고 인프라에 부담을 줍니다. 데이터베이스 네이티브 API는 개발 환경에서 테스트 환경으로 모델이 전송되는 경우에도 이러한 작업을 처리할 수 있습니다.

4. 운영 시스템에서 중단 없이 직접 예측 인사이트 실행 가능

인-데이터베이스 머신러닝을 사용하면 개발, 테스트 또는 운용 환경에 관계없이 단순히 테이블의 버전을 지정하여 ML 모델 개정이 다른 데이터베이스로 전파될 수 있습니다. 세분화는 즉시 통합되므로 추가 단계 또는 고집적 컴퓨트 리소스의 중단 없이 기능을 실행할 수 있습니다.

5. 더 정확한 결과물을 실시간으로 반환

데이터베이스 내에서 직접 ML 모델을 사용하여 인사이트를 생성하면 ETL/ELT 대기 시간 및 데이터 무결성에 대한 추가 단계나 우려 없이 실시간에 가까운 인사이트를 얻을 수 있습니다.

다른 방법 대비 인-데이터베이스 머신러닝의 이점

인-데이터베이스 머신러닝은 자연스럽게 프로세스를 단축하고 조직의 하드웨어 요구를 줄여 여러 가지 이점을 제공합니다. 이 접근 방식에는 고유한 제한 사항이 있지만 일반적인 이점은 다음과 같습니다.

더 빠른 분석 처리

시스템 간 데이터 이동은 무엇보다도 번거롭습니다. 최악의 경우 작업 속도를 저하시키면서 오류, 대기 시간 및 보안 위험을 초래할 수 있습니다. 데이터베이스 내에서 분석 작업을 유지함으로써 내보내기, 데이터 변환 및 로딩을 통한 ELT/ETL과 관련된 추가적인 장애물은 무시되어 전체 분석 프로세스가 가능한 한 빨리 움직일 수 있습니다.

소유 비용 감소

대규모 데이터 세트를 전환할 필요가 없어지면 스토리지 및 전문가 인력 절감은 물론 대기 시간도 줄어듭니다. 결국 시간은 돈입니다. 또한 효율성 향상을 통해 하드웨어 및 소프트웨어 문제를 해결하는 데 소요되는 시간을 줄여 비용을 절감할 수 있습니다.

확장성 향상

확장성은 종종 리소스에 의존합니다. 프로세스에 필요한 비용, 인력 또는 CPU가 많을수록 필요에 따라 확장하기가 더 어렵습니다. 데이터 이동 프로세스를 제거하면 내보내기 또는 형식 변환과 같은 단계를 완료하는 데 필요한 추가 컴퓨팅 성능이 제거됩니다. 데이터를 데이터베이스 내에 보관하면 호환성 문제를 해결할 필요가 줄어들고 컴퓨팅 효율성이 향상되므로 요구 사항에 맞게 훨씬 더 큰 유연성과 손쉬운 확장이 가능합니다.

성능 및 정확성 향상

ELT/ETL 프로세스는 네트워크 내 중복 데이터가 발생하는 주요 원인입니다. 중복은 손상된 데이터를 남기는 내보내기를 중단하는 하드웨어 문제, 실수로 편집하거나 삭제하는 데이터 변환 도구의 문제 등 여러 소스에서 발생할 수 있습니다. ELT/ETL 프로세스의 각 단계는 데이터 세트의 품질과 정확성을 손상시킬 수 있는 위험을 야기하는 동시에 프로세스 효율성을 저하시킬 수 있습니다.

자동화된 배포 및 유지보수

인-데이터베이스 머신러닝은 데이터를 한 곳에 유지합니다. 따라서 데이터를 이동할 필요가 없으므로 내보내기/가져오기 및 입/출력이 줄어듭니다. 따라서 다른 시스템에 의존하지 않고도 기본 환경 내에서 프로세스가 발생할 수 있습니다. 이를 통해 배포, 감사 및 유지 관리 검사와 같은 다양한 작업에 대한 자동화 도구와 기능을 확보할 수 있습니다. 사용자는 발생할 수 있는 호환성 또는 통합 문제에 대해 걱정하지 않고도 이러한 기능을 활용할 수 있습니다.

인-데이터베이스 머신러닝 툴 및 서비스

인-데이터베이스 머신러닝 도구는 다양한 서비스와 기능을 제공합니다. 대부분의 경우 이러한 도구는 데이터베이스 공급업체가 통합 기능의 하위 세트 또는 공급업체의 머신러닝 플랫폼에 대한 내장 연결로서 독립형 기능으로 제공할 수 있는 도구와 유사합니다. 예를 들어, Oracle Database는 시스템에서 시스템으로 데이터를 이동할 필요가 없도록 환경 내에서 머신러닝 기능을 제공합니다. 이 경우 Oracle Database는 SQL, R, Python, REST, 자동화된 머신러닝(AutoML) 및 노 코드 인터페이스와 같은 Oracle Machine Learning 도구를 사용하는 탐색, 준비 및 모델링을 사용 가능한 다양한 알고리즘과 함께 제공합니다.

Oracle Machine Learning 대시보드 스크린샷

인-데이터베이스 머신러닝 단점

강력한 이점과 함께 제공되지만, 인-데이터베이스 머신러닝은 데이터베이스 환경의 특징과 기능에 크게 의존하기도 합니다. 이로 인해 향후 마이그레이션과 관련된 문제가 발생하거나 ML 모델이 환경의 기본 기능 이상을 필요로 할 때 문제가 발생할 수 있습니다.

인-데이터베이스 머신러닝의 가장 일반적인 단점과 제한 사항은 다음과 같습니다.

모델 배포의 어려움

모든 것이 프로젝트의 머신러닝 요구와 목표에 부합한다면 테스트에서 배포까지는 실제로 간단한 단계입니다. 그러나 이러한 모델은 조직의 데이터베이스 내 도구의 특정 기능을 기반으로 합니다. 프로젝트가 더욱 복잡해지거나 마이그레이션이 필요할 때는 어떻게 될까요? 인-데이터베이스 도구를 사용하면 즉각적인 ML 워크로드를 더 빠르고 효율적으로 수행할 수 있지만, 미래는 불확실하므로 장기적인 목표가 현재 기능과 일치하는지 고려해야 합니다.

제한된 모델 복잡성

인-데이터베이스 머신러닝은 지원되는 데이터베이스 애플리케이션에서만 작동하며 제한된 API 세트를 제공할 수 있습니다. 이는 인-데이터베이스 머신러닝 시스템의 기능이 증가함에 따라 변화하고 있지만 일반적으로 독립형 도구는 더 많은 기능과 함께 기업이 이러한 기능을 활용할 수 있도록 지원하는 다양한 전문가를 제공합니다.

데이터 투명성 부족

인-데이터베이스 머신러닝의 가장 큰 강점은 가장 큰 단점 중 하나입니다. 즉, 데이터베이스 환경 내에 데이터를 유지하면 ETL/ELT 단계가 생략되지만 감사 및 데이터 정제의 기회도 생략됩니다.

컴퓨팅 제한

대부분의 경우 데이터베이스는 머신러닝 도구와 동일한 컴퓨팅 리소스를 공유하지 않습니다. 특히 고성능 컴퓨팅이 필요한 대규모, 또는 매우 복잡한 모델의 경우 더욱 그렇습니다. 이로 인해 인-데이터베이스 머신러닝 모델의 범위에 상한이 있는 경우가 많습니다. 모든 조직 설정은 다릅니다. 마찬가지로 모든 프로젝트의 요구 사항이 다르며 이는 초기 계획 단계에서 고려해야 할 장단점입니다.

HeatWave AutoML로 인-데이터베이스 머신러닝 시작하기

HeatWave는 트랜잭션 및 레이크하우스 규모 분석을 위해 단일 클라우드 서비스에서 자동화된 통합 보안 생성형 AI 및 ML을 제공합니다. HeatWave AutoML은 사용자가 추가 비용 없이 HeatWave에서 ML 모델을 구축, 교육, 설명하는 데 필요한 모든 방법을 무료로 제공합니다. HeatWave에 인-데이터베이스 머신러닝을 사용하면 데이터를 별도의 ML 서비스로 옮길 필요가 없습니다. MySQL 및 객체 저장소에 저장된 데이터를 활용해 ML 교육, 인퍼런싱, 설명을 손쉽게 손쉽고 안전하게 적용할 수 있습니다 HeatWave는 Oracle Cloud Infrastructure(OCI), Amazon Web Services 및 Microsoft Azure에서 사용할 수 있습니다.

시작하려면 조직이 자체 데이터베이스가 인-데이터베이스 머신러닝을 제공하는지 확인해야 합니다. 이는 ML의 기능을 최대한 활용하고자 하는 조직의 경쟁 판도를 바꿀 수 있습니다. 의사 결정자는 ML 알고리즘을 데이터에 적용하는 대신 데이터에 적용하여 더 빠르고 효율적인 분석을 수행할 수 있습니다.

데이터 그리고 AI : CIO의 성공을 위한 가이드

AI 모델은 LLM에서부터 단순한 ML 모델에 이르기까지 다양한 크기와 복잡성을 자랑합니다. 그 모델들의 공통점은 무엇일까요? 매우 많은 데이터가 필요하다는 것입니다. AI 지원 데이터 인프라의 4가지 구성 요소는 다음과 같습니다.

인-데이터베이스 머신러닝 FAQ

인-데이터베이스 ML을 효과적으로 사용하려면 어떻게 해야 할까요?

인-데이터베이스 머신러닝은 기업이 인-데이터베이스 기능을 지원하는 데이터베이스를 사용하는 경우에만 작동합니다. 데이터베이스 및 머신러닝 모델의 크기 및 범위와 함께 컴퓨트 리소스를 위한 데이터베이스의 기반을 고려해야 합니다.

인-데이터베이스 ML은 어떤 이점을 제공합니까?

인-데이터베이스 머신러닝은 시스템 간에 데이터를 추출하고 이동할 필요가 없습니다. 따라서 효율성 측면에서 자연스러운 이점을 얻을 수 있으며 경우에 따라 ETL/ELT용 외부 도구에 의존할 필요가 없어지므로 프로세스 시간을 몇 주에서 단 며칠로 단축할 수 있습니다. 또한 이를 통해 소유 비용을 줄이고 리소스 사용량을 줄여 확장성과 운영 효율성을 높일 수 있습니다.

데이터베이스 내 ML을 사용할 때 고려해야 할 몇 가지 문제는 무엇입니까?

프로젝트에 인-데이터베이스 머신러닝을 사용하도록 결정하기 전에 팀은 다음 요인을 고려해야 합니다.

  • 프로젝트는 얼마나 빨리 움직여야 하나요?
  • 모델은 얼마나 복잡한가요?
  • 전문가가 모델 또는 데이터에 액세스해야 하나요? 그렇다면 어떤 도구를 선호하나요?
  • 독립형 머신 러닝 툴과 비교하여 데이터베이스에서 사용할 수 있는 컴퓨트 리소스 유형은 무엇인가요?

이러한 질문은 인-데이터베이스 머신러닝의 장단점을 명확히 할 수 있으며 각 프로젝트에 대해 고려되어야 합니다.

인-데이터베이스 ML의 미래 트렌드는 무엇인가요?

제공업체는 지속적으로 인-데이터베이스 머신러닝 기능을 개선하고 확장하며, 이는 많은 발전 가능성이 있음을 의미합니다. 점점 더 많은 도구와 플랫폼이 인-데이터베이스 머신러닝을 지원함에 따라 데이터 과학자는 더 복잡한 모델을 구축하고 배포할 수 있습니다. 또한 모델이 머신러닝 도구를 사용하고 구동하는 사람에 따라 제한되지 않고 통합 플랫폼에 존재하므로 투명성이 향상됩니다. 또한 더 큰 기능은 더 큰 데이터 세트의 유용성을 의미하므로 더 빠른 교육, 테스트 및 배포가 가능합니다.