오라클 공식 Document 리스트 에서는 20C 는 나타나지 않고 있습니다.
문서 링크는 아직 남아 있으며 공식 릴리즈 문서등에서는 19c 에서 21c 버전을 정식으로 사용 하는것으로 확인됩니다.

21c 는 2020년 12월 8일 부터  일부리전에서  ( Ashburn (IAD), Phoenix (PHX), Frankfurt (FRA) and London (LHR) regions) 에서 Free tier 클라우드에서 사용가능 하다고 하네요. (2021-01-05 내용추가)

- Oracle Blog 참조

blogs.oracle.com/database/introducing-oracle-database-21c


- Oracle 21c 의 공식문서 link -
docs.oracle.com/en/database/oracle/oracle-database/21/whats-new.html

 

오라클 20c 의 공식 문서가 OPEN 되었네요.
일단 문서를 보면 빅데이터 관련 내용이 먼저 순서를 차지 하고 있습니다.


Oracle Database Release 20c New Features

  1. Big Data and Data Warehousing Solutions
  2. Security Solutions
  3. Performance and High-Availability Options
  4. Tools and Languages
  5. Database Upgrade and Utilities

 

Interactive Architecture Diagram

아래 링크에서는 변경된 아키텍처에 관해서 살펴 볼수 있습니다.

https://www.oracle.com/webfolder/technetwork/tutorials/architecture-diagrams/20/database-technical-architecture.html

 

Oracle Database Technical Architecture

This interactive diagram shows the Oracle Database 20c technical architecture. Show PDF    |   Show Instructions To step through the slide show, click the Previous and Next buttons. To return to the first slide, click the First button. The breadcrumb below

www.oracle.com

 

 개인적으로 다른것보다 20c 공식적으로 JSON 데이터 타입이 추가 되었다는 내용이 보입니다.
이전에 JSON Document 형태의 활용에 관한 포스팅을 하면서 언급했던 반쪽 짜리 JSON 기능이  20c 부터 어느정도 구체화되었다고 생각 할 수 있을것 같습니다.

 테이블의 칼럼 자체를 JSON TYPE 으로 생성 할 수 있게 하고, SQL 과 PLSQL function을 사용 할 수 있게 되었습니다만
안타깝게도 파라메터 initialization parameter compatible 20 이하에서는 사용할수 없다고 합니다.
결국 새로운 서비스를 하는 신규 DB 에서만 활용이 가능하겠네요..


JSON 관련 Oracle Document :

https://docs.oracle.com/en/database/oracle/oracle-database/20/newft/new-json-data-type.html

 

Database New Features Guide

 

docs.oracle.com

 


JSON  관련 ORACLE blog :

https://blogs.oracle.com/sql/how-to-store-query-and-create-json-documents-in-oracle-database

 

How to Store, Query, and Create JSON Documents in Oracle Database

JavaScript Object Notation (JSON) is a lightweight data transfer format. It's the de facto standard for document exchange. So it's likely you'll want to send and receive JSON documents from and to your database. And store them in your tables. Oracle Databa

blogs.oracle.com

 

현재는 구체적인 설명없이 링크를 나열했지만, 나중에 다시 정리 하게 된다면 그때는 API 안에서의 구체적인 사례에 대해서 공유 할 수 있기를 스스로에게 기대 해보겠습니다.

(Oracle Cloud와 On-Premise에서 Oracle APEX 관련 문서도 마무리 못하고 묵혀놓은지가 몇개월 되가네요.)

추가 : 
오라클 블로그에서 20c 에 대한 글이 포스팅되어 있는데  Blockchain Table에 대한 내용도 확인이 가능하다고 합니다.
Heap Table 과 비슷하게 작동하지만 가장 주목할만한 변화는 변경 불가능한 암호화된 Hash 값이 입력이 된다고 하네요

https://blogs.oracle.com/database/oracle-database-20c-preview



Oracle Blog 참조 링크
https://blogs.oracle.com/database/oracle-database-20c-preview

 




최근 조금씩 짬을내서 이것 저것 테스트 하고 있습니다. 

오라클 Database 가 12c, 18c 에 이어서 19c 가 2019년에 릴리즈 되었습니다. 


2019년 1월 16일 오라클 부사장이쓴 오라클블로그에서 http://LiveSQL.oracle.com 에서 테스트가 가능함을 알려주었고, 2월 13일에는 엑사 데이터에서 사용하다는 내용도 올라와 있습니다.  2019년 3월 15일 기준으로 정확한 일자가 있는 부분은 Exadata  (2019년2월 13일) 과 Supercluster (2019년2월 22일) 두 시스템뿐이고 이외에는 2019년 1쿼터(Q1CY19)와 2쿼터(Q2CY19)에 예정으로 표시되어 있습니다.


■ Release Schedule of Current Database Releases

기타 릴리즈 스케쥴은 MOS 문서 ID 742060.1 에서 확인이 가능합니다.


 ▶ 릴리즈 관련 블로그

oracle-database-19c-now-available-on-livesql

oracle-database-19c-now-available-on-oracle-exadata


그리고 이번 포스팅의 목적은 예전 아키텍쳐는 외워서 그릴수 있었지만, 개인적으로 아키텍처 리마인드를 하기 위해서 자료를 찾아 보던중 정리 하기로 했습니다. 


▶ 하기 Quick Reference Guide 는 아키텍쳐 뿐아니라 DBA View 및 Background Process 등의 정보도 확인 할수 있습니다. 


Oracle Database 11g Interactive Quick Reference Guide

https://www.oracle.com/webfolder/technetwork/tutorials/obe/db/11g/Poster/11g_interactive.html


Oracle Database 12c: Interactive Quick Reference

https://www.oracle.com/webfolder/technetwork/tutorials/obe/db/12c/r1/poster/OUTPUT_poster/poster.html



참고: 오라클은  12.2.0.1 까지 12버전이고 12.2.0.2 는 18로 발표 되었고, 12.2.0.3 은 19 버전이기 때문에12C 이후 아키텍처는 크게 변동이 없어서인지 모르겠지만, 추가기능들이 있기 때문에 별도의 페이지(Interactive Architecture Diagram)에서 확인이 가능합니다.

■ 참고: 릴리즈버전의 넘버링 변화 

Release Version Numbering Changes

Beginning in 2018, a new numbering schema for the database software is implemented. Instead of a legacy nomenclature such as 12.2.0.2, a three (3) field format consisting of: Year.Update.Revision is used, such as 18.1.0. This allows clear indication of:

  • the feature release designation of the database software (the first field)
  • the quarterly Update (the second field)
  • the quarterly Revision (the third field)


Interactive Architecture Diagram

아키텍처의 구조를 살표 보고 싶으면 하기의 ORACLE 버전별 문서를 찾아 보시면 됩니다.


Version :
▶ 12c Interactive Architecture Diagram
▶ 18c Interactive Architecture Diagram
▶ 19c Interactive Architecture Diagram 

18c 와 19c 의 아키텍처를 비교해서 살펴보니 신기능들의 처리에 대한 부분이 추가 되어있는것들을 확인 할 수있습니다.


♣ LRU 관리 및 체크포인트 큐가 18버전에서는 Shared Pool 에 속해서 나타나고 있었는데 19에서는 Data Buffer Cache 안에 표시 되어 있습니다만 어떤 의미가 있는지는 조금더 확인을 해봐야 겠습니다.
♣ 11gR2 부터 지원하는 Flashback Data Archive(FDA) 의 아키텍쳐도 조금 변경된듯 합니다. 데이터를 커밋하기전에  FBDA가 버퍼캐시(UNDO block)에 데이터파일 (UNDO Segment) 를 추가로 확인하는것으로 보여집니다.


FDA를 활용 해보려고 했지만, 현재 운영 환경에서 추가적인 리소스및 IO 발생 염려와 레퍼런스를 찾지 못했고  나중에 기회가 되면 따로 정리를 할 계획입니다.

NEW feature 를 먼저 보고 구동방식에 대해서 관심을 가지는게 순서인데 어쩌다 보니 아키텍처를 먼저보려니 알수 없는부분이 많은게 사실입니다. 

그리고, 버전별로 New feature 검색을 통해서 블로그에 들어오시는분들이 있습니다만, 각각 버전별 문서에 잘 정리 되어 있고 게으름때문에 별도의 정리는 하지 않고 있습니다. 


언제가는 할겁니다......





우선적으로 얘기 하자면 오라클 ERP 및 Application DBA 를 겸하고 있어서 이쪽분야에 관심이 있다보니

관련업무를 하다가 자주 보는거 뿐이지 오라클하고는 전혀 관계가 없습니다. 


거의 대부분 혼자서 개인적으로 경험했거나 정리용으로 글을 올리고 있는데 미처 정리 하지 못한 몇가지를 더 쓰고 블로그를 손봐야 겠네요.



■ 얘들뭐야 무서워;;


구글의 경우에는 모바일사용자의 데이터사용량을 줄이는 플러그인을 만들었는데, 해당 웹 주소를 넣으면 자동으로 압축해서 적은 데이터로 재전송해주는 편리하고 무서운(?) 

기능이 있습니다. 뭐 모바일 사용자가 아니더라도 우회할수 있다는 기능때문에 사용 목적이 주객전도가 되는것 같은 기능을 많은분들이 알려주고 계시네요;;


이경우 추측이지만 해당 웹사이트의 정보가 수집이 될거라고 생각이 듭니다.

구글의 많은 방법으로 수집하던 방식과 사용자가 직접 던져준 웹 접속 정보를 통해서 데이터를 모아서 얼마나 많은 놀랄만한 일을 할지 궁금해집니다.



■ 니네 DB 뭐 거시기 만드는데 아니냐? 


오라클의 경우는 사실 IT 를 하는사람들과도 얘기를 해보면 Database 업체로 많이 아는경우가 대부분입니다. 

하지만 HW/OS/Middleware/Application 등 IT 분야에서 안만드는게 없을정도로 많은것을 만들어 팔고 있습니다. 


SW의 경우 공식 사이트에서 다운로드를 할수 있는 제품만해도 적지않은 수가 있고,

공식사이트 : http://www.oracle.com/technetwork/indexes/downloads/index.html


Oracle Software Delivery Cloud를 이용하면 제품군별 버전별,OS별 등 분류된 소프트웨어를 사용할수 있습니다. (라이센스 주의)


빅데이터 시장이 꿈틀거리면서 분산처리 및 저장시스템 + 오라클 NoSQL + R + HW까지 결합해서 빅데이터 어플라이언스를 내놓았죠.


워낙에 소프트웨어들도 많다보니 통합시켜서 하나의 제품군으로 만들어 버리는 전략을 사용하고 있고,

이러다보니 일단 설치를 시켜놓고 라이센스는 별도로 내게끔 하는 영업 전략도 숨어 있어서 기업체들이 사용했다가 낭패를 볼수가 있습니다.


(하나의 DB 에도 유저별, 코어별 라이센스 정책도 가지 각색이고, 추가 기능별로 라이센스가 따로 있으며, 

Application을 설치 함에 따라 포함된 DB의 라이센스정책도 또다르고 어쨌든 지들도 다 모름;;;)


■ 얼마나 돈을 버는지 알려주마


2014년 기준 매출액이 MS 에 이어서 소프트웨어 부분에서 2위를 차지 하고 있는데,

참조: http://www.zdnet.co.kr/news/news_view.asp?artice_id=20140401090542


2013년에 세계적으로 296억달러 매출이니까 한국 돈으로 30조가 넘네요.(MS 는 657억달러)

올해 데이터는 아직 잘모르지만 MS 나 오라클 최근에 소프트웨어 업체들이 소프트웨어 단속을 통한 라이센스 구매를 하게끔 하는 전략이 

어느정도 매출액을 늘렸는지 궁금하네요.


비교가 될지는 모르겠지만 그래도 국내와 비교하자면 지금은 일본에 상장된 넥슨이 2014년 1700억엔(약 1조5천억) 정도매출을 보인것으로 보입니다.


어떻게 보면 라이센스가 별도로 있는 제품들의 사용비용을 받는게 당연하지만, 기업체에서는 라이센스 부분이 명확히 파악하지 못하고 사용하는경우도 있어서 

추후에 별도의 라이센스비용을 지불하는 경우도 발생 합니다.


참조 기사: 

http://www.etnews.com/20141128001445 : 움츠린 증권업계 불어닥친 오라클 라이선스 `광풍`

http://www.ciokorea.com/tags/1273/%EA%B0%90%EC%82%AC/22906 : "오라클 라이선스 관행, 고객사 불신 양산" CCL 설문조사


2014년에는 MS 라이센스 문제로 한참 시끄럽게 추가 계약을 했고, 2015년 올해는 오라클도 거대기업이 아닌 중견기업에서 사용하는 곳까지 

공문을 보내와 협상을 진행 했습니다.(운영하고 있는곳)


조금 다른얘기지만 라이센스 정책을 갑자기 바꿔서 법무대리인을 통한 소송으로 한창 시끄러울때가 있었죠. (캡쳐 프로그램과 원격프로그램)

여기서 더 나아가서 랜섬웨어를 통해서 암호화 시켜놓고 돈을 뜯어내는 뻔뻔한 녀석들도 생기고 있구요.

어찌됐던지간에 사용자들의 주의도 점점 더 많이 필요해지고 있네요.


최근 큰 기업들의 소프트웨어를 보면 특정기능을 위한 유틸리티의 형태에서 제품들을 통합하는 제품군의 형태로 공급하는 경우가 많이 보이고 있습니다.

엑셀과 오피스로, 포토샵과 Creative suite(CS),토드와 DBA suite 등등등 소프트웨어들의 기능이 확장되면서 


여전히 각자 필요한 소프트웨어만 사용할수 있지만 상술(?각각 구매할때보다 묶어서 싸게 공급)에 의해서 잘 사용하지 않는 소프트웨어들까지 

포함해서 설치 하기도 하고 그런 트렌드인것 같습니다. 

PC 게임도 확장팩, DLC, 합본, 프리미엄, 특별판, 한정판 등등 한가지의 게임에도 많은 매출전략(?)들이 있죠.


오라클의 경우에는 OS/ DB/ HW 등등 손을 안댄 부분이 없을정도지만 IT 를 하지않는 업무사용자및 일반 이용자들의 대부분이 

윈도우OS가 설치된 PC에서의 업무에 익숙해서 데이터베이스 만드는 회사 정도로만 인식 되고 있는것으로 보입니다.

다행히도 일반 사용자들이 사용하기 어렵고 불편(?)하게 만들고 있어서 유지보수나 운영인력들이 먹고 살수 있게 해준다는 점을 좋아 해야 하려나 모르겠습니다.



■ 얘들또 뭘 만든거지


뭐 암튼 오라클도 이것 저것 내놓고 있는데 그중에 들리는 얘기로는 국내 어느 업체에서 빅데이터 어플라이언스(BDA) 

도입을위한 POC(Proof of Concept) 를 진행 했다고는 하는데 정보가 부족하네요.


포스팅을 하기 위한 목적이 뭐 였는지 잠시 까먹었는데

빅데이터 관련해서 비정형 DB 와 분산처리 시스템등등  많은 빅데이터 관련 기술도 통합해서 내놓았는데,

눈길을 끄는게 있어서 글을 썼지만 정작 내용은 위에 적은 내용들 보다 더 분량이 적습니다.



■ 결국 뭐땜에 포스팅을 했냐


Oracle Big Data Appliance Software  유저가이드 부분을 보다가 Oracle Big Data SQL 관련 자료를 같이 보게 됐는데 

어떤녀석이나면 빅데이터에서 사용하는 비정형 데이터와 RDBMS 데이터 시스템을 따로 접근하지말고

묶어서 SQL 문장으로 보자는 겁니다. 


예전 포스팅에서 toad for cloud databases 에 대해서 간단히 소개하기도 했지만 어쨌든 내용을 적자면


요렇게 따로따로 노는 녀석들을




요렇게 쓰자~!!



그림출처 : Oracle Big Data SQL WHITE PAPER



PLSQL 패키지(CREATE_EXTDDL_FOR_HIVE)를 통해서 외부 테이블로 만든다거나,

RDBMS 에서 datapump로 생성후 HDFS 에 옮기는 작업을 할수 있고, Select 구문으로 데이터도 조회가 가능하도록 기술문서에 나타나있습니다.


빅데이터를 주도 하고 있는 분산처리 저장시스템과 비정형DB 를 기존의 RDBMS의 강자가 품으려는 움직임처럼 보여서 흥미롭습니다.

자바와 RDBMS와 HW 를 가지고 있는 오라클이 독자적으로 발전하고 있는 빅데이터 시장까지 어떤 영향을 미칠지는 지켜봐야 겠습니다.

하다하다 안되면 MYSQL하고 자바(sun)처럼 사버리면 되나;;


결론: 이런게 있다.




추가 : 오라클테이블이 HIVE 변환시 타입 매핑 테이블

 별다른건 아니고 데이터 카피가 이루어질때 자동으로 이렇게 된다 정도로 참고 하면 될것 같습니다.


 Copying Oracle Tables to Hadoop



Copy to BDA automatically converts the data in an Oracle table to an appropriate Hive data type. Table 8-1 shows the default mappings between Oracle and Hive data types.

Table 8-1 Oracle to Hive Data Type Conversions


Oracle Data TypeHive Data Type

NUMBER

INT when the scale is 0 and the precision is less than 10

BIGINT when the scale is 0 and the precision is less than 19

DECIMAL when the scale is greater than 0 or the precision is greater than 19

BINARY_DOUBLE

DOUBLE

BINARY_FLOAT

FLOAT

CHAR

NCHAR

CHAR

VARCHAR2

NVARCHAR2

VARCHAR

DATE

TIMESTAMP

TIMESTAMP

TIMESTAMP

TIMESTAMPTZ

TIMESTAMPLTZ

Unsupported

RAW

BINARY


■ 라이센스 부분참고 

Copy to BDA is licensed under Oracle Big Data SQL. You must have an Oracle Big Data SQL license to use Copy to BDA.



'Data Analysis > BIG DATA' 카테고리의 다른 글

Oracle Big Data Lite Virtual Machine 소개  (0) 2015.03.16

NULL 관련 함수

-- NULLIF (exp1,expr2)

NULLIF  expr1  expr2 를 비교합니다. 같은 경우는 NULL을 리턴합니다. 다르면 expr1 을 리턴합니다. expr1 은 리터럴 NULL 을 지정할 수 없습니다.

동일문장

CASE WHEN expr1 = expr2 THEN NULL ELSE expr1 END

 

-- COALESCE(expr1,expr2,expr3,)

COALESCE 는 식의 목록의 첫 번째 NULL이 아닌 expr 을 반환합니다. 2 개 이상의 식을 지정할 필요가 있습니다. 모든 expr 이 NULL로 계산되는 경우,이 함수는 NULL을 리턴합니다.

동일문장

CASE WHEN expr1 IS NOT NULL THEN expr1 ELSE expr2 END

통계관련 함수

-- CORR (exp1,expr2)

CORR 숫자 쌍의 집합에 대한 상관 계수를 반환합니다. 이것은 집계 함수 또는 분석 함수로 사용할 수 있습니다.

이 함수는 인수로서 임의의 수치 데이터형 또는 암묵적으로 수치 데이터 형으로 변환 가능한 숫자가 아닌 데이터 형식을 취합니다. Oracle 숫자의 우선 순위가 가장 높은 인수를 판단하여 나머지 인수를 데이터 형식으로 암시적으로 변환하여 데이터 형식을 반환합니다.

동일문장

COVAR_POP (expr1, expr2) / (STDDEV_POP (expr1) * STDDEV_POP (expr2))

참고 :

CORR 함수는 피어슨 상관 계수를 계산합니다. 이 계산하려면 수식을 인수로 지정해야합니다. Oracle은 비모수 또는 순위 상관을 지원하는 CORR_S (스피 어맨 로우 계수) 및
CORR_K (켄달의 타우 b 계수) 기능도 제공합니다.

 

 

-실행계획 생성
explain plan for {쿼리};

-실행계획 보기
select * from table(dbms_xplan.dsiplay);

-statment id 활용
explain plan set statement_id = '{구문이름}' for {쿼리}
TRACE 활성화

-- udump 디렉토리
%ORACLE_HOME%/admin/<SID>/udump 

tkprof {파일}.trc {output}

'Developer > ORACLE ERP' 카테고리의 다른 글

ERP 실행시 자바멈춤 현상  (0) 2011.11.29
oracle erp 문서 링크  (0) 2011.11.22
e – Business란 무엇인가  (0) 2008.07.28
ERP 구축 방법  (0) 2008.07.21
ERP 도입의 성공비결  (0) 2008.07.18