ms swit 2012 - sql server 2012

53
КРУПНЕЙШАЯ ТЕХНИЧЕСКАЯ КОНФЕРЕНЦИЯ MICROSOFT В УКРАИНЕ

Upload: -

Post on 24-Jan-2015

1.067 views

Category:

Documents


4 download

DESCRIPTION

The new realise of one Microsoft flagman product is approaching – SQL Server. New realizes of SQL Server are not so often, that is why every new realise causes a splash of society activities and wide discussions. We already know the content of the new realise and the product is going through the last stages of testing before the launch. Let’s look, what new things wull bring us new SQL Server.

TRANSCRIPT

Page 1: MS Swit 2012 - SQL Server 2012

КРУПНЕЙШАЯ ТЕХНИЧЕСКАЯ КОНФЕРЕНЦИЯ MICROSOFT В УКРАИНЕ

Page 2: MS Swit 2012 - SQL Server 2012

ЖИЗНЕННЫЙ ЦИКЛ METRO STYLE ПРИЛОЖЕНИЙ

Денис Резник, Digital Cloud Technologies

Page 3: MS Swit 2012 - SQL Server 2012

• Руководитель департамента веб-разработки компании Digital Cloud Technologies

• Тренер Microsoft Innovation Center• Microsoft MVP (SQL Server)• Microsoft Certified Trainer• USSUG Lead• Блог: http://reznik.uneta.com.ua • Твиттер: @DenisReznik• Email: [email protected]

О Себе• Денис Резник

Page 4: MS Swit 2012 - SQL Server 2012

1996SQL Server 6.5

1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012

2005SQL Server 2005Unicode Support

Native XMLSQLCLR

Service BrokerIntegration Services

1993SQL Server 4.21

(NT)

1995SQL Server 6.0

1989SQL Server 1.0

(OS/2)

2000SQL Server 2000

Reporting Services

2010SQL Server 2008 R2

Data-tier AppsStreamInsight

PowerPivotMaster Data Services

2008SQL Server 2008Sparse Columns

Spatial TypesFILESTREAM

1998SQL Server 7.0

Dynamic LockingAuto-Tuning

Full-text searchReplication

Analysis Services

1991SQL Server 1.1

(OS/2)

2012SQL Server 2012

AlwaysOnColumnstore

FileTableSemantic Search

Power View

Page 5: MS Swit 2012 - SQL Server 2012

AlwaysOnОсобенности

• Переключение нескольких баз (концепция Availability Groups)

• Автоматическое переключение• Несколько копий базы• Чтение с копий• Перенаправление соединения пользователя

в случае отказа основной базы• Оптимизированный алгоритм работы

Page 6: MS Swit 2012 - SQL Server 2012

AlwaysOnМеханизм работы

Commit

Запись в локальный Log

Передача данных

Запись в log

Log

Подтверждение

Сохранено в локальном log

Запись данных в базу

Подтверждение

DBDB Log

1

2

2

3

4

5

6

7

Page 7: MS Swit 2012 - SQL Server 2012

AlwaysOn

A

A

AA

Page 8: MS Swit 2012 - SQL Server 2012

AlwaysOn

Процесс восстановления после сбоя

Avai

labi

lity

Gro

up L

iste

ner

Page 9: MS Swit 2012 - SQL Server 2012

SSMS• Новый дизайн• Поддержка нескольких мониторов• Улучшение отладчика• Code Snippets• Extended Events UI• Service Broker UI• Новая раскраска кода

Page 10: MS Swit 2012 - SQL Server 2012

SSMS

Page 11: MS Swit 2012 - SQL Server 2012

Расширение T-SQLPaging Database

Page 12: MS Swit 2012 - SQL Server 2012

Расширение T-SQLPaging (Old)

SELECT * FROM(SELECT *, ROW_NUMBER() OVER

(ORDER BY (SELECT 1))AS 'row_num'

FROM AdsORDER BY id DESC

) sWHERE s.row_num > 25

AND s.row_num <= 50

Page 13: MS Swit 2012 - SQL Server 2012

Расширение T-SQLPaging (New)

SELECT * FROM AdsORDER BY id DESC

OFFSET 25 ROWSFETCH NEXT 25 ROWS ONLY

Page 14: MS Swit 2012 - SQL Server 2012

OFFSET

Page 15: MS Swit 2012 - SQL Server 2012

Расширение T-SQLSequences

CREATE SEQUENCE dbo.MySequence    AS BIGINT    MINVALUE 1    NO MAXVALUE    START WITH 1;

SELECT NEXT VALUE FOR dbo.MySequence

Page 16: MS Swit 2012 - SQL Server 2012

Расширение T-SQLSequences

CREATE TABLE test(id INT DEFAULT NEXTVALUE FOR GlobalCounter)GO

ALTER SEQUENCE GlobalCounterTest RESTARTGO

Page 17: MS Swit 2012 - SQL Server 2012

Расширение T-SQLSequences

CREATE SEQUENCE MySequenceMINVALUE 1MAXVALUE 2CYCLE

Page 18: MS Swit 2012 - SQL Server 2012

SEQUENCES

Page 19: MS Swit 2012 - SQL Server 2012

Расширение T-SQLОператор THROW

BEGIN TRYRAISERROR(N'Hi from try!', 16, 1);END TRYBEGIN CATCHPRINT N'Hi from CATCH!';THROW;END CATCH

Page 20: MS Swit 2012 - SQL Server 2012

Расширение T-SQLRESULT SETS

CREATE PROCEDURE GetUsers…SELECT Username, Status = CASE WHEN IsActive = 1 THEN 1 ELSE 0 ENDFROM …

EXECUTE GetUsers WITH RESULT SETS(Email varchar(320), Status bit);

Page 21: MS Swit 2012 - SQL Server 2012

Новые Функции

Conversion Date and Time Logical and String Analytic

PARSE DATEFROMPARTS CHOOSE CUME_DIST

TRY_PARSE TIMEFROMPARTS IIF PERCENTILE_DIST

TRY_CONVERT DATETIMEFROMPARTS CONCAT PERCENTILE_CONT

DATETIME2FROMPARTS FORMAT PERCENT_RANK

SMALLDATETIMEFROMPARTS FIRST_VALUE

DATETIMEOFFSETFROMPARTS LAST_VALUE

EOMONTH LEAD

LAG

Page 22: MS Swit 2012 - SQL Server 2012

Оконные функции

Page 23: MS Swit 2012 - SQL Server 2012

Deprecated featuresКак определить?

SELECT * FROM sys.dm_os_performance_countersWHERE OBJECT_NAME like '%deprecated%'GO

Page 25: MS Swit 2012 - SQL Server 2012

Server CoreПоддержка

• Текущий CTP не поддерживает установку на Server Core

Page 26: MS Swit 2012 - SQL Server 2012

System Center AdvisorВеб-портал

Page 27: MS Swit 2012 - SQL Server 2012

System Center AdvisorОповещения

Page 28: MS Swit 2012 - SQL Server 2012

SQL Server Developer ToolsDatabase

Development Tools

SQL Server Object

Explorer

SQL Static Code Analysis

Database Publishing

SQL Language Services

Buffered Declarative

Editing

Table Designer

Schema Comparison

Isolated Local Database Runtime

SQL/CLR SQL Debugging

Page 29: MS Swit 2012 - SQL Server 2012

Distributed Replay Utility

…Controller

Multiple Replay Clients

SQL Server

Trace

File

Preprocess

Replay

IR file

IR fileIR fileIR fileIR file

Batch Request

Batch Request

Batch Request

Batch Request

User

1

2

Page 30: MS Swit 2012 - SQL Server 2012

Extended Events

• Высокопроизводительный механизм сбора информации о событиях внутри Database Engine.

• В SQL Server 2012 кол-во Extended Events увеличено с 254 до 449

• Количество событий примерно равно количеству объектов SQL Trace

Page 31: MS Swit 2012 - SQL Server 2012

Contained Databases• Contained база данных содержит в себе все

данные, необходимые для работы приложения

• Абстрагируемся от объектов сервера• Contained database

– Login– Agent jobs– Linked servers– Custom error messages– System configuration

Page 32: MS Swit 2012 - SQL Server 2012

Contained DatabasesЗапрос на соединен

иеС

конкретной бд

Серверная аутентификаци

я

Нет

Нет БД является

CDB

Тип аутентиф

икации

SQL Server аутентификация

Windows аутентификация

Page 33: MS Swit 2012 - SQL Server 2012

В базе есть Contained

пользователь с таким

именем

Пароль совпадае

тЕсть права

на соединение

с базойСерверная

аутентификация

Нет

SQL Server аутентификация

ДаОшибка

аутентификации

Нет

Да

Аутентификация на уровне БД

Нет

Да

Page 34: MS Swit 2012 - SQL Server 2012

В базе есть Contained Windows

пользователь с таким именем Есть права

на соединение

с базойСерверная

аутентификация

Нет

Windowsаутентификация

Да

Ошибка аутентификаци

и

Нет

Да

Аутентификация на уровне БД

Нет

Да

Соответствие логину или

группе Windows

Page 35: MS Swit 2012 - SQL Server 2012

Contained DatabasesСоздание базы и пользователя

CREATE DATABASE MyDatabase CONTAINMENT = PARTIALGO

CREATE USER MyUserWITH PASSWORD = 'test'GO

Page 36: MS Swit 2012 - SQL Server 2012

Performance Dashboard Reports

• Просмотр состояния системы на текущий момент

• Анализируются DMV• Видим показатели, влияющие не скорость

работы

Page 37: MS Swit 2012 - SQL Server 2012
Page 38: MS Swit 2012 - SQL Server 2012

Spatial Data

• Поддержка обоих полушарий

• Улучшение производительности Spatial запросов

• Поддержка новых объектов и операций

Page 39: MS Swit 2012 - SQL Server 2012

Columnstore Indexes• Идеально подходит

для DW запросов (схема Звезда)

• Скорость возрастает от 10 до 100 раз

Page 40: MS Swit 2012 - SQL Server 2012

Columnstore Indexes• Новый вид Хранилища данных• Новый способ исполнения запроса

Page 41: MS Swit 2012 - SQL Server 2012

Column vs. Row StoreRow Store (Heap / B-Tree)

ProductID OrderDate Cost

310 20010701 2171.29

311 20010701 1912.15

312 20010702 2171.29

313 20010702 413.14

Column Store

data page1000

ProductID OrderDate Cost

314 20010701 333.42

315 20010701 1295.00

316 20010702 4233.14

317 20010702 641.22

data page1001

ProductID

310

311

312

313

314

315

316

317

318

319

320

321

data page2001

OrderDate

20010701

20010702

20010703

20010704

data page2000

data page2002

Cost

2171.29

1912.15

2171.29

413.14

333.42

1295.00

4233.14

641.22

24.95

64.32

1111.25

Page 42: MS Swit 2012 - SQL Server 2012

Columnstore IndexesНедостатки

• Нельзя напрямую обновить таблицу содержащую колоночный индекс

Page 43: MS Swit 2012 - SQL Server 2012

Колоночные индексы

Page 44: MS Swit 2012 - SQL Server 2012

FileTable

• Строка таблицы соответствует файлу или директории на жёстком диске

• Схема таблицы строго определена• Содержит столбец типа

FILESTREAM• Двусторонняя связь

Page 45: MS Swit 2012 - SQL Server 2012

FileTable

CREATE TABLE DocumentStore AS FileTable WITH FileTable_Directory Document FILESTREAM_ON FILESTREAMGroup1;GO

Page 46: MS Swit 2012 - SQL Server 2012

Full-Text Search

• Поиск по свойствам Office 2007+ документов

• Настраиваемый предикат NEAR• Semantic Search

Page 47: MS Swit 2012 - SQL Server 2012

Semantic Search

• Ключевые фразы• Похожие документы• Почему документы похожи?

Page 48: MS Swit 2012 - SQL Server 2012

Semantic Search

Key Title Document

D1 Annual Budget …

D2 Corporate Earnings …

D3 Marketing Reports …

… … …

------------------------------------------------------------

----------------------------------------------------------------------

----------

------------------------------------------------------------

----------

Source Table

ID Keyword Colid … compDocid CompOc CompPid

K1 revenue 1 … 10,23,123 (1,4),(5,8),(1,34) 2,5,6,8,4,3

K2 growth 1 … 10,23,123 (1,5),(5,9),(1,34) 2,5,6,8,5,4

… … … … … …

Keyword Index (Full-Text)

Keyphrases KeyphraseDocumentsID DocID

T1 (revenue) D1 (Annual Budget)

T2 (growth) D2 (Corporate Earnings)

T3 (Windows) D3 (Marketing Reports)

… …

T1 (revenue) D7 (Finance Report)

… …

T3 (Windows) D11 (Azure Strategy)

T4 (Azure) D11 (Azure Strategy)

ID Keyword

T1 revenue

T2 growth

T3 Windows

T4 Azure

… …

DocumentSimilarityDocID MatchedDocID

D1 (Annual Budget) D2 (Corporate Earnings)

D1 (Annual Budget) D7 (Finance Report)

D3 (Marketing Reports) D11 (Azure Strategy)

… …

Full-Text and Semantic Processing

quarter, record, revenue…

2b

3

2 a1

+ Language Models 3

Page 49: MS Swit 2012 - SQL Server 2012

Filetable + Semantic search

Page 50: MS Swit 2012 - SQL Server 2012

Summary

• SQL Server 2012 RTM• AlwaysOn• Columnstore Indexes

• Windowing Functions• FileTable• Semantic Search

Page 51: MS Swit 2012 - SQL Server 2012

Полезные ссылки

• SQL Server 2012 RTM• What's New in SQL Server 2012• Sqlserverlaunch.com• Understanding Contained Databases• SQL Server AlwaysOn Team Blog• Columnstore Indexes Whitepaper

Page 52: MS Swit 2012 - SQL Server 2012

СПАСИБО!

Page 53: MS Swit 2012 - SQL Server 2012

КРУПНЕЙШАЯ ТЕХНИЧЕСКАЯ КОНФЕРЕНЦИЯ MICROSOFT В УКРАИНЕ