데이터베이스 내 처리

In-database processing

데이터베이스 내 프로세싱(In-Database Analytics)이라고도 하며, 데이터 분석데이터 웨어하우징 기능에 통합하는 것을 말한다.오늘날, 신용카드 부정 행위 탐지투자 은행 리스크 관리에 사용되는 것과 같은 많은 대형 데이터베이스들이 이 기술을 사용하고 있다. 왜냐하면 그것은 전통적인 방법보다 상당한 성능 향상을 제공하기 때문이다.[1]

역사

기존의 데이터 분석 접근방식은 데이터 처리를 위해 데이터를 데이터베이스에서 별도의 분석 환경으로 이동한 다음 데이터베이스로 다시 이동해야 한다(IBM의 SPSS는 이러한 작업을 수행하는 툴의 예임 오늘날에도).데이터가 있는 데이터베이스에서 분석을 수행하면 데이터 웨어하우스 자체에서 처리를 수행함으로써 기존 접근방식과 관련된 비용, 시간 및 보안 문제가 제거된다.[2]

데이터베이스 내 기능은 1990년대 중반에 처음으로 상용화되었지만, IBM, Illustra/Informix(현 IBM), Oracle 등 벤더의 객체 관련 데이터베이스 시스템으로서 2000년대 중반이 되어서야 그 기술이 보급되기 시작했다.[3]분석 작업대 및 기업 데이터 웨어하우스로의 분석 마이그레이션 개념은 Thomas Tileston에 의해 "Have Your Cake & Eat It Too!"라는 제목의 프레젠테이션에서 처음 소개되었다.2005년 9월 18~22일, FL 올랜도에서 열린 Teradata Partners 2005 "Experience the Possibility" 컨퍼런스에서 SAS와 Teradata를 결합한 데이터 마이닝 가속화.Tileston씨는 [4]이후 2006년[5][6][7], 2007년, 2008년에 전세계적으로 이 기술을 발표했다.[8]

그 당시 수집 및 분석에 이용 가능한 데이터의 양이 메가바이트에서 기가바이트, 테라바이트, 페타바이트로 기하급수적으로 증가함에 따라 데이터베이스 처리의 필요성이 더욱 절실해졌다.이러한 "빅 데이터"는 데이터를 효율적이고 정확하게 수집, 처리 및 분석하는 것이 중요해진 주요 이유 중 하나이다.

또 일부 업종에서 나노초 정도의 실적 상승이 차이를 만들 수 있을 정도로 사업 속도가 빨라졌다.[2]또한, 더 많은 사람들과 산업체들이 중요한 질문에 답하기 위해 데이터를 사용함에 따라, 그들이 요구하는 질문은 더욱 복잡해지고, 더 정교한 도구와 더 정확한 결과를 요구한다.

이 모든 요소들이 복합적으로 작용하여 데이터베이스 내 처리의 필요성이 대두되었다.분석, 데이터 웨어하우징 및 보고를 위해 특별히 설계된 칼럼 지향 데이터베이스의 도입은 기술을 가능하게 하는 데 도움이 되었다.

종류들

데이터베이스 내 처리에는 크게 세 가지 유형이 있는데, 모델을 SQL 코드로 변환하고, C 또는 C++ 라이브러리를 내장 사용자 정의 함수(UDF)로 데이터베이스 프로세스 공간에 로드하며, 일반적으로 C, C++ 또는 Java로 작성되어 SQL 문에 내장 UDF로 데이터베이스에 등록하는 것이다.

모델을 SQL 코드로 변환

이러한 유형의 데이터베이스 내 처리에서 예측 모델은 소스 언어에서 일반적으로 저장 프로시저에서 데이터베이스에서 실행할 수 있는 SQL로 변환된다.많은 분석 모델 구축 도구는 SQL 또는 PMML(예측 모델링 마크업 언어)로 모델을 내보낼 수 있다.SQL이 저장 프로시저에 로드되면 파라미터를 통해 값을 전달할 수 있으며 모델은 데이터베이스에서 기본적으로 실행된다.이 접근방식을 사용할 수 있는 도구로는 SAS, SPSS, R 및 KXEN이 있다.

데이터베이스 프로세스 공간에 C 또는 C++ 라이브러리 로드

프로세스에서 실행되는 C 또는 C++ UDF 라이브러리의 경우, 함수는 일반적으로 데이터베이스 서버 내에 내장 함수로 등록되며 SQL 문에서 다른 내장 함수와 마찬가지로 호출된다.프로세스에서 실행하면 함수가 데이터베이스 서버의 메모리, 병렬 처리 및 처리 관리 기능에 완전히 액세스할 수 있다.이 때문에 데이터베이스나 엔진에 부정적인 영향을 미치지 않도록 기능이 제대로 작동해야 한다.이러한 유형의 UDF는 OLAP, 수학적, 통계적, 일변량 분포 및 데이터 마이닝 알고리즘에 대한 어떤 방법보다도 최고의 성능을 제공한다.

처리되지 않음

처리되지 않은 UDF는 일반적으로 C, C++ 또는 Java로 작성된다.프로세스가 부족하여 데이터베이스나 엔진에 대한 위험은 자체 리소스를 사용하여 자체 프로세스 공간에서 실행되는 것과 동일하지 않다.여기서, 그들은 진행 중인 UDF와 같은 성능을 기대할 수 없을 것이다.그것들은 여전히 일반적으로 데이터베이스 엔진에 등록되어 있고 보통 저장 프로시저에서 표준 SQL을 통해 호출된다.프로세스 외 UDF는 데이터베이스 서버의 기능을 확장하는 안전한 방법이며 사용자 정의 데이터 마이닝 라이브러리를 추가하는 이상적인 방법이다.

사용하다

데이터베이스 내 프로세싱은 데이터 분석을 고객 서비스에서 사용되는 것과 같은 부정 행위 탐지, 신용 평가, 리스크 관리, 트랜잭션 처리, 가격 책정 및 이윤 분석, 사용 기반 마이크로 세분화, 행동 광고 타겟팅 및 권장 엔진을 포함한 고투입 실시간 애플리케이션과 보다 접근성 및 관련성 있게 한다.차선책을 결정하는 [9]조직

벤더스

Teradata(및 인수한 Aster Data Systems), IBM(Neteza, PureData Systems, Db2 Warehouse 제품 포함), IEMC Greenplum, Sybase, Paraccel, SAS, EXASOL 등 주요 데이터 웨어하우징 벤더들이 인데이터베이스 처리를 수행하고 있다.CWI의 MoneDB나 IBM의 Db2 Warehouse와 같이 이들 벤더가 제공하는 제품 중 일부는 사용자들에게 제품의 능력을 향상시키기 위해 자신의 기능(UDF)이나 확장(UDX)을 작성할 수 있는 수단을 제공한다.[10]퍼지 로직스는 수학적, 통계적, 데이터 마이닝, 시뮬레이션 및 분류 모델링에 사용되는 데이터베이스 내 모델의 라이브러리와 자본, 고정 수익, 금리 및 포트폴리오 최적화를 위한 재무 모델을 제공한다.In-DataBase Previators는 마케팅 및 IT 팀과 협력하여 데이터 웨어하우스 내부의 데이터 마이닝 및 분석 프로세스를 제도화하여 신속하고 안정적이며 사용자 정의 가능한 소비자 행동 및 예측 분석을 제공한다.

관련 기술

데이터베이스 내 처리는 데이터 웨어하우징 성능 향상에 초점을 맞춘 여러 기술 중 하나이다.그 밖에 병렬 컴퓨팅, 모든 아키텍처 공유, 아무것도 공유하지 않는 아키텍처, 대규모 병렬 프로세싱 등이 있다.예측 분석 능력을 향상시키기 위한 중요한 단계다.[11]

외부 링크

참조

  1. ^ What Is In-Database Processing?, Wise Geek, retrieved May 14, 2012
  2. ^ a b Das, Joydeep (May 10, 2010), Adding Competitive Muscle with In-Database Analytics, Database Trends & Applications
  3. ^ Grimes, Seth (December 15, 2008), In-Database Analytics: A Passing Lane for Complex Analysis, Intelligent Enterprise
  4. ^ "Business Intelligence – Taking the sting out of forecasting IT World Canada News". 31 October 2006.
  5. ^ http://www2.sas.com/proceedings/forum2007/371-2007.pdf[bare URL PDF]
  6. ^ http://de.saswiki.org/wiki/SAS_Global_Forum_2007[데드링크]
  7. ^ "Archived copy". Archived from the original on 2014-08-22. Retrieved 2014-08-21.{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크)
  8. ^ http://www.teradata.kr/teradatauniverse/PDF/Track_2/2_2_Warner_Home_Thomas_Tileston.pdf[bare URL PDF]
  9. ^ Kobelius, James (June 22, 2011), The Power of Predictions: Case Studies in CRM Next Best Action, Forrester
  10. ^ "Embedded R in MonetDB". 22 December 2014.
  11. ^ http://timmanns.blogspot.com/2009/01/isnt-in-database-processing-old-news.html "인-데이터베이스가 아직 오래된 뉴스를 처리하고 있지 않은가?" "팀 맨스의 블로그 (데이터 마이닝 블로그), 2009년 1월 8일"