DB지식 테스트

DataBase 2007. 9. 4. 13:43

http://www.dbguide.net/research/research_2007/sqlserver_problem.jsp

1) 이름 :

2) 회사명 :

3) 주소 :

4) 핸드폰 :

5) 이메일 :

6) 응답하시는 분의 IT 분야 총 경력은 만 몇 년 입니까?
개월

7) 응답하시는 분의 SQL 서버 분야 경력은 만 몇 년 입니까?
개월

8) 응답하시는 분의 타DBMS(SQL Server경력 제외) 경력은 만 몇 년 입니까?
개월

1 번

다음 구문에서 오류가 발생 되는 쿼리는?

SELECT type, SUM(price) as sum_price
FROM dbo.titles
GROUP BY type
HAVING sum_price IS NOT NULL
SELECT *
FROM dbo.titles t, dbo.pub_info p
WHERE t.pub_id = p.pub_id
SELECT case
when type = 'business' then '업무용' else '비업무용' end as type,
count(*) as 수량
FROM dbo.titles
GROUP BY type
SELECT ISNULL(Country, '합계') AS Country, qty
FROM( SELECT Country, COUNT(*) AS qty
FROM dbo.Customers
GROUP BY Country WITH ROLLUP
) AS inTable

2 번

단일 프로세서가 장착된 서버를 업그레이드 하여 4 CPU 서버로 확장하였다. 현재 다음과 같은 서버 구성 옵션이 설정된 상태이다. 어떤 옵션을 변경해야 필요한 경우 병렬처리 계획을 통해 쿼리를 좀 더 빠르게 수행할 수 있을까?

Query Cost Governer Limit을 32767로 변경
Affinity Mask 옵션을 1로 변경
Max Degree of Parallelism 옵션을 4로 변경
Cost threshold for parallelism 옵션을 10으로 변경

3 번

FULL OUTER JOIN의 결과집합을 설명한 것 중 옳은 것은?

ON 절에 지정된 칼럼을 기준으로 양쪽 테이블의 모든 행의 조합을 반환
JOIN 조건에 일치하지 않는 행의 칼럼 값을 NULL로 치환한 상태로, 양쪽 테이블의 모든 행을 반환
양쪽 테이블의 모든 행과 모든 칼럼을 반환
SQL Server 에서는 사용할 수 없는 JOIN 구문

4 번

sqlplan 확장자 파일에 대한 설명으로 옳은 것은?

SQL Server 2005 Upgrade Assistant 결과물 파일
병합 복제 추적 파일
쿼리 실행 계획 파일(XML 형식)
용할 수 없는 확장자

5 번

다음 중 SQL Server 2005에서 온라인으로 수행할 수 있는 인덱스 관리 작업은?

ALTER INDEX … WITH REBULID
ALTER INDEX … WITH REORGANIZE
A와 B를 모두 온라인으로 수행가능
A와 B 모두 온라인으로 수행 불가능

6 번

아래 표현은 관계형 데이터 모델에 적용되는 정규화 단계를 설명한다. 어떤 정규화 단계에 해당하는지 고르시오.

"모든 키가 아닌 칼럼은 기본 키 전체에 의존적이어야 한다. 기본 키의 일부분에 의존적이어서는 안 된다.

1차 정규화
2차 정규화
3차 정규화
BCNF

7 번

다음 중 데이터 무결성의 종류에 해당하지 않는 것을 고르시오.

엔터티 무결성
참조 무결성
도메인 무결성
연결 무결성

8 번

다음 중 Nonclustered Index를 사용한 쿼리의 성능을 결정짓는 가장 중요한 항목에 해당하는 것을 고르시오. (참고. SQL Server 2000 기준 용어 사용)

인덱스 구성 수준
책갈피 조회(Bookmark Lookup)
인덱스 키 칼럼 수
최적화기(Optimizer)

9 번

다음 중 Non-SARG에 해당되지 않는 것은?

WHERE co11 + 1 = 100
WHERE LEFT(col2, 1) = '1'
WHERE col3 LIKE 'A%'
WHERE col1 = col2

10 번

NESTED LOOP 물리적 연산자를 사용해서 실행되는 조인의 최적 성능을 위해서 기본적으로 필요한 두 가지 요구 사항을 잘 나열한 것은?

적은 행을 반환하는 외부(선행) 입력, 인덱스 검색이 가능한 내부(후행) 입력
인덱스 검색이 가능한 내부(후행) 입력, 인덱스 스캔을 수행하는 외부(선행) 입력
인덱스 스캔을 수행하는 외부(선행) 입력, 적은 행을 반환하는 외부(선행) 입력
정렬된 출력을 가지는 내부(후행) 입력, 인덱스 스캔을 수행하는 외부(선행) 입력

11 번

트랜잭션(Transaction)이 갖추어야 할 기본 속성에 해당하지 않는 것은?

원자성(atomicity)
일관성(consistency)
고립성(isolation)
결정성(determination)

12 번

다음 T-SQL 구문중에 SQL Server 2005에서 실행되지 않는 구문은?

SELECT * FROM t1, t2 WHERE t1.col1 *= t2.col2
SELECT col1+col2 AS newCol FROM t1 ORDER BY newCol
DECLARE @i INT; SET @i = 10; SELECT TOP(@i) * FROM t1
DELETE TOP(5) FROM t1

13 번

DBCC SQLPERF(waitstats) 명령을 실했을 때 CXPACKET 항목의 비율이 가장 높게 나왔다. 점검해봐야 할 부분의 하나라고 생각되는 것은?

Network
Disk
Parallel Process
Memory

14 번

저장 프로시저(Stored Procedure)의 정의(해당 개체를 생성한 스크립트)를 표시하고자 할 때 사용할 수 있는 구문은?

sp_helpfile
sp_helptext
sp_helpscript
sp_procoption

15 번

다음과 같은 분할된 테이블(Partitioned Table)이 있다.

CREATE PARTITION FUNCTION UserInfoPF (INT)
AS RANGE RIGHT FOR VALUES (1000, 2000, 3000)
GO
CREATE PARTITION SCHEME UserInfoPS
AS PARTITION UserInfoPF TO (Fgroup1, Fgroup2, Fgroup3, Fgroup4)
GO
CREATE TABLE UserInfo
( UNumber INT NOT NULL PRIMARY KEY,
UName VARCHAR(50) NOT NULL,
Age TINYINT NOT NULL
) ON UserInfoPS (UNumber);
GO

여기서 다음의 INSERT 쿼리를 실행하여 추가되는 행은 어느 파일 그룹에 저장될까?
INSERT INTO UserInfo VALUES(2000, '홍길동', 28)

Fgroup1
Fgroup2
Fgroup3
Fgroup4

16 번

다음 성능카운터 중 값이 높을 수록 좋은 것은?

MSSQLSERVER\Access Methods: Forwarded Records/sec
MSSQLSERVER\Access Methods: Full Scans/sec
MSSQLSERVER\Access Methods: Index Searches/sec
위의 1)과 3)

17 번

다음 성능카운터 중 메모리와 관계 없는 것은?

Page Faults/Sec
Buffer cache hit ratio
Page life expectancy
1), 2), 3) 모두 메모리와 관련 있는 성능카운터이다

18 번

다음의 물리적 장치 중 가장 I/O 속도가 낮은 장치는?

CPU
Memory
Disk
Cache Memory

19 번

다음 중 백업, 복원에 대한 이야기 중 틀린 것은?

트랜잭션 로그 복원은 전체 백업 파일을 복원 후, 가장 마지막 트랜잭션 로그 백업부분을 복원하면 된다.
단순복구 모델은 개발서버 또는 테스트 서버에서 사용이 권장된다.
전체복구 모델에서만 STOPAT옵션을 이용하여 특정 시점 복원이 가능하다.
SQL Server 2005에서는 미러(mirror) 백업 및 복사 백업이 추가 되었다.

20 번

다음 중 맞는 이야기는?

하드웨어의 증설이 가격 대비 성능 향상이 가장 높다.
읽기 수에 비해서 응답시간이 오래 걸리는 쿼리는 recompile 문제로 일어 난다.
Tempdb file의 개수는 CPU의 개수와 연관성이 없다.
SQL Server 2005에서는 Database 생성 시, 그 크기와 관계 없이 매우 빠른 속도로 생성 된다.

21 번

다음은 SQL Server에서 사용하는 데이터 유형이다. 다음 중 사용 공간의 크기가 다른 하나는?

REAL
INT
SMALLDATETIME
MONEY

22 번

현재 서비스 중인 웹서버에 이상이 발견되어 페이지가 나타나지 않고 있다. 웹 서버를 확인해 보니, CPU 사용량이 낮아서 웹서버에는 문제가 없어 보인다. SQL Server 서버의 작업 관리자를 보니 CPU가 10% 이하로 낮게 나타나고 있다 (평상시 CPU 사용량은 60~70%를 유지한다.). 쿼리 분석기에서 sp_lock 명령을 실행시켜 보니 아래와 같은 사항이 발견되고 있다. 현재 상황을 가장 적절하게 설명한 것은 어느 것인가?

52번 세션에서 대량 작업(BULK INSERT)이 이루어지고 있다. 해당 작업 세션을 강제 종료 시켜야 한다.
SQL Server에는 문제가 없다.
파일 증가가 발생하고 있다. 관리자에게 요청해서 현재 DB 사용량을 파악해서 비업무시간에 파일을 수동으로 증가시켜주어야 한다.
16번 DB에 이상이 생겨서 SQL Server 엔진이 자동으로 데이터를 다른 곳으로 이동시키고 있다.

23 번

우리회사에서 운영하고 있는 DB 서버에 업무 시간 중 Profiler를 이용해서 수집된 쿼리를 분석하였다. 튜닝하려는 쿼리는 여러 테이블을 JOIN을 걸어서 데이터를 가져오는 구조이다. 테이블 중에 스캔이 발생하는 실행계획을 확인하여 적절한 인덱스를 생성해 주었다. 하지만, 해당 쿼리는 해당 인덱스를 이용하지 않고, 기존의 실행계획을 계속 사용하고 있다. 새로 생성된 인덱스를 이용하여 실행계획을 구성하게 하려는 작업과 관계가 먼 것은?

해당 인덱스의 선택도가 좋은지를 다시 확인하고, 선택도가 좋은 항목이 앞에 오도록 구성한다.
SARG을 준수하고 있는지 확인하고, 인덱스를 사용할 수 있는 조건절 컬럼이 가공되지 않도록 조정한다.
인덱스 힌트를 부여해서 해당 인덱스를 이용하도록 지정한다.
출력되는 컬럼의 순서를 인덱스 컬럼의 순서에 맞도록 조정한다.

24 번

다음 중 SQL Server 서비스가 아닌 것은?

SSIS : SQL Server Integration Service
SSRS : SQL Server Reporting Service
SSNS : SQL Server Notification Service
SSAS : SQL Server Adviser Service

25 번

다음 데이터의 구조를 보고, 설계기법 중 어떤 기법을 적용해야 좋은지 선택하라.

Emp Table 의 구조 및 자료 현황이다.

사번
직원명
연봉
시급
직책
비정규직직급
입사일
고용일
1
홍길동
3000
Null
과장
Null
20040101
null
2
이순신
Null
10000
Null
선임
Null
20070228
3
김유신
Null
15000
Null
책임
Null
20060605
4
강감찬
2500
Null
대리
Null
20051231
null
5
정약용
Null
30000
Null
수석
Null
20020301

제2정규화
제3정규화
BCNF
Super Type - Sub Type
Posted by 퓨전마법사
,