ms swit 2012 - sql server 2012
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
КРУПНЕЙШАЯ ТЕХНИЧЕСКАЯ КОНФЕРЕНЦИЯ MICROSOFT В УКРАИНЕ
ЖИЗНЕННЫЙ ЦИКЛ METRO STYLE ПРИЛОЖЕНИЙ
Денис Резник, Digital Cloud Technologies
• Руководитель департамента веб-разработки компании Digital Cloud Technologies
• Тренер Microsoft Innovation Center• Microsoft MVP (SQL Server)• Microsoft Certified Trainer• USSUG Lead• Блог: http://reznik.uneta.com.ua • Твиттер: @DenisReznik• Email: [email protected]
О Себе• Денис Резник
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
AlwaysOnОсобенности
• Переключение нескольких баз (концепция Availability Groups)
• Автоматическое переключение• Несколько копий базы• Чтение с копий• Перенаправление соединения пользователя
в случае отказа основной базы• Оптимизированный алгоритм работы
AlwaysOnМеханизм работы
Commit
Запись в локальный Log
Передача данных
Запись в log
Log
Подтверждение
Сохранено в локальном log
Запись данных в базу
Подтверждение
DBDB Log
1
2
2
3
4
5
6
7
AlwaysOn
A
A
AA
AlwaysOn
Процесс восстановления после сбоя
Avai
labi
lity
Gro
up L
iste
ner
SSMS• Новый дизайн• Поддержка нескольких мониторов• Улучшение отладчика• Code Snippets• Extended Events UI• Service Broker UI• Новая раскраска кода
SSMS
Расширение T-SQLPaging Database
Расширение 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
Расширение T-SQLPaging (New)
SELECT * FROM AdsORDER BY id DESC
OFFSET 25 ROWSFETCH NEXT 25 ROWS ONLY
OFFSET
Расширение T-SQLSequences
CREATE SEQUENCE dbo.MySequence AS BIGINT MINVALUE 1 NO MAXVALUE START WITH 1;
SELECT NEXT VALUE FOR dbo.MySequence
Расширение T-SQLSequences
CREATE TABLE test(id INT DEFAULT NEXTVALUE FOR GlobalCounter)GO
ALTER SEQUENCE GlobalCounterTest RESTARTGO
Расширение T-SQLSequences
CREATE SEQUENCE MySequenceMINVALUE 1MAXVALUE 2CYCLE
SEQUENCES
Расширение T-SQLОператор THROW
BEGIN TRYRAISERROR(N'Hi from try!', 16, 1);END TRYBEGIN CATCHPRINT N'Hi from CATCH!';THROW;END CATCH
Расширение 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);
Новые Функции
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
Оконные функции
Deprecated featuresКак определить?
SELECT * FROM sys.dm_os_performance_countersWHERE OBJECT_NAME like '%deprecated%'GO
Deprecated features
Server CoreПоддержка
• Текущий CTP не поддерживает установку на Server Core
System Center AdvisorВеб-портал
System Center AdvisorОповещения
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
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
Extended Events
• Высокопроизводительный механизм сбора информации о событиях внутри Database Engine.
• В SQL Server 2012 кол-во Extended Events увеличено с 254 до 449
• Количество событий примерно равно количеству объектов SQL Trace
Contained Databases• Contained база данных содержит в себе все
данные, необходимые для работы приложения
• Абстрагируемся от объектов сервера• Contained database
– Login– Agent jobs– Linked servers– Custom error messages– System configuration
Contained DatabasesЗапрос на соединен
иеС
конкретной бд
Серверная аутентификаци
я
Нет
Нет БД является
CDB
Тип аутентиф
икации
SQL Server аутентификация
Windows аутентификация
В базе есть Contained
пользователь с таким
именем
Пароль совпадае
тЕсть права
на соединение
с базойСерверная
аутентификация
Нет
SQL Server аутентификация
ДаОшибка
аутентификации
Нет
Да
Аутентификация на уровне БД
Нет
Да
В базе есть Contained Windows
пользователь с таким именем Есть права
на соединение
с базойСерверная
аутентификация
Нет
Windowsаутентификация
Да
Ошибка аутентификаци
и
Нет
Да
Аутентификация на уровне БД
Нет
Да
Соответствие логину или
группе Windows
Contained DatabasesСоздание базы и пользователя
CREATE DATABASE MyDatabase CONTAINMENT = PARTIALGO
CREATE USER MyUserWITH PASSWORD = 'test'GO
Performance Dashboard Reports
• Просмотр состояния системы на текущий момент
• Анализируются DMV• Видим показатели, влияющие не скорость
работы
Spatial Data
• Поддержка обоих полушарий
• Улучшение производительности Spatial запросов
• Поддержка новых объектов и операций
Columnstore Indexes• Идеально подходит
для DW запросов (схема Звезда)
• Скорость возрастает от 10 до 100 раз
Columnstore Indexes• Новый вид Хранилища данных• Новый способ исполнения запроса
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
Columnstore IndexesНедостатки
• Нельзя напрямую обновить таблицу содержащую колоночный индекс
Колоночные индексы
FileTable
• Строка таблицы соответствует файлу или директории на жёстком диске
• Схема таблицы строго определена• Содержит столбец типа
FILESTREAM• Двусторонняя связь
FileTable
CREATE TABLE DocumentStore AS FileTable WITH FileTable_Directory Document FILESTREAM_ON FILESTREAMGroup1;GO
Full-Text Search
• Поиск по свойствам Office 2007+ документов
• Настраиваемый предикат NEAR• Semantic Search
Semantic Search
• Ключевые фразы• Похожие документы• Почему документы похожи?
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
Filetable + Semantic search
Summary
• SQL Server 2012 RTM• AlwaysOn• Columnstore Indexes
• Windowing Functions• FileTable• Semantic Search
Полезные ссылки
• SQL Server 2012 RTM• What's New in SQL Server 2012• Sqlserverlaunch.com• Understanding Contained Databases• SQL Server AlwaysOn Team Blog• Columnstore Indexes Whitepaper
СПАСИБО!
КРУПНЕЙШАЯ ТЕХНИЧЕСКАЯ КОНФЕРЕНЦИЯ MICROSOFT В УКРАИНЕ