2012년 2월 29일 수요일

Microsoft TechNet Seminar - SQL Server 2012 후기

안녕하십니까 EA NetWeaver팀의 장준엽 사원입니다.^^
이번주 월요일 Microsoft TechNet Seminar 다녀왔습니다.
주로 개발자와 시스템 엔지니어 대상으로 진행되었던 세미나 후기를 공유합니다.
  • 일시 : 2012 2 27 () 13:00~18:00
  • 장소 : 양재동 AT센터 5
  • 참석자 : 김희석 대리, 안재민 사원, 장준엽 사원
[세션 소개]
Session 1 - Enhanced T-SQL of SQL Server 2012 /
한국마이크로소프트 강민석 부장, 김태환 차장
Session 2 - ColumnStore Index /
한국마이크로소프트 추형식 차장
Session 3 - SQL Azure step by step /
한국마이크로소프트 성지용 차장


Session 1
2012의 새롭게 추가된 펑션과 제어 구문에 대해 소개하는 세션이었습니다.
성능 개선 관점에서 2012의 새로운 기능들의 장점을 실례를 들어가며 설명했습니다.
간단한 설명 공유합니다.

새로운 옵션

CYCLE / NO CYCLE  - 순환하는 형태의 시퀀스 옵션
OFFSET / FETCH - OFFSET : 행을 반환하기 전에 건너뛸 행 수 지정, FETCH 행을 반환 (주로 게시판에서 유용하게 쓰일듯)
 * 기존의 TOP 10 구문은 게시판 페이지가 많아지면 성능에 영향
) OFFSET 10 ROWS FETCH FIRST 10 ROWS ONLY

ERROR HANDLING
THROW 구문 추가
 - 매개변수 없이 지정 된 THROW CATCH 블럭 내 정의
 - THROW 문이 발생하면 일괄 처리 종료
 - THROW 가 발생할 경우 심각도 16 발생
 - THROW 을 정의할 경우 세미콜론(;) 종결자 필요

EXCUTE WITH RESULT SETS
 - EXEC 를 통해 실행된 결과 집합 재정의
 - 타겟 테이블로 넘어갈 자동으로 자료형이 케스팅
 - 타입까지 지정해서 데이터를 형변환 있음

METADATA DISCOVERY
 - SET FMTONLY ONLY 대체 기능
 - 향상된 메타 데이터 확인 기능

시스템 프로시져 - 시스템 레벨에서 가이드 제공

EOMONTH, DATEFROMPARTS  - 새롭게 추가된 스칼라 펑선
PARSE - culture(국가) 에 따라 통화 단위.. 등 다르게 표현
CONCATE - + 대신 문자열을 이어줌
TRY_CAST : 케스팅을 제대로 못할 겅우 기본 값 입력 1900-00-00
TRY_PARSE : 케스팅을 제대로 못할 경우 null 값 입력



Session 2
컬럼 스토어에 대한 세션이었습니다. 데이터가 저장될 때 한 컬럼 안의 데이터들을 유사한 값들을 가지고 있으며
유사한 유형의 값들이기 때문에 압축 시 더욱 압축률이 높아지고 빠른 데이터 처리가 가능해 집니다.

특징
  • 컬럼 별로 데이터를 한꺼번에 몰아서 넣는다
  • 같은 데이터가 한번에 들어가므로 압축률이 높아진다.
  • 빠른 데이터 처리 결과
  • 한 테이블의 컬럼 수대로 컬럼 스토어가 만들어짐
  • 테이블이 리드 온리로 되어 있음
  • 메모리를 많이 사용
  • DW 환경에서 유리
  • 세그먼트 단위의 배치처리


Session 3
클라우드에 관한 세션이었습니다.
이제는 개념이 많이 알려진 SaaS, PaaS, IaaS 를 설명하며
MS-SQL의 클라우드 컴퓨팅에 대한 가능성을 제시하였습니다. ( https://windows.azure.com )
이미 외국에서는 상용화가 되어 있으며 우리나라는 올해 azure 서비스를 개시한다고 합니다.

간단히 말해서 기업에서 데이터 베이스 자체도 스스로 구축하는 것이 아니라
서비스 형태의 MS-SQL Azure 에 요금을 지불하고 이용만 하면 되는 것입니다.
투자 비용을 낮추고 안정적인 서비스를 받을 수 있다고 합니다.
하나의 DB 서비스를 이용하면 2개의 복제된 레플리카 DB 가 생기게 되고
Sync 상태로 데이터를 실시간으로 동기화 해줍니다.
문제가 생기면 문제되는 DB는 날리고 바로 실시간으로 복제되었던 레플리카 DB가 바로 올라오게 됩니다.(HA - 고가용성)
한 사용자당 총 DB 3개가 생기게 되지만 실제 요금은 1개의 용량에 대한 요금만 지불하면 됩니다.
시연 장면을 봤는데 웹 기반 UI 로 되어 있으며 깔끔하고 관리하기 쉽게 되어 있었습니다.
실버라이트를 사용하여 UI 가 상당히 이쁘고 깔끔했습니다.

SQL Azure 요금

데이터베이스 크기                       /   월간 데이터베이스당 가격
0 ~ 100MB                                 /    $4.995(
고정)
101MB
초과 ~ 1GB                       /    $9.99(고정
)
1GB
초과 ~ 10GB GB 경우        /   $9.99, 추가 GB 경우
$3.996
10GB
초과 ~ 50GB 10GB 경우    /     $45.954, 추가 GB 경우
$1.998
50GB
초과 ~ 150GB 50GB 경우  /     $125.874, 추가 GB 경우
$0.999
데이터 전송

아웃바운드 GB $0.12모든 인바운드 데이터 전송에는 요금이 부과되지 않습니다.

읽어 주셔서 감사합니다. 좋은 하루 되세요^^

2011년 4월 21일 목요일

번역(사내 프로그램 이용 & SE63)

일반 T-Code SE63 을 이용

SE63 이동 > 번역 > ABAP 오브젝트 > 내역

으로 이동하면 오브젝트 유형 선택 목록이 나온다.

여기에서

S3 ABAP 텍스트 > 텍스트 요소

오브젝트 이름에 프로그램 이름을 적어주고,

소스언어, 대상언어를 선택해 주고 편집을 누른다.

각각의 번역항목을 번역해 주면 된다.

2011년 4월 20일 수요일

유용한 티코드(Transaction Code)

sm50 프로세스 개요 (백그라운드는 type m 이 주로 많음)

sm66 전체작업프로세스 개요 (프로그램 취소를 누르면 프로그램을 중지시킬 수 있음, 디버깅)

se30 아밥 실행시간 분석 프로그램

st22 런타임 에러

st05 퍼포먼스 분석 (추적 설정 -> 프로그램 실행 -> 추적 해제)

sm04 사용자 리스트

sm12 잠금엔트리 선택

abapdocu 아밥 다큐먼트 문서

rsdl DB 연결: 연결용 프로그램 점검

db01 현재 DB 서버의 상태 (Diagnostics -> SQL Command Editor 에서 DB 쿼리를 직접 날릴 수 있음 *대소문자 구분 ex. select * from tdv.MARA)

dbco "데이타베이스 연결 내역"뷰 조회: 개요

smwg RFC 와 커넥션 되어 있는 정보를 보여줌

sbwp 비즈니스 워크 플레이스(메일 발송)

2011년 4월 14일 목요일

인터널 테이블

Tables: MARA. “MARA의 Header 역할을 하는 Working Area생성.

Data: BEGIN OF IT_MARA OCCURS 0.
INCLUDE STRUCTURE MARA.
Data: END OF IT_MARA. “ Header가 기본적으로 생성됨.

Data: IT_MARA_N LIKE TABLE OF MARA. “ Header가 없는 Internal Table.

Data: IT_MARA_H LIKE TABLE OF MARA WITH HEADER LINE.
“ Header가 있는 Internal Table.

2011년 4월 13일 수요일

Document 객체 생성하기

* docking 컨테이너 헤더를 만들어 헤더에 document 객체를 생성하여 삽입한다.

  DATA : gs_docking_container        TYPE REF TO cl_gui_docking_container     ,
        go_docking_container_header TYPE REF TO cl_gui_docking_container,
        go_document                 TYPE REF TO cl_dd_document,             "문서 오브젝트


  CREATE OBJECT go_docking_container_header
      EXPORTING
        repid                       = sy-repid
        dynnr                       = sy-dynnr      "현재화면
        side                        = go_docking_container_header->dock_at_top
        extension                   = 50.

    CREATE OBJECT go_document
      EXPORTING
        style  = 'ALV_GRID'.
*        background_color =
*        bds_stylesheet =
*        no_margins =

    CALL METHOD go_document->add_text
      EXPORTING
        text          = 'Header'
*        text_table    =
*        fix_lines     =
*        sap_style     =
*        sap_color     =
        sap_fontsize  = cl_dd_area=>LARGE    
*        sap_fontstyle =
*        sap_emphasis  =
*        style_class   =
*      CHANGING
*        document      =
        .

    CALL METHOD go_document->new_line.

    CALL METHOD go_document->add_gap
      EXPORTING
        width = 5.

    data lv_hhtxt2(255type c VALUE 'WERKS :'.
  
    CALL METHOD go_document->add_text
      EXPORTING
        text      = lv_hhtxt2
        sap_fontsize = cl_dd_area=>medium.


       CALL METHOD go_document->display_document
      EXPORTING
        parent             = go_docking_container_header.

2011년 4월 11일 월요일

ABAP 중요한 테이블

V_LTDX

DB 뷰 LTDX (ALV 레이아웃) : 프로그램 별 variant 가 저장되는 table

엑셀 유용한 키

Ctrl + ;

데이터 유효성 검사 : 셀 선택 Ctrl + Shift + 방향키

Ctrl + 방향키 sheet 끝 or 처음

1 sheet 이동 : Ctrl + HOME

수식으로 결과값 보기 : Ctrl + ~

절대참조로 셀 바꾸기 : F4

표로 변환 [ ]

1900 년 1월 1일부터 카운트 (날짜)

Ctrl + 1 (셀 서식)