오라클 DB 블록체인 대응, 21c로 편의성 높여
오라클 DB 블록체인 대응, 21c로 편의성 높여
  • 김현동
  • 승인 2021.01.14 16:50
  • 댓글 0
이 기사를 공유합니다

[2021년 01월 14일] - 오라클 데이터베이스(Converged Database) 21년도 버전이 공개됐다. 21c(Oracle Database 21c)로 명명한 버전은 클라우드 환경에 대응하고 자율운영 데이터베이스의 상시 무료 티어(Always Free tier)도 지원한다. 개발사는 불변 블록체인 테이블과 인데이터베이스(In-Database) 자바스크립트, 네이티브 JSON 바이너리 데이터 유형, 인데이터베이스 머신러닝을 위한 오토ML(AutoML)과 영구 메모리 저장소를 포함한 200개 이상의 신규 기능을 강조하며 사용 편의성을 재차 강조했다.


또한, 다중 모델, 다중 워크로드 및 다중 테넌트 요구 사항을 단일의 융합된 데이터베이스 엔진으로 편의성을 높였다. 쉽고 빠르게 데이터 기반 엔터프라이즈 애플리케이션의 개발 및 구축이 가능한 APEX 애플리케이션 개발(Oracle APEX Application Development)이라는 로우코드(low-code) 애플리케이션 개발 서비스 또한 포함했다. 개발자가 직관적인 그래픽 인터페이스를 활용해 반응형 웹 및 모바일 애플리케이션 구축에 편의성을 높인 것이 주목할 변화다.

앤드류 멘델손(Andrew Mendelsohn) 오라클 데이터베이스 부사장은 “오라클 데이터베이스 21c를 필두로 세계에서 가장 강력한 융합형 데이터베이스 엔진을 제공하기 위한 오라클 고유의 전략을 지속해서 강화해 나가고자 한다”며 “오라클 데이터베이스 21c는 최고의 JSON 문서 처리 성능과 인텔 옵테인 퍼시스턴트 메모리 지원을 기반으로 획기적인 데이터베이스 운영 성능을 확보했다”고 설명했다.

또한, “이용자는 새로운 자가 운영 인메모리 열 저장소(Self-Managing In-Memory Column Store)와 최고 성능의 그래프 처리, 가장 간단한 머신러닝 모델 개발을 지원하는 오토ML 기능을 통한 업계 최고 수준의 분석 데이터베이스 기능뿐만 아니라, 변조 방지 SQL 테이블을 구현하는 불변적인 블록체인 테이블 활용도 가능하다”고 강조하며, “오라클은 단일 융합형 데이터베이스 엔진을 통해 개발자의 생산성을 한층 제고하고, 새로운 비즈니스 요구 사항을 충족하기 위한 보다 진화된 애플리케이션을 개발할 수 있도록 적극적으로 지원하고 있다”고 덧붙였다.

칼 올롭슨(Carl Olofson) IDC 부사장은 “데이터베이스 21c에 포함된 불변 블록체인 테이블과 인데이터베이스 머신러닝을 위한 오토ML 등 200개 상당의 빌트인 혁신 기능은 데이터베이스 기능성 측면에서 새로운 지평을 열었다고 평가된다”며, “이용자는 조직에서 사용하는 서로 다른 클라우드 서비스에 따른 추가 비용이나 운영 복잡성을 최소화할 수 있다.”고 덧붙였다.

이탈리아 안젤리니 제약의 피에트로 베레토니(Pietro Berrettoni)는 “블록체인 테이블 솔루션을 기반으로 데이터 보안 도구와 웨어러블 디바이스를 통합하는 퀴나리오의 엑스링 솔루션은 자사의 IoT 전략에서 중요한 분기점이 되었다”며 “해당 솔루션은 오라클 데이터베이스에서 지원하는 오라클 블록체인 테이블을 통해 별도의 복잡한 인프라스트럭처 없이도 다른 애플리케이션과 쉽게 통합이 가능한 변조 방지 레코드를 제공하며, 사용 가능한 모든 도구를 활용해 엑스립의 데이터 수집을 지원한다"고 말했다.

21c 버전에서 달라진 기능 및 변화


- 불변적인 블록체인 테이블 : 테이블만으로 블록체인의 주요 보안 이점을 수용한다. 암호 보안 데이터 관리(Crypto-Secure Data Management)의 일환인 블록체인 테이블은 각 행이 암호화된 방식으로 연결되어 불변성의 특징을 지닌다. 데이터베이스에서 변조 감지 및 방지 기능을 즉시 활용하기에 기업은 관리자 또는 이용자를 가장하는 내부자나 해커의 불법적인 시스템 변경을 방지할 수 있다. 블록체인 테이블은 표준 SQL로 접근 가능한 통합 데이터베이스의 일부로, 전체 분석 및 트랜잭션을 지원하기에 기존 블록체인 구현 대비 사용이 용이하며 기능적으로도 우수하다.

- 네이티브 JSON 데이터 유형 : 수년에 걸쳐 SQL/JSON 쿼리와 인덱싱 지원을 제공해 왔다. 21c에는 기존 버전 대비 최대 10배 빠른 스캔과 최대 4배 빠른 업데이트 작업에 핵심인 JSON 데이터 유형이 추가되었다. 이용자는 이전 버전과 동일하게 사용자 정의 애플리케이션 코드 없이도 JSON 및 기타 데이터 유형을 혼합 및 결합하고, 신속한 OLTP를 위해 모든 JSON 요소를 인덱싱하는 작업을 수행할 수 있다. 또한 모든 형식에서 선언형 병렬 SQL 분석을 사용하고, 다수 JSON 문서 및 컬렉션에서 복잡한 조인(join) 연산을 실행할 수 있다.

- 인데이터베이스 머신러닝을 위한 오토ML : 오토ML은 대규모 기계 학습 모델을 자동으로 구축 및 비교하여 비전문가도 머신러닝을 쉽게 사용하도록 지원한다. 사용자 인터페이스를 통해 데이터베이스 내 머신러닝을 간편하게 활용할 수 있다. 머신러닝 알고리즘을 수집하는 라이브러리에 이상 탐지, 회귀 분석 및 딥러닝 분석을 위한 알고리즘도 추가됐다.

- 인데이터베이스 자바스크립트 : 내장된 그랄 다중언어 엔진(Graal Multilingual Engine)을 사용하면 데이터가 있는 데이터베이스 내에서 자바스크립트로 쓰인 데이터 처리 코드의 실행이 가능해 비싼 데이터 이동 비용을 절감할 수 있다. 또한, 자바스크립트와 오라클 데이터베이스 내의 데이터 유형이 서로 자동으로 매핑되기 때문에, 이용자는 자바스크립트 코드 내에서 SQL을 쉽게 실행할 수 있다.

- 영구 메모리 지원 : 데이터베이스 데이터와 복구를 위한 로그를 로컬 영구 메모리에 저장해 IO 중심의 워크로드 성능을 대폭 향상시킨다. 직접 매핑된 영구 메모리 파일 시스템에 저장된 데이터에서 SQL이 직접적으로 실행되기 때문에 별도의 IO 코드 경로와 대용량 버퍼 캐시가 필요하지 않다. 또한, 새로운 데이터베이스 알고리즘은 영구 메모리 내의 부분적 또는 불일치 저장을 방지한다.

- 고성능 그래프 모델 : 관계 기반 데이터 모델링과 소셜 네트워크, IoT 등을 통한 연결 및 패턴 탐색이 가능하다. 메모리 최적화 개선으로 대규모 그래프 분석에 필요한 메모리양이 줄어들어, 변경 없이도 기존 애플리케이션을 보다 신속하게 실행할 수 있다. 또한 동일하게 최적화된 네이티브 알고리즘 특성상, 이러한 알고리즘으로 작용하는 자바 구문을 활용해 그래프 알고리즘을 생성하거나 확장할 수 있다.

- 데이터베이스 인메모리 자동화 : 동일한 테이블에서 행과 열 형식 모두를 지원하며, 이를 통해 해당 테이블에서 애널리틱스와 트랜잭션을 동시에 실행하는 것이 가능하다. 오라클 데이터베이스 21c는 자가 운영 인메모리 열 저장소를 도입해 개체의 배치 및 제거를 자동으로 관리하고 효율성을 제고한다. 그뿐만 아니라, 사용 패턴을 추적해 열 저장소에서 개체를 이동 및 제거하며, 이러한 열은 사용 패턴에 따라 자동으로 압축된다.

- 샤딩 자동화 : 샤딩의 설계 및 사용 단순화를 목적으로 샤딩 어드바이저 도구를 포함, 이를 통해 데이터베이스 스키마 설계와 워크로드 특성을 평가하고 쿼리 성능, 확장성 및 가용성에 최적화된 데이터베이스 샤딩 설계 순위 목록을 제공한다. 샤드 간 백업과 재해 복구 기능 또한 자동화된 형태로 이뤄진다.


《오라클 코리아 장성우 전문와 1문 1답》

Q. 블록체인을 지원한다는 의미가, AWS QLDB를 떠올리면 되나?
A. 그렇다. 하지만 AWS에서 블록체인 DB를 이용하고자 한다면 특히 오로라나 다른 다큐멘트 DB와는 별개의 DB를 포함 총 3가지 데이터를 동시에 이용해야 할 경우라면, 별도의 작업을 거쳐 성격이 다른 3개 DB를 연동하고 분석해주는 추가 작업을 거쳐야 가능하다. 그 점에서 21C는 테이블 형태로 포함하기에 엔진 내에서 사용자 정보와 새로운 블록체인 테이블 또는 JSON 데이터를 한 곳에서 해결할 수 있다.

조금 더 예를 들자면 경쟁사는 매년 새로운 제품 발표에 의미를 둔다. 그렇기에 특정 기능을 위한 전용 서비스나 DB가 등장한다. 하지만 오라클은 제품이 아닌 신기능을 발표한다. 즉 업데이트된 오라클 21C라는 버전이 달라진 점이라 보면 되겠다. 분명한 건 블록체인을 테이블 형태로 지원하기에 테이블만의 조인만으로 구현이 끝난다.

Q. 로우코드 개발기능이 커버하는 범위가 어느 정도 되나?
A. 데이터를 다양한 형태로 구현하고자 한다면, 과거에는 별도의 위젯을 사용해 자바를 깔고 SQL로 가져다가 API 방식으로 코딩해야 하나. 이제는 APEX를 통해 두 가지 액션만 통하면 바로 구현된다. 부연하자면 기존에 되는 것이 다 되는 건 마찬가지이지만 단지 방식이 쉬워졌다고 이해해달라. API 툴에서 코딩하던 것이 GUI 형태로 달라졌고, 사용자는 마우스로 클릭해 지정하면 바로 구현이 된다. 로우코드 역할은 기존 버전에서 하던 범위와 동일하다.

Q. 로우코드 앱은 주요 타깃이 개발자인가? 아니면 비 개발자인가?
A. 둘 다 해당한다. 다만 실제 현장에서 사용할 경우 개발자가 지닌 레벨에 따라 선호하는 앱이 있을 거고 비 개발자가 선호하는 앱으로 나눌 거다.

Q. 개발 로드맵이 어떻게 되나? 매년 신기능이 추가되고 해당연도 버전이 붙어서 출시되는 형태인가요? 2021년엔 21c, 2022년엔 22c 이런 식의 형태로 지속이 되는 것인지?
A. 매년 신기능을 추가한 형태로 새 버전을 제공하겠다는 것이 기본 약속이자 로드맵이다. 그래서 버전 이름을 그렇게 바꾼 것이다.

Q. 블록체인 데이터 저장 관리 기술 관련해 어떤 이슈가 있고, 오라클이 어떻게 해결해줄 수 있는 건지 알고 싶다.
A. 다양한 분야에서 블록체인 기반을 사용하고, 수요도 늘고 있다. 문제라 보는 부분은 기능 구현은 쉬운데 이 기능이 제대로 활용되는 데 제약이 따를 거라는 우려다. DB의 가장 주요한 기능이 어떤 상황에서도 정확성을 보장하고 안정적으로 처리해야 한다. 하지만 블록체인 기반은 기능은 제공하지만, 예컨대 초당 10개는 되나 초당 100은 갑자기 느려지거나 처리 못 하는 문제가 발생할 수 있다. 오라클 신뢰성은 이미 검증되었고 동일한 기반 위에서 서비스를 제공하기에 그 점에서 우위에 위치한다.


By 김현동 에디터 hyundong.kim@weeklypost.kr
〈저작권자ⓒ 위클리포스트, 무단전재 및 재배포 금지〉