새로 추가되었거나 최근에 업데이트됨: 관계형 데이터베이스 문서New and Recently Updated: Relational Databases docs

Microsoft에서는 거의 매일 Docs.Microsoft.com 설명서 웹 사이트에서 기존 문서 일부를 업데이트합니다.Nearly every day Microsoft updates some of its existing articles on its Docs.Microsoft.com documentation website. 이 문서에는 최근 업데이트된 문서에서 발췌한 내용이 표시됩니다.This article displays excerpts from recently updated articles. 새 문서로 연결되는 링크도 나열될 수 있습니다.Links to new articles might also be listed.

이 문서는 주기적으로 다시 실행되는 프로그램에 의해 생성됩니다.This article is generated by a program that is rerun periodically. 경우에 따라 발췌한 내용의 형식이 완전하지 않거나 원본 문서의 markdown으로 표시될 수 있습니다.Occasionally an excerpt can appear with imperfect formatting, or as markdown from the source article. 여기에 이미지가 표시되는 일은 없습니다.Images are never displayed here.

다음 날짜 범위 및 주제에 대한 최신 업데이트가 보고됩니다.Recent updates are reported for the following date range and subject:

  • 업데이트 날짜 범위:   2017-05-23   ~   2017-07-17Date range of updates:   2017-05-23   -to-   2017-07-17
  • 주제 영역:   관계형 데이터베이스Subject area:   Relational Databases.

 

최근에 만든 새로운 문서New Articles Created Recently

다음 링크는 최근에 추가된 새로운 문서로 이동합니다.The following links jump to new articles which have been added recently.

  1. SQL Server 2016용 SQL Server 메모리 내 OLTP 내부SQL Server In-Memory OLTP Internals for SQL Server 2016
  2. SQL 데이터베이스의 적응 쿼리 처리Adaptive query processing in SQL databases
  3. Microsoft SQL 플랫폼을 사용한 개인 정보 보호 향상 및 GDPR 요구 사항 해결 가이드Guide to enhancing privacy and addressing GDPR requirements with the Microsoft SQL platform
  4. sys.pdw_replicated_table_cache_state(Transact-SQL)sys.pdw_replicated_table_cache_state (Transact-SQL)
  5. sys.trusted_assemblies(Transact-SQL)sys.trusted_assemblies (Transact-SQL)
  6. sys.dm_exec_query_parallel_workers(Transact-SQL)sys.dm_exec_query_parallel_workers (Transact-SQL)
  7. sys.sp_add_trusted_assembly(Transact-SQL)sys.sp_add_trusted_assembly (Transact-SQL)
  8. sys.sp_drop_trusted_assembly(Transact-SQL)sys.sp_drop_trusted_assembly (Transact-SQL)

 

최근 업데이트된 문서의 간결한 목록Compact List of Articles Updated Recently

이 간결한 목록에는 인용 섹션에 나열된 업데이트된 모든 문서로 연결되는 링크가 있습니다.This compact list provides links to all the updated articles which are listed in the Excerpts section.

 

업데이트된 문서와 일부 내용Updated Articles with Excerpts

이 섹션에는 최근에 많이 업데이트된 문서에서 발췌한 업데이트 내용이 표시됩니다.This section displays the excerpts of updates gathered from articles which have recently experienced a large update.

여기에 표시된 발췌 내용은 적절한 의미 체계 맥락과 분리되어 표시됩니다.The excerpts displayed here appear separated from their proper semantic context. 때로는 실제 문서에서 이 내용 주변에 있는 중요한 markdown 구문과도 분리되어 표시됩니다.Also, sometimes an excerpt is separated from important markdown syntax that surrounds it in the actual article. 따라서 이러한 발췌 내용은 일반적인 지침을 제공하기 위한 것입니다.Therefore these excerpts are for general guidance only. 이 발췌 내용에서는 관심 내용을 클릭하여 실제 문서를 참조할 가치가 있을지 여부만 파악할 수 있습니다.The excerpts only enable you to know whether your interests warrant taking the time to click and visit the actual article.

따라서 이러한 발췌 내용에서 코드를 복사하거나 발췌 내용을 정확한 사실로 간주하지 마세요.For these and other reasons, do not copy code from these excerpts, and do not take as exact truth any text excerpt. 대신 실제 문서를 참조하세요.Instead, visit the actual article.

 

 

1.   메모리 최적화 테이블 변경1.   Altering Memory-Optimized Tables

업데이트됨: 2017-06-23          (다음)Updated: 2017-06-23           (Next)

 

메모리 최적화 테이블에 대한 ALTER TABLE 로깅Logging of ALTER TABLE on memory-optimized tables

대부분 ALTER TABLE 시나리오는 이제 병렬로 실행되고 이를 통해 트랜잭션 로그에 대한 쓰기가 최적화됩니다.On a memory-optimized table, most ALTER TABLE scenarios now run in parallel and result in an optimization of writes to the transaction log. 최적화는 메타데이터 변경 내용을 트랜잭션 로그에 기록해야만 가능합니다.The optimization is achieved by only logging the metadata changes to the transaction log. 그러나 다음 ALTER TABLE 작업은 단일 스레드를 실행하고 로그에 최적화되지 않습니다.However, the following ALTER TABLE operations run single-threaded and are not log-optimized.

이 경우 단일 스레드 작업은 변경된 테이블의 전체 내용을 트랜잭션 로그에 기록합니다.The single-threaded operation in this case would log the entire content of the altered table to the transaction log. 단일 스레드 작업 목록은 다음과 같습니다.A list of single-threaded operations follows:

  • 큰 개체(LOB) 형식인 nvarchar(max), varchar(max) 또는 varbinary(max)를 사용하도록 열을 변경하거나 추가합니다.Alter or add a column to use a large object (LOB) type: nvarchar(max), varchar(max), or varbinary(max).

  • COLUMNSTORE 인덱스를 추가하거나 삭제합니다.Add or drop a COLUMNSTORE index.

  • [off-row column--../../relational-databases/in-memory-oltp/supported-data-types-for-in-memory-oltp.md)에 영향을 주는 거의 모든 항목입니다.Almost anything that affects an [off-row column--../../relational-databases/in-memory-oltp/supported-data-types-for-in-memory-oltp.md).

    • 행 내부 열이 행 외부 열을 이동하게 합니다.Cause an on-row column to move off-row.

    • 행 외부 열이 행 내부 열을 이동하게 합니다.Cause an off-row column to move on-row.

    • 새 행 외부 열을 만듭니다.Create a new off-row column.

    • 예외: 이미 행 외부 형식인 열을 늘리면 최적화된 방식으로 기록됩니다.Exception: Lengthening an already off-row column is logged in the optimized way.

 

 


2.   메모리 최적화 테이블의 테이블 및 행 크기2.   Table and Row Size in Memory-Optimized Tables

업데이트됨: 2017-06-22          (이전 | 다음)Updated: 2017-06-22           (Previous | Next)

 

[row body size] 계산은 다음 표에서 설명합니다.The calculation of [row body size] is discussed in the following table.

행 본문 크기는 계산된 크기 및 실제 크기의 두 가지 방식으로 계산할 수 있습니다.There are two different computations for row body size: computed size and the actual size:

  • [computed row body size]로 표시되는 계산 크기는 행 크기 제한인 8,060바이트를 초과하는지 여부를 확인하기 위해 사용됩니다.The computed size, denoted with [computed row body size], is used to determine if the row size limitation of 8,060 bytes is exceeded.

  • [actual row body size]로 표시되는 실제 크기는 메모리 및 검사점 파일에서 행 본문의 실제 저장소 크기입니다.The actual size, denoted with [actual row body size], is the actual storage size of the row body in memory and in the checkpoint files.

    [computed row body size] 및 [actual row body size]는 모두 비슷하게 계산됩니다.Both [computed row body size] and [actual row body size] are calculated similarly. 유일한 차이점은 다음 표의 하단에 표시된 것처럼 (n)varchar(i) 및 varbinary(i) 열의 크기에 대한 계산입니다.The only difference is the calculation of the size of (n)varchar(i) and varbinary(i) columns, as reflected at the bottom of the following table. 계산된 행 본문 크기는 선언된 크기인 i 를 열 크기로 사용하고, 실제 행 본문 크기는 데이터의 실제 크기를 사용합니다.The computed row body size uses the declared size i as the size of the column, while the actual row body size uses the actual size of the data.

    다음 표에서는 [actual row body size] = SUM([size of shallow types]) + 2 + 2 * [number of deep type columns]와 같이 행 본문 크기의 계산에 대해 설명합니다.The following table describes the calculation of the row body size, given as [actual row body size] = SUM([size of shallow types]) + 2 + 2 * [number of deep type columns].

섹션Section 크기Size 설명Comments
단순 형식 열Shallow type columns SUM([단순 형식의 크기])SUM([size of shallow types]). 개별 형식의 바이트 크기는 다음과 같습니다.Size in bytes of the individual types is as follows:

Bit: 1Bit: 1

Tinyint: 1Tinyint: 1

Smallint: 2Smallint: 2

Int: 4Int: 4

Real: 4Real: 4

Smalldatetime: 4Smalldatetime: 4

Smallmoney: 4Smallmoney: 4

Bigint: 8Bigint: 8

Datetime: 8Datetime: 8

Datetime2: 8Datetime2: 8

Float: 8Float: 8

Money: 8Money: 8

숫자(전체 자릿수<=18): 8Numeric (precision <=18): 8

Time: 8Time: 8

숫자(전체 자릿수>18): 16Numeric(precision>18): 16

Uniqueidentifier: 16Uniqueidentifier: 16
단순 열 패딩Shallow column padding 가능한 값은Possible values are:

전체 형식 열이 있고 단순 열의 총 데이터 크기가 홀수인 경우 1입니다.1 if there are deep type columns and the total data size of the shallow columns is as odd number.

그렇지 않으면 0입니다.0 otherwise
전체 형식은 (var)binary 및 (n)(var)char 형식입니다.Deep types are the types (var)binary and (n)(var)char.

 

 


3.   마이그레이션 후 유효성 검사 및 최적화 가이드3.   Post-migration Validation and Optimization Guide

업데이트됨: 2017-06-21          (이전 | 다음)Updated: 2017-06-21           (Previous | Next)

 

다음은 [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] 플랫폼으로 마이그레이션한 후 발생하는 몇 가지 일반적인 성능 시나리오 및 해결 방법입니다.Below are some of the common performance scenarios encountered after migrating to [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] Platform and how to resolve them. 여기에는 이전 버전 [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)]에서 새 버전 [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)]로의 마이그레이션 및 Oracle, DB2, MySQL, Sybase 등의 외래 플랫폼에서 [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)]로의 마이그레이션에 특정한 시나리오가 포함됩니다.These include scenarios that are specific to [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] to [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] migration (older versions to newer versions), as well as foreign platform (such as Oracle, DB2, MySQL and Sybase) to [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] migration.

CE 버전 변경으로 인한 쿼리 회귀 Query regressions due to change in CE version

적용 대상: [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)]에서 [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)]로의 마이그레이션.Applies to: [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] to [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] migration.

이전 버전의 [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)]에서 [!INCLUDE[ssSQL14--../includes/sssql14-md.md)] 이상으로 마이그레이션하고 [database compatibility level--../relational-databases/databases/view-or-change-the-compatibility-level-of-a-database.md)을 최신 버전으로 업그레이드하는 경우 워크로드가 성능 회귀 위험에 노출될 수 있습니다.When migrating from an older versions of [!INCLUDE[ssNoVersion--../includes/ssnoversion-md.md)] to [!INCLUDE[ssSQL14--../includes/sssql14-md.md)] or newer, and upgrading the [database compatibility level--../relational-databases/databases/view-or-change-the-compatibility-level-of-a-database.md) to the latest one, a workload may be exposed to the risk of performance regression.

[!INCLUDE[ssSQL14--../includes/sssql14-md.md)]부터는 쿼리 최적화 프로그램의 모든 변경 내용이 최신 [database compatibility level--../relational-databases/databases/view-or-change-the-compatibility-level-of-a-database.md)에 연결되므로 계획이 업그레이드 시점에 즉시 변경되지 않고 사용자가 COMPATIBILITY_LEVEL 데이터베이스 옵션을 최신 상태로 변경하는 경우에 변경됩니다.This is because starting with [!INCLUDE[ssSQL14--../includes/sssql14-md.md)], all Query Optimizer changes are tied to the latest [database compatibility level--../relational-databases/databases/view-or-change-the-compatibility-level-of-a-database.md), so plans are not changed right at point of upgrade but rather when a user changes the COMPATIBILITY_LEVEL database option to the latest one. 이 기능은 쿼리 저장소와 함께 업그레이드 프로세스에서 쿼리 성능에 대한 뛰어난 제어 수준을 제공합니다.This capability, in combination with Query Store gives you a great level of control over the query performance in the upgrade process.

SQL Server 2014SQL Server 2014에 도입된 쿼리 최적화 프로그램 변경 사항에 대한 자세한 내용은 Optimizing Your Query Plans with the SQL Server 2014 Cardinality Estimator(SQL Server 2014 카디널리티 평가기로 쿼리 계획 최적화)를 참조하세요.For more information on Query Optimizer changes introduced in SQL Server 2014SQL Server 2014, see Optimizing Your Query Plans with the SQL Server 2014 Cardinality Estimator.

 

 


4.   sys.query_store_plan(Transact-SQL)4.   sys.query_store_plan (Transact-SQL)

업데이트됨: 2017-06-05           (이전)Updated: 2017-06-05           (Previous)

 

계획 강제 적용 제한 사항Plan forcing limitations

쿼리 저장소에는 쿼리 최적화 프로그램이 특정 실행 계획을 사용하도록 적용하는 메커니즘이 있습니다.Query Store has a mechanism to enforce Query Optimizer to use certain execution plan. 그러나 계획이 적용되지 않도록 하는 몇 가지 제한 사항이 있습니다.However, there are some limitations that can prevent a plan to be enforced.

첫째, 계획에 다음과 같은 구성이 포함된 경우First, if the plan contains following constructions:

  • Insert bulk 문Insert bulk statement.
  • Insert bulk 문Insert bulk statement.
  • 외부 테이블에 대한 참조Reference to an external table
  • 분산 쿼리 또는 전체 텍스트 작업Distributed query or full-text operations
  • 전역 쿼리 사용Use of Global queries
  • 커서Cursors
  • 잘못된 스타 조인 사양Invalid star join specification

둘째, 계획에 사용되는 개체를 더 이상 사용할 수 없는 경우Second, when objects that plan relies on, are no longer available:

  • 데이터베이스(계획이 발생한 데이터베이스가 더 이상 없는 경우)Database (if Database, where plan originated, does not exist anymore)
  • 인덱스(더 이상 없거나 사용할 수 없는 경우)Index (no longer there or disabled)

마지막으로, 계획 자체에 문제가 있는 경우Finally, problems with the plan itself:

  • 쿼리에 적합하지 않음Not legal for query
  • 쿼리 최적화 프로그램이 허용되는 작업 수를 초과함Query Optimizer exceeded number of allowed operations
  • 잘못 구성된 계획 XMLIncorrectly formed plan XML

 

유사한 문서Similar Articles

이 섹션에는 동일한 GitHub.com 리포지토리 내의 다른 주제 영역에서 최근에 업데이트된 문서와 유사한 문서가 나와 있습니다. MicrosoftDocs/sql-docs-pr.This section lists very similar articles for recently updated articles in other subject areas, within the same GitHub.com repository: MicrosoftDocs/sql-docs-pr.

새로 추가되었거나 최근에 업데이트된 문서가 있는 주제 영역Subject areas which do have new or recently updated articles

새로 추가되었거나 최근에 업데이트된 문서가 없는 주제 영역Subject areas which have no new or recently updated articles