SQL Server Scale-Out 솔루션과 Oracle9i RAC 비교

Slides:



Advertisements
Similar presentations
CI(Continuous Integration) 이학성. C ontinuous I ntegration? 2 지속적으로 품질관리 를 적용하는 과정 개발자가 기존 코드의 수정 작업 을 시작할 때, 코드 베이스의복사본을 받아서 작업을 시작하면서 코드의 변경.
Advertisements

ScanMail for Lotus Notes ( 주 ) 한국트렌드마이크로. RUNNING HEADER, 14 PT., ALL CAPS, Line Spacing=1 line ScanMail Notes 의 주요 기능 Domino 환경의 Antivirus, Content Filter.
1 08 시스템 구성도 고려사항 * 웹 서버 클러스터 구성  클러스터 구축은 ㈜ 클루닉스의 Encluster 로 구축 (KT 인증,IT 인증 획득, 실제 클러스터 구축 사이트 200 여곳 )  웹 서버 클러스터는 Dynamic, Static, Image.
한국마이크로소프트 Microsoft Confidential. 상세 결과테스트 결과 SMB 2 의 성능이 Windows Server 2008 Beta 3 기준으로 Windows Server 2003 SP1 (SMB 1) 에 비해 9% 이상 향상된 결과를 보임 Microsoft.
Microsoft ANSWER 이명희 이경서 김나은 김정현 서리다 유시은 이재현 심광철.
Big Data & Hadoop. 1. Data Type by Sectors Expected Value using Big Data.
1)RACK 2)UPS 3)P D U 장치 4)Server Group 5)KVM Switch 7)UPS 를 위한 HUB 6) RACK Monitor.
구축사례 ( 농협 ) 구축기간 구축목적 특이사항 2001년3월 ( 지속적인 증설 진행중 )
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
일반 요구 사항 비즈니스 요구사항 고객/정보/위치/상태 탐색방법 제품/서비스 홍보 및 광고 방법
CPU 품 명 PERSONAL COMPUTER 모델번호 HP 6000Pro 제 조 사
뇌를 자극하는 Windows Server 2012 R2
소리가 작으면 이어폰 사용 권장!.
뇌를 자극하는 Windows Server 2012 R2
SQL Server 2000 HA & DR Solutions
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
안재훈 기업고객사업본부/기술사업부 한국마이크로소프트
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Windows Server 장. Windows Server 2008 개요.
Load Balancing L4와 L7은 어떻게 동작할까?.
목차 백업과 복원.
SQL Server 2000, SQL Server 2005 비교 자료
장윤석과장 Technology Specialist (주)한국마이크로소프트
DAT305 SQL Server AlwaysOn Technologies: 올바른 고 가용성 기능 선택
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
11 장 LAN 기본 개념과 Ethernet LAN
뇌를 자극하는 SQL Server 장. SQL Server 2008 소개.
Visual Basic .NET 처음 사용하기.
Chapter 21 Network Layer: ARP, ICMP (IGMP).
소리가 작으면 이어폰 사용 권장!.
Error Detection and Correction
NJM Messenger 박상원 박연호.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
하성희 복제 구축 예제 하성희
4. LAN의 배선체계 (3장. LAN: Local Area Network)
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
10장. 예외처리.
SK Telecom 매출 통계 시스템의 SQL Server Reporting Services 적용사례
Grade Server Team14. Attention Seeker
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
기업고객사업본부 / 기술사업부 한국마이크로소프트
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
뇌를 자극하는 Windows Server 장. 원격 접속 서버.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
AUTODESK AUTOCAD ELECTRICAL 전기제어 2D 설계 소프트웨어 표준기반 설계 생산성 도구 구조도 설계
화이트 보드와 채팅 기능을 제공하는 웹 기반 공동작업 지원 시스템
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
데이터 베이스 DB2 관계형 데이터 모델 권준영.
CHAP 21. 전화, SMS, 주소록.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
STS 에서 웹 서버 설치 방법.
클러스터 시스템에서 효과적인 미디어 트랜스코딩 부하분산 정책
뇌를 자극하는 Solaris bible.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
9 브라우저 객체 모델.
채팅 및 파일전송 프로그램 권 경 곤 김 창 년.
소리가 작으면 이어폰 사용 권장!.
Installation Guide.
Completion Port기반의 채팅프로그램
CHAP 15. 데이터 스토리지.
 6장. SQL 쿼리.
DBMS & SQL Server Installation
임시테이블과 테이블변수 SQLWorld Study Group - 최명환 -.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
ARP.
Presentation transcript:

SQL Server Scale-Out 솔루션과 Oracle9i RAC 비교 박명은 (mepark@microsoft.com) Technical Specialist Enterprise Partner Group Microsoft Korea

Agenda 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약 Clustering 기술 Oracle9i RAC SQL Server Scale-Out clustering 기술 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약

Scale–Out Clustering 기술 공유데이터 ( Oracle RAC ) 연합데이터 ( SQL Server)

Agenda 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약 Clustering 기술 Oracle9i RAC SQL Server Scale-Out clustering 기술 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약

RAC의 기능 Node1 Node2 Instance A Instance B Parallel Cache Management DLM DLM Cluster Manager Comm. Layer Comm. Layer Cluster Manager Cluster Interconnect Shared Disk Driver Shared Disk Driver 모든 트랜잭션은 클러스터링 별칭(alias)를 통해 트랜잭션 사용가능 노드로 이동됨. SAN이나 NAS 기술의 사용여부에 따라 HBA나 NIC필요 각 노드 당 표준 네트워크 인터페이스 카드 사용 (허브나 스위치를 통해 연결 ) Shared Disk Sub-System

RAC 구성요소들 Cluster Manager Global Cache Services 상태를 관리하고, 인스턴스의 버퍼 캐시에 데이터 블록을 전송하며, Global Resource Directory에 있는 리소스 정보를 조회하기 위해 버퍼 캐시 관리자와 통합 Global Resource Directory 모든 인스턴스에 분산되어 있는 데이터 블록을 포함하여 리소스에 대한 상태 정보를 보유하고 있음 Global Enqueue Services ( GES) 어떤 노드에서 어떤 데이터베이스 리소스가 마스터 되었는지를 추적하고, 사용자 프로세스에 의해 만들어진 데이터 작업을 동기화하기 위해 리소스를 할당 내지는 반환함 클러스터 상호 연결 및 프로세스 간 통신 작업거부 ( quiesce)데이터 베이스 기능 공유 디스크 하위시스템

RAC상에서 트랜잭션 처리 요청된 행들이 로컬 캐시에 있는지 확인 만약 있다면, 요청된 행들은 호출자에게 바로 전달 만약 없을 경우, 호출된 노드는 클러스터내의 다른 노드에 캐시 되어 있는지 확인 다른 노드에 캐시 되어 있다면, 캐시 블록을 호출한 노드에 보내주기 위한 일련의 프로세스가 시작되고 요청된 행을 호출자 에게 전달 어느 노드에서 캐시 되지 않은 경우에는 일반 읽기 작업이 수행됨

노드간 메시지의 효율성 각 동기화 sequence 에 필요한 메시지의 개수 동기화 횟수 – 적을수록 좋음 노드간 통신의 대기 시간 또는 속도

동기화를 위한 메시지 수 공동작업에 필요한 메시지 개수는 클러스터 데이터베이스의 GES구현과 복잡하게 연결됨 일부 데이터를 액세스 하는 경우, 아래와 같은 방식으로 이루어짐 데이터를 로컬이나 원격 캐시에서 사용할수 없는 경우 데이터가 로컬 캐시에 있는 경우 – 최상의 성능 데이터가 원격 캐시에 있는 경우 - 사용자 프로세스는 원격 노드상의 Global cache services 프로세스에 노드간 메시지 생성 - Global Cache services와 인스턴스 프로세스는 차례로 메모리 내부 Global Resource Directory를 업데이트하고 블록을 요청하는 사용자 프로세스로 보냄

노드간 메시지 대기 시간 Cache fusion은 효율적으로 작동하기 위해 적은 대기 시간의 통신 프로토콜을 필요로 함 RAC의 기능성이나 사용의 편리성은 클러스터 상호 연결과 관련된 구성 요소의 성능 및 용량 에 따라 크게 달라짐

Agenda 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약 Clustering 기술 Oracle9i RAC SQL Server Scale-Out clustering 기술 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약

SQL Server Clustering 기술 최상의 총 소유비용 제공 최상의 가격대비 성능을 제공 자동화된 리소스 관리를 통한 관리에 소요되는 비용을 줄임

Active / Passive Cluster 기술 Client Failover Clustering은 최대 8개 노드까지 지원 Primary Node \\VirtualServer1 Windows Server 2003 Secondary Node Windows Server 2003 SQL Server RAID Array

Active-Active Cluster 기술 Failover Clustering은 최대 8개 노드까지 지원 Windows Server 2003 Primary Node for //VirtualServer1 Secondary Node for //VirtualServer2 Primary Node for //VirtualServer2 Secondary Node for //VirtualServer1 //VirtualServer1 Client //VirtualServer2 SQL Server

SQL Server 연합서버 클러스터된 비즈니스 서비스 계층 인터넷 COM+ IIS ASP 데이터 서비스 계층 비즈니스 서비스 계층을 형성하기 위해 디자인됨 각 서버는 동일한 COM+ 구성 요소 집합을 가짐 최소의 처리 로드를 가진 서버에 새 요청을 보냄으로써 클러스터 처리 로드의 균형을 유지 인터넷 COM+ ASP IIS 데이터 서비스 계층 업데이트 가능한 분산 분할된 뷰 지원 각 노드별 자율적 작동 독립적 관리, 독립적 데이터 ,프로세스 지원 서로 협동하여 작업로드를 처리하는 자율서버 그룹 SQL Server 2000 연합서버

SQL Server 연합서버 Svr1 Svr2 Svr3 Svr4 Svr5 Svr6 SQL Server IIS IIS IIS CREATE VIEW Customers AS SELECT <local>. Customers1 UNION ALL SELECT <Svr2>.Customers2 UNION ALL SELECT <Svr3>.Customers3 UNION ALL SELECT <Svr4>.Customers4 UNION ALL SELECT <Svr5>.Customers5 UNION ALL SELECT <Svr6>.Customers6 CREATE VIEW Customers AS SELECT <Svr1>.Customers1 UNION ALL SELECT <Svr2>.Customers2 UNION ALL SELECT <Svr3>.Customers3 UNION ALL SELECT <Svr4>.Customers4 UNION ALL SELECT <local>.Customers5 UNION ALL SELECT <Svr6>.Customers6

Agenda 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약 Clustering 기술 Oracle9i RAC SQL Server Scale-Out clustering 기술 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약

RAC의 가용성 여전히 배제할 수 없는 다운타임 존재 사용자 패치를 적용해야 할 경우, Oracle의 데이터 사전을 업데이트해줘야 하기 때문에 시스템은 제한 모드이어야 함 즉 시스템이 “다운” 되지는 않지만, 본질적으로 사용자는 사용할 수 없는 것임. 사용자가 데이터를 입력하는 중이거나, 전자상거래 사이트의 고객트랜잭션을 완료하는 도중에 이런 경험을 하는 것은 시스템 종료와 마찬가지 임

RAC의 가용성 트랜잭션은 자동으로 장애조치를 취하지 못함 OCI를 이용하고 있는 Oracle의 TAF(Transparent Application Failover)를 이용하는 어플케이션을 구축해야 함 어플리케이션이 서버의 상태를 추적하여 현재 어떤 어플리케이션이 연결되어 있는지를 알아 낼 수 있음 연결된 서버가 실패할 경우에도 어플리케이션은 자동으로 어플리케이션은 쿼리를 다시 보내고 또는 그 쿼리를 여유 노드로 보낼 수 있음. 그러나 트랜잭션 상태가 항상 저장되어 있기 때문에 이 기능을 사용하는 것은 심각한 부담을 줄 수 있음

RAC 가용성 요약 제품 자체적으로는 자동적인 고 가용성을 제공하지 않음 대부분의 기업내의 Biz App들은 자동화된 트랜잭션 장애조치 기능을 보유하지 않음 다운타임은 여전히 존재 특정 Patch는 여전히 다운타임이 요구됨 TAF (Transparent Application Failover)로 개발되지 못한 어플리케이션의 장애 TAF 로 개발된 어플리케이션들은 트랜잭션이 중단되는 일이 없는 반면, 시스템 작동이 늦어짐

SQL Server 가용성 클러스터된 비즈니스 서비스 계층 인터넷 COM+ IIS ASP 데이터 서비스 계층 비즈니스 서비스 계층을 형성하기 위해 디자인됨 각 서버는 동일한 COM+ 구성 요소 집합을 가짐 최소의 처리 로드를 가진 서버에 새 요청을 보냄으로써 클러스터 처리 로드의 균형을 유지 인터넷 COM+ ASP IIS 데이터 서비스 계층 업데이트 가능한 분산 분할된 뷰 지원 각 노드별 자율적 작동 독립적 관리, 독립적 데이터 ,프로세스 지원 서로 협동하여 작업로드를 처리하는 자율서버 그룹 SQL Server 2000 연합서버

SQL Server 가용성 Client PCs Client PCs Server B Cluster management Disk cabinet A Heartbeat Cluster management Disk cabinet B Server A SQL Server Exchange Server Client PCs Server B Disk cabinet A Heartbeat Cluster management Disk cabinet B Server A SQL Server Exchange Server

RAC의 확장성 RAC이 OPS의 주요 병목지점인 디스크 입출력 프로세스를 제거했다고는 할지라도, 이는 다른 영역으로 옮겨놓은 정도일 뿐임 노드간 상호 연결의 본래 대기시간은 SMP 시스템 버스에서 경험하는 시간보다 현저히 높다 더 용량의 NIC나 스위치를 사용하는 것은 단순히 최고 한도를 약간 올려주는 정도임. 그 이유는 RAC의 설계에 있기 때문 RAC의 설계는 저장소와 연결된 구간에서 심한 리소스 충돌을 일으키기 때문

RAC의 확장성 다음 그림은 노드의 수가 증가함에 따라 어떻게 클러스터 상호 연결이 각 노드가 발생시키는 트랜잭션에 의해 지배당 할 수 있는 가를 보여주는 예임 2002년 9월 15일자 출처 : www.tpc.org

RAC 확장성 요약 확장성 측면에서는 10g에서 향상되었지만, SMP System에는 여전히 부족함 Writes가 많은 시스템인 경우는 제대로 성능을 내지 못할 수 있음 Oracle을 사용하고 있는 대규모의 사이트들은 SMP Sever을 사용하고 있음 SQL Server는 TPC-C, TPC-W, SAP, Onyx등과 같은 각종 업계 벤치마크에서 선두적인 입지를 차지함 수평적 확장 벤치마크 전용인 SQL Server 노드 진행 (16, 24, 32노드) 부분에 있어 Oracle RAC에서 보여주지 못했던 확장성을 보여주고 있음

Agenda 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약 Clustering 기술 Oracle9i RAC SQL Server Scale-Out clustering 기술 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약

RAC은 총 소유 비용 절감? RAC구현 시 유일한 비용절감은 값비싼 Unix 시스템에서 Intel 기반 제품 시스템으로 옮기는 경우 사용자가 이미 Intel 기반 서버를 사용하고 있다면 RAC을 구현할지라도 경비 절감을 할수 없으며 오히려 RAC을 구현하기 위한 총 소요비용은 더욱 높아짐 추가 서버 및 네트워킹 하드웨어 스토리지 솔루션 ( 내장된 스토리지는 작동안됨) 광 연결 솔루션 ( 노드가 두개 이상 ) 추가 Oracle 데이터베이스 라이센스 ( 노드 별 ) 훈련된 운영자와 관리 마이그레이션 및 인증 서비스 기존 하드웨어와 오래된 하드웨어 재사용 안됨 그 외에 인프라요구사항과 DBA및 Network 관리자의 관리작업에 소요되는 비용이 추가됨.

RAC은 총 소유 비용 절감? 단일 서버, 최소 고 가용성 기능 가상 시나리오 ACME ERP 시스템 10,000 동시 사용자 지원 시스템은 총 8-CPU와 16GB RAM을 필요로 함

RAC은 총 소유 비용 절감? 고 가용성 장애 조치 클러스터 ( SQL Server 2000과 같이 ) 동일한 ACME ERP 시스템 10,000 명의 동시 사용자 지원 시스템은 총 8-CPU와 16GB RAM 을 필요로 함 장애 조치 클러스터링 중복 저장소 기능 보유 각각의 노드는 노드 오류가 발생하는 경우 나머지 작동되는 노드가 전체 부하를 제어하고 아무런 문제없이 실행되도록 하기 위해 8-CPU와 16GB RAM을 보유하고 있음 8-CPU 16GB RAM 8-CPU 16GB RAM

RAC 은 총 소유 비용 절감 ? RAC 구성에 대한 잘못된 가정 동일한 ACME ERP 시스템 10,000 명의 동시 사용자 지원 시스템은 총 8-CPU와 16GB RAM 을 필요로 함 장애조치 클러스터링과 중복 저장소 기능 보유 각각의 노드는 4CPU, 8GB 보유 오류 발생시, 작동중인 노드는 과부하 상태에 이르게 되며, 10,000 명의 사용자에 대한 부하를 지원할 수 없기 때문에 약 50%의 사용자는 서비스를 받 을 수 없음 4-CPU 8GB RAM - 오류 - 4-CPU 8GB RAM - 과부하 -

RAC은 총 소유 비용 절감? RAC를 포함한, 고 가용성 클러스터를 위한 올바른 배포 동일한 ACME ERP 시스템 10,000 명의 동시 사용자 지원 시스템은 총 8-CPU와 16GB RAM 을 필요로 함 장애 조치 클러스터링과 중복 저장소 기능 보유 각각의 노드는 8CPU, 16GB 보유 오류발생시, 작동중인 노드가 모든 부하를 담당하며, 아무런 문제없이 작동함 8-CPU 16GB RAM - 오류 - 8-CPU 16GB RAM - 정상처리 -

RAC은 총 소유 비용 절감? 4CPU, 8GB 를 보유하고 있는 하나의 기계가 5,000명의 사용자를 지원 할수 있다고 할때, 10,000 명의 사용자를 지원할 수 있는 것은 아님 Oracle은 두번째 노드 추가시 85% 성능의 증가를 확보한다고 했으며, 노드의 수가 증가할수록 노드별 성능증가는 현저하게 감소 실제, 최상의 가용성을 보유하고 있는 시스템인 경우, SQL Server clustering 기술과 비교하여 추가로 필요한 구성 요소들이 있기 때문에 하드웨어, 소프트웨어, 관리비용이 증가됨 SQL Server clustering 기술보다 총소요비용 증가 (데이터베이스 소프트웨어 와 서비스비용 및 관리비용은 절대 절감되지 않음)

Clustering 구현비용 2004년 1월 Oracle, Microsoft Website에 기재된 List Price 기준( CPU기준) Oracle Standard one SQL 2000 MSDE Oracle Standard SQL Server Standard Oracle Enterprise SQL Server Enterprise All features 4,995 No cost 35,000 4,999 100,000 19,999 2-node cluster (base HA) N/A 70,000 120,000 39,998 2-node cluster HA with BI 200,000 X : Not Available V : Server 라이센스에 포함 $ : 추가비용 발생 Oracle Standard one SQL Server 2000 MSDE Oracle Standard SQL Server Standard Oracle Enterprise SQL Server Enterprise High Availability * X V $ OLAP ** Data Mining *** Reporting Services

Agenda 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약 Clustering 기술 Oracle9i RAC SQL Server Scale-Out clustering 기술 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약

64-bit Database Platform High-performance computing Windows Server 2003 64bit 에 최적화 최상의 성능 대용량 메모리 어드레싱 (up to 32 TB) 거의 무한대의 가상메모리 (up to 8 TB) 대용량 메모리 버퍼 풀 지원에 따른 I/O 가 적어짐 SQL Server 2000 32bit과 T-SQL 코드 호환가능 8 node 클러스터링 지원 32-bit 과 같은 데이터 format을 사용함으로 마이그레이션 쉬움 RDBMS and BI 모두 64bit 지원 고가의 Unix 솔루션을 위한 대안 Scalability Manageability Cost Savings

Scale-Up 서버 확장 4 8 32 64 (64-bit) 4 GB 32 GB (32-bit) 64 GB (64-bit) Windows Server 2003 Standard Edition (32-bit only) Windows Server 2003 Enterprise Edition (32/64) Windows Server 2003 Datacenter Edition (32/64) Processor Support 4 8 32 64 (64-bit) Memory Support 4 GB 32 GB (32-bit) 64 GB (64-bit) 64 GB (32-bit) 512 GB (64-bit) Failover HA Clustering N/A 8-Node

Agenda 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약 Clustering 기술 Oracle9i RAC SQL Server Scale-Out clustering 기술 가용성 및 확장성 비교 구현 비용 및 총 소유비용 비교 SQL Server Scale-Up 솔루션 요약

요약 SQL Server는 TPC-C, TPC-W, SAP, Onyx등과 같은 각종 업계 벤치마크에서 선두적인 입지를 차지하고 있음 SQL Server는 높은 성능과 안정성을 필요로 하는 사용자를 위해 최상의 총 소유 비용을 제공함 SQL Server는 최상의 가격대비 성능을 제공 SQL Server는 지능적이고 자동화된 리소스 관리 기능을 제공함으로써, 관리부담도 줄여줌

© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.