확장메뉴
주요메뉴


소득공제
데이타베이스 관리 시스템

데이타베이스 관리 시스템

RAGHU RAMAKRISHNAN 등저 / 송병호 역 | 이한출판사 | 2001년 03월 31일   저자/출판사 더보기/감추기
리뷰 총점5.7 리뷰 3건
정가
28,000
판매가
26,600 (5% 할인)
구매 시 참고사항
eBook이 출간되면 알려드립니다. eBook 출간 알림 신청
분철서비스 시작 시 알려드립니다. 분철서비스 알림신청

품목정보

품목정보
발행일 2001년 03월 31일
쪽수, 무게, 크기 990쪽 | 크기확인중
ISBN13 9788982412158
ISBN10 8982412158

책소개 책소개 보이기/감추기

목차 목차 보이기/감추기

책 속으로 책속으로 보이기/감추기

ADT와 구성된 타입들이 있기 때문에 ORDBMS에서 질의를 처리할 때 새로운 기능이 요구된다. 또 질의의 효율성에 대한 여러 가지 가정들도 바뀌게 된다. 이 절에서는 기능성에 관한 두가지 문제(사용자 정의 집단 연산과 보안)와 효율성에 대한 두 가지 문제(메소드 캐싱과 포인터 스위즐링)에 대해서 살펴본다.


사용자들은 자신의 ADT에 새로운 메소드를 정의할 수 있기 때문에, 자신의 ADT에 새로운 집단 함수를 정의하고 싶어할 것이라는 점도 어쩌면 당연하다. 예를 들어, 일반적인 SQL 집단 연산자(COUNT, SUM, MIN, MAX, AVG)는 Dinky사의 스키마에 있는 image 타입에는 적당하지 않다.

대부분의 ORDBMS에서는 사용자들이 새로운 집단 함수들을 시스템에 등록할 수 있도록 해준다. 집단 함수를 등록하려면 사용자는 세가지 메소드를 구현해 주어야 하는데, 이것들을 우리는 초기화(initialize), 반복(iterate), 종료(terminate) 메소드라고 부르기로 한다. 초기화 메소드는 해당 집단 연산의 내부 상태를 초기화한다. 반복 메소드는 투플을 하나씩 보면서 상태를 갱신하며, 종료 메소드는 최종 상태를 초기화한다. 반복 메소드는 투플을 하나씩 보면서 상태를 갱신하며, 종료 메소드는 최종 상태를 보고 집단 연산 결과를 계산한 후 내부 상태를 정리한다. 예를 들어 두번째로 높은 값을 구하는 집단 연산을 만든다고 생각해 보자. 초기화 메소드를 호출하면 가장 높은 값 두 개를 위한 저장 공간을 할당하며, 반복 메소드를 호출하면 현재 투플의 값과 최상위 두 개의 값을 비교해서 필요한 경우에는 최상위 두 개의 값을 갱신하며, 종료 메소드를 호출하면 두번째로 높은 값을 복사해서 반환함과 동시에 최상위 두 개의 값을 위한 저장 공간을 없앤다.


ADT를 사용한다는 것은 사용자가 DBMS에 코드를 추가할 수 있게 된다는 의미이다. 따라서 취약점도 발생한다. ADT 메소드를 잘못 작성하거나 악의가 있어서 고의로 작성해 놓으면 데이타베이스 서버를 멈추게 할 수 있고 심지어는 데이타베이스를 파괴할 수도 있다. 따라서 DBMS는 문제를 일으킬 소지가 있는 오류성 또는 악의성 사용자 코드를 방지하는 매커니즘이 있어야 한다. 적어도 ADT 메소드를 디버깅할 수 있는 매커니즘은 제공해 주어야 한다. 그렇지 않았다가는 메소드 작성자가 DBMS에 메소드를 등록하기 전에 오류가 없는 완벽한 코드를 작성해 주어야 하는데 아마 이러한 프로그래밍 환경은 누구라도 용서하지 않을 것이다!

문제들을 방지하는 한 가지 메커니즘은 사용자의 메소드를 컴파일하지 않고 인터프리트하는 것이다. DBMS는 언어의 능력을 제한하지 않고도 메소드의 행동 양태를 검사할 수 있고, 또 메소드가 수행하는 한 단계 한 단계를 미리 미리 안전한지 점검하면서 진행시켜 나갈 수 있다. 이러한 목적의 전형적인 인터프리트 방식 언어들로는 Java와 SQL:1999의 절차형 부분들이다.

또 다른 메커니즘은 사용자가 C++와 같은 범용 프로그래밍 언어를 사용해서 메소드를 작성하고 또 이것을 컴파일하지만 실행은 DBMS의 주소 공간과는 다른 공간에서 진행시키는 것이다. 이 경우 DBMS는 사용자 메소드에게 명시적인 프로세스간 통신(interprocess communication IPC)을 보내고, 메소드는 다시 IPC로 응답하게 된다. 이 방식을 사용하면 사용자 메소드 내에있는 버그(예컨대 잘못된 포인터)가 DBMS나 데이타베이스를 파괴하지 못하게 되며, 또 악의적인 메소드가 DBMS의 상태 정보나 데이타베이스를 읽어내거나 고치지 못하게 된다. 사용자가 메소드를 작성할 때 DBMS가 그 메소드를 별도의 프로세스로 실행시킨다는 것을 몰라도 되도록 하는 것이 중요하다. '포장기'에 해당하는 부분이 있어서 사용자의 코드를 링크시켜 놓으면 메소드를 호출하고 값을 IPC로 반환해주는 일을 내부적으로 처리해 준다.


사용자가 정의한 ADT 메소드들은 실행에 비용이 너무 많이 소요되고, 질의 처리 시간의 대부분을 차지하게 된다. 질의를 처리할 때 메소드의 결과들을 캐싱해 놓으면 같은 매개변수에 대해 동일한 메소드가 여러번 호출될 때 많은 도움이 될 것이다. 하나의 질의 내부로 범위를 좁혀볼 때에는, 릴레이션을 정렬하든지 아니면 집단 연산에서 사용하는 것과 같은(12.7절 참조) 해시를 기반으로 하는 방법을 사용함으로써 여러번 나오는 값들에 대해서는 반복해서 메소드를 호출하지 않도록 해줄 수 있다. 다른 방법으로는 메소드의 입력과 그에 해당하는 출력을 테이블로 유지해 두는 방법이 있다. 그리고 나서 입력 투플과 이 테이블을 조인하면 주어진 입력에 대한 메소드의 결과를 찾을 수 있다. 이 두 가지 방식을 조합해서 사용할 수도 있다.
--- p.885~886

회원리뷰 (3건) 회원리뷰 이동

한줄평 (0건) 한줄평 이동

  등록된 한줄평이 없습니다!

첫번째 한줄평을 남겨주세요.

배송/반품/교환 안내

배송 안내
반품/교환 안내에 대한 내용입니다.
배송 구분 예스24 배송
  •  배송비 : 무료배송
포장 안내

안전하고 정확한 포장을 위해 CCTV를 설치하여 운영하고 있습니다.

고객님께 배송되는 모든 상품을 CCTV로 녹화하고 있으며, 철저한 모니터링을 통해 작업 과정에 문제가 없도록 최선을 다 하겠습니다.

목적 : 안전한 포장 관리
촬영범위 : 박스 포장 작업

  • 포장안내1
  • 포장안내2
  • 포장안내3
  • 포장안내4
반품/교환 안내

상품 설명에 반품/교환과 관련한 안내가 있는경우 아래 내용보다 우선합니다. (업체 사정에 따라 달라질 수 있습니다)

반품/교환 안내에 대한 내용입니다.
반품/교환 방법
  •  고객만족센터(1544-3800), 중고샵(1566-4295)
  •  판매자 배송 상품은 판매자와 반품/교환이 협의된 상품에 한해 가능합니다.
반품/교환 가능기간
  •  출고 완료 후 10일 이내의 주문 상품
  •  디지털 콘텐츠인 eBook의 경우 구매 후 7일 이내의 상품
  •  중고상품의 경우 출고 완료일로부터 6일 이내의 상품 (구매확정 전 상태)
  •  모바일 쿠폰의 경우 유효기간(발행 후 1년) 내 등록하지 않은 상품
반품/교환 비용
  •  고객의 단순변심 및 착오구매일 경우 상품 반송비용은 고객 부담임
  •  직수입양서/직수입일서중 일부는 변심 또는 착오로 취소시 해외주문취소수수료 20%를 부과할수 있음

    단, 아래의 주문/취소 조건인 경우, 취소 수수료 면제

    •  오늘 00시 ~ 06시 30분 주문을 오늘 오전 06시 30분 이전에 취소
    •  오늘 06시 30분 이후 주문을 익일 오전 06시 30분 이전에 취소
  •  직수입 음반/영상물/기프트 중 일부는 변심 또는 착오로 취소 시 해외주문취소수수료 30%를 부과할 수 있음

    단, 당일 00시~13시 사이의 주문은 취소 수수료 면제

  •  박스 포장은 택배 배송이 가능한 규격과 무게를 준수하며, 고객의 단순변심 및 착오구매일 경우 상품의 반송비용은 박스 당 부과됩니다.
반품/교환 불가사유
  •  소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  •  소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 : 예) 화장품, 식품, 가전제품, 전자책 단말기 등
  •  복제가 가능한 상품 등의 포장을 훼손한 경우 : 예) CD/LP, DVD/Blu-ray, 소프트웨어, 만화책, 잡지, 영상 화보집
  •  소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  •  디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  •  eBook 대여 상품은 대여 기간이 종료 되거나, 2회 이상 대여 했을 경우 취소 불가
  •  모바일 쿠폰 등록 후 취소/환불 불가
  •  중고상품이 구매확정(자동 구매확정은 출고완료일로부터 7일)된 경우
  •  LP상품의 재생 불량 원인이 기기의 사양 및 문제인 경우 (All-in-One 일체형 일부 보급형 오디오 모델 사용 등)
  •  시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  •  전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
소비자 피해보상
  •  상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 준하여 처리됨
환불 지연에
따른 배상
  •  대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리
  • 절판 상태입니다.
뒤로 앞으로 맨위로 공유하기