Take off

블로그 이미지
by 안.들
  • Total hit
  • Today hit
  • Yesterday hit

'oracle'에 해당되는 글 3건

  1. 2017.02.16
    SharePlex
  2. 2015.12.02
    query hint
  3. 2015.11.24
    Rows를 grouping 하여 columns로 표현하기
SharePlex는 운영서버(Source)의 데이터베이스를 원거리에 WAN (또는LAN)으로 연결된 백업서버(Target)로 실시간 복제하여주는 동시에, 운영서버와 백업서버의 데이터베이스를 동시에 사용할 수 있도록 하여주는 고성능의 데이터베이스 복제 솔루션입니다.
SharePlex는 운영중인 Source 서버에 추가부하를 거의 주지 않고 트랜잭션 발생과 동시에 Target서버로 데이터를 복제하며, 데이터베이스 로그(Log) 레코드를 실시간 전송하는 형태로 적은 양의 데이터만 전송함으로 낮은 속도의 네트워크하에서도 동작합니다.

따라서 SharePlex는, 
1. 원거리의 백업센터로 DB를 실시간 복제가 가능하고,
2. 저속 네트워크에서도 가능 함으로 회선비용을 대폭 절감하며,
3. 백업서버를 조회나 Report용으로 같이 사용하여 운영서버의 부하를 분산시킴으로써,
재해복구 및 부하 분산 처리 솔루션으로 활용할 수 있습니다.

[출처] shareplex for oracle|작성자 영더기


출처) http://blog.naver.com/PostView.nhn?blogId=mcgrady99&logNo=40021577921


'oracle' 카테고리의 다른 글

query hint  (0) 2015.12.02
Rows를 grouping 하여 columns로 표현하기  (0) 2015.11.24
AND


1. Nested Loop

   - 테이블의 인덱스끼리 inner-outer 루프를 형성하여 결과를 쿼리하는 방식입니다.

   - 제일 많은 유형의 실행계획입니다.

2. Sort Merge

   - 쿼리의 결과가 많은 양의 데이터를 읽는 경우, 테이블들을 각각 full-scan하여 같은 키값을 갖는 데이터끼리 조인하여 실행합니다.

   - Sort-Merge 방식은 많은 메모리와 디스크 I/O를 필요로 하기 때문에, sqlplus를 실행하는 주체의 메모리/CPU/디스크 스펙에 많은 영향을 받습니다.

3. Hash Join

   - 한 테이블은 매우 많은 Row를 갖고, 다른 한 테이블은 매우 적은 Row를 가질 때, 해쉬 알고리즘에 의해 큰 테이블을 여러개의 버켓으로 나누어 쿼리를 수행하는 방식입니다. 작은 테이블은 인덱스를 태우는 것보다 full-scan을 하는 것이 유리할 때 사용됩니다.

출처)http://annehouse.tistory.com/413



참고, 다시함보자)http://wiki.gurubee.net/pages/viewpage.action?pageId=4948020

'oracle' 카테고리의 다른 글

SharePlex  (0) 2017.02.16
Rows를 grouping 하여 columns로 표현하기  (0) 2015.11.24
AND

@ROWS데이타


GROUP_ID     SEQNO  CODE_CD      CODEVALUE

0001   00001  CD01   00001

0001   00001  CD02   00001

0001   00001  CD03   00001

0001   00002  CD01   00002

0001   00002  CD02   00001

0001   00002  CD03   00001

0001   00003  CD01   00001

0001   00003  CD02   00002

0001   00003  CD03   00001

0001   00004  CD01   00001

0001   00004  CD02   00001

0001   00004  CD03   00002



==> @columns 데이타로 표현

GROUP_ID     SEQNO  VAL

0001   00001  CD0100001CD0200001CD0300001

0001   00002  CD0100002CD0200001CD0300001

0001   00003  CD0100001CD0200002CD0300001

0001   00004  CD0100001CD0200001CD0300002




XMLType Methods를 이용한다.



예)

WITH TMP_ROWSTOCOLUMNS AS  
(SELECT '0001' AS GROUP_ID, '00001' SEQNO,'CD01' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00001' SEQNO,'CD02' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00001' SEQNO,'CD03' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00002' SEQNO,'CD01' CODE_CD, '00002' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00002' SEQNO,'CD02' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00002' SEQNO,'CD03' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00003' SEQNO,'CD01' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00003' SEQNO,'CD02' CODE_CD, '00002' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00003' SEQNO,'CD03' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00004' SEQNO,'CD01' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00004' SEQNO,'CD02' CODE_CD, '00001' CODEVALUE FROMDUAL UNION
SELECT '0001' AS GROUP_ID, '00004' SEQNO,'CD03' CODE_CD, '00002' CODEVALUE FROMDUAL)
 SELECT  GROUP_ID,SEQNO
      , SUBSTR(XMLAGG(XMLELEMENT(A,'' ||NVL(CODE_CD || CODEVALUE,'')) ORDER BY SEQNO,CODE_CD).EXTRACT('//text()'), 1) ASVAL
  FROM  TMP_ROWSTOCOLUMNS A
GROUP BY A.GROUP_ID,SEQNO ORDER BY 2

참고) oracle document : http://docs.oracle.com/cd/B19306_01/appdev.102/b14259/xdb04cre.htm

 

'oracle' 카테고리의 다른 글

SharePlex  (0) 2017.02.16
query hint  (0) 2015.12.02
AND

ARTICLE CATEGORY

분류 전체보기 (66)
금융 (0)
관제 (4)
Unix (1)
Android (6)
Windows (2)
Java (4)
oracle (3)
web (3)
English (3)
Physics (1)
Books (6)
요리 (1)
Deep Learning (6)
IoT (21)
to-do list (0)
Music (1)

RECENT ARTICLE

RECENT COMMENT

CALENDAR

«   2025/09   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

ARCHIVE