{"id":110,"date":"2015-05-21T03:37:42","date_gmt":"2015-05-21T03:37:42","guid":{"rendered":"http:\/\/www.tiagoneves.net\/blog\/?p=110"},"modified":"2018-07-13T15:44:14","modified_gmt":"2018-07-13T15:44:14","slug":"microsoft-anuncia-o-sql-server-2016-parte-1","status":"publish","type":"post","link":"https:\/\/www.tiagoneves.net\/blog\/microsoft-anuncia-o-sql-server-2016-parte-1\/","title":{"rendered":"Microsoft anuncia o SQL Server 2016 &#8211; Parte 1"},"content":{"rendered":"<p><a href=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/sql-server-vnext.jpg\" rel=\"lightbox[110]\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-112 \" src=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/sql-server-vnext-e1432175774977.jpg?resize=429%2C137\" alt=\"sql-server-vnext\" width=\"429\" height=\"137\" srcset=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/sql-server-vnext-e1432175774977.jpg?w=548&amp;ssl=1 548w, https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/sql-server-vnext-e1432175774977.jpg?resize=300%2C96&amp;ssl=1 300w\" sizes=\"auto, (max-width: 429px) 100vw, 429px\" \/><\/a><\/p>\n<p>Fala pessoal tudo certo?<\/p>\n<p>Estou estudando como fazer a migra\u00e7\u00e3o do ambiente da empresa que trabalho para o SQL Server 2014, por ser uma institui\u00e7\u00e3o financeira o ambiente \u00e9 extremamente cr\u00edtico, o planejamento tem que ser elaborado levando em conta os m\u00ednimos detalhes, ainda nem terminei esse planejamento e no \u00faltimo dia 06 de maio vejo a not\u00edcia <strong>\u201cPreview do SQL Server 2016 \u00e9 anunciado\u201d <\/strong>em alguns blogs que eu sigo. Como que pode o SQL Server 2014 saiu do forno agora e j\u00e1 aparece o SQL Server 2016? e cheio de novidades e melhorias das features que foram lan\u00e7adas no SQL Server 2012 e 2014, como s\u00e3o muitas novidades vou dividir em posts separados.<\/p>\n<p>Vamos come\u00e7ar pelas features Always Encrypted, Stretch Database e a melhoria do OLTP In-Memory.<\/p>\n<p><strong>Always Encrypted<\/strong><\/p>\n<p>O SQL Server que j\u00e1 era considerado um dos bancos mais seguros do mundo segundo o National Institute of Standards and Technology Comprehensive Vulnerability Database (<a href=\"http:\/\/blogs.technet.com\/b\/cansql\/archive\/2013\/11\/19\/what-is-the-most-secure-database.aspx\">http:\/\/blogs.technet.com\/b\/cansql\/archive\/2013\/11\/19\/what-is-the-most-secure-database.aspx<\/a>), recebeu melhorias tornando-se ainda mais seguro.<\/p>\n<p>Foi implementado uma nova feature de seguran\u00e7a chamada <strong>Always Encrypted, <\/strong>que consiste em proteger os dados em repouso ou em movimento. A partir da vers\u00e3o 2008, a Microsoft implementou o recurso TDE (transparent data encryption), que criptografa os arquivos de dados das databases. Esse recurso inviabiliza o risco dos dados dessas databases serem acessadas por pessoas n\u00e3o autorizadas, em caso de c\u00f3pia dos arquivos de dados ou backup dos mesmos, por\u00e9m ele n\u00e3o criptografa a comunica\u00e7\u00e3o entre aplica\u00e7\u00e3o e a database. O recurso Always Encrypted vem para resolver esse gap, com o recurso a comunica\u00e7\u00e3o \u00e9 feita de forma criptografada, e a chave criptogr\u00e1fica fica armazenada na aplica\u00e7\u00e3o, ao inv\u00e9s de ficar na database.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/19.jpg\" rel=\"lightbox[110]\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-111\" src=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/19.jpg?resize=319%2C354\" alt=\"1\" width=\"319\" height=\"354\" srcset=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/19.jpg?w=319&amp;ssl=1 319w, https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/19.jpg?resize=270%2C300&amp;ssl=1 270w\" sizes=\"auto, (max-width: 319px) 100vw, 319px\" \/><\/a><\/p>\n<p><strong>Stretch Database<\/strong><\/p>\n<p>Espa\u00e7o em disco \u00e9 algo caro, cada dia temos mais e mais informa\u00e7\u00f5es para serem armazenadas e o grande desafio \u00e9 onde armazenar todas essas informa\u00e7\u00f5es? Pensando nisso a Microsoft implementou o conceito de <strong>Stretch Database <\/strong>que visa dar escalabilidade aos dados, agora podemos segmentar os dados para o Azure, uma tabela que possui dados hist\u00f3rico, podemos deixa-la h\u00edbrida com os dados mais recentes na infraestrutura local e os dados hist\u00f3rico no Azure. Utilizando em conjunto com a feature Always Encrypted podemos manter a seguran\u00e7a dos dados.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/22.jpg\" rel=\"lightbox[110]\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-113\" src=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/22.jpg?resize=321%2C359\" alt=\"2\" width=\"321\" height=\"359\" srcset=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/22.jpg?w=321&amp;ssl=1 321w, https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/22.jpg?resize=268%2C300&amp;ssl=1 268w\" sizes=\"auto, (max-width: 321px) 100vw, 321px\" \/><\/a><\/p>\n<p><strong>OLTP In-Memory<\/strong><\/p>\n<p>Uma das grandes melhorias sem d\u00favida est\u00e1 no In-Memory, alguns gap\u2019s que existiam foram solucionados, al\u00e9m da capacidade de utilizar o ColumnStore na mem\u00f3ria e entregar consultas at\u00e9 100X mais r\u00e1pidas com OLTP In-Memory.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/32.jpg\" rel=\"lightbox[110]\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-120\" src=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/32.jpg?resize=358%2C218\" alt=\"3\" width=\"358\" height=\"218\" srcset=\"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/32.jpg?w=358&amp;ssl=1 358w, https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2015\/05\/32.jpg?resize=300%2C183&amp;ssl=1 300w\" sizes=\"auto, (max-width: 358px) 100vw, 358px\" \/><\/a><\/p>\n<p>Algumas melhorias que ser\u00e3o aplicadas:<\/p>\n\n<table id=\"tablepress-1\" class=\"tablepress tablepress-id-1\">\n<thead>\n<tr class=\"row-1\">\n\t<th class=\"column-1\"><strong>Feature\/Limit<\/strong><\/th><th class=\"column-2\"><strong>SQL Server 2014<\/strong><\/th><th class=\"column-3\"><strong>SQL Server 2016<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody class=\"row-striping row-hover\">\n<tr class=\"row-2\">\n\t<td class=\"column-1\">Maximum size of durable table<\/td><td class=\"column-2\">256 GB<\/td><td class=\"column-3\">2 TB<\/td>\n<\/tr>\n<tr class=\"row-3\">\n\t<td class=\"column-1\">LOB (varbinary(max), [n]varchar(max))<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported*<\/td>\n<\/tr>\n<tr class=\"row-4\">\n\t<td class=\"column-1\">Transparent Data Encryption (TDE)<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-5\">\n\t<td class=\"column-1\">Offline Checkpoint Threads<\/td><td class=\"column-2\">1<\/td><td class=\"column-3\">1 per container<\/td>\n<\/tr>\n<tr class=\"row-6\">\n\t<td class=\"column-1\">ALTER PROCEDURE \/ sp_recompile<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported (fully online)<\/td>\n<\/tr>\n<tr class=\"row-7\">\n\t<td class=\"column-1\">Nested native procedure calls<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-8\">\n\t<td class=\"column-1\">Natively-compiled scalar UDFs<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-9\">\n\t<td class=\"column-1\">ALTER TABLE<\/td><td class=\"column-2\">Not supported<br \/>\n(DROP \/ re-CREATE)<br \/>\n<\/td><td class=\"column-3\">Partially supported<br \/>\n(offline \u2013 details below)<br \/>\n<\/td>\n<\/tr>\n<tr class=\"row-10\">\n\t<td class=\"column-1\">DML triggers<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Partially supported<br \/>\n(AFTER, natively compiled)<br \/>\n<\/td>\n<\/tr>\n<tr class=\"row-11\">\n\t<td class=\"column-1\">Indexes on NULLable columns<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Partially supported<br \/>\n(AFTER, natively compiled)<\/td>\n<\/tr>\n<tr class=\"row-12\">\n\t<td class=\"column-1\">Non-BIN2 collations in index key columns<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-13\">\n\t<td class=\"column-1\">Non-Latin codepages for [var]char columns<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-14\">\n\t<td class=\"column-1\">Non-BIN2 comparison \/ sorting in native modules<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-15\">\n\t<td class=\"column-1\">Foreign Keys<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-16\">\n\t<td class=\"column-1\">Check\/Unique Constraints<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-17\">\n\t<td class=\"column-1\">Parallelism<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-18\">\n\t<td class=\"column-1\">OUTER JOIN, OR, NOT, UNION [ALL], DISTINCT, EXISTS, IN<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-19\">\n\t<td class=\"column-1\">Multiple Active Result Sets (MARS)<br \/>\n(Means better Entity Framework support.)<br \/>\n<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<tr class=\"row-20\">\n\t<td class=\"column-1\">SSMS Table Designer<\/td><td class=\"column-2\">Not supported<\/td><td class=\"column-3\">Supported<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<!-- #tablepress-1 from cache -->\n<p><a href=\"http:\/\/sqlperformance.com\/2015\/05\/sql-server-2016\/in-memory-oltp-enhancements\">http:\/\/sqlperformance.com\/2015\/05\/sql-server-2016\/in-memory-oltp-enhancements<\/a>.<\/p>\n<p>Agora \u00e9 voltar para a prancheta fazer um bom planejamento da migra\u00e7\u00e3o para o SQL Server 2014 j\u00e1 pensando na pr\u00f3xima.<\/p>\n<p>Por hoje \u00e9 s\u00f3 e at\u00e9 o pr\u00f3ximo post sobre as novidades do SQL Server 2016.<\/p>\n<p><span class=\"ocultar\">\u00a0<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fala pessoal tudo certo? Estou estudando como fazer a migra\u00e7\u00e3o do ambiente da empresa que trabalho para o SQL Server 2014, por ser uma institui\u00e7\u00e3o financeira o ambiente \u00e9 extremamente cr\u00edtico, o planejamento tem que ser elaborado levando em conta os m\u00ednimos detalhes, ainda nem terminei esse planejamento e no \u00faltimo dia 06 de maio [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rop_custom_images_group":[],"rop_custom_messages_group":[],"rop_publish_now":"initial","rop_publish_now_accounts":{"twitter_91251433_91251433":""},"rop_publish_now_history":[],"rop_publish_now_status":"pending","_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpscppro_dont_share_socialmedia":false,"_wpscppro_custom_social_share_image":0,"_facebook_share_type":"","_twitter_share_type":"","_linkedin_share_type":"","_pinterest_share_type":"","_linkedin_share_type_page":"","_instagram_share_type":"","_medium_share_type":"","_threads_share_type":"","_google_business_share_type":"","_selected_social_profile":[],"_wpsp_enable_custom_social_template":false,"_wpsp_social_scheduling":{"enabled":false,"datetime":null,"platforms":[],"status":"template_only","dateOption":"today","timeOption":"now","customDays":"","customHours":"","customDate":"","customTime":"","schedulingType":"absolute"},"_wpsp_active_default_template":true},"categories":[44],"tags":[27,14,28],"class_list":["post-110","post","type-post","status-publish","format-standard","hentry","category-microsoft","tag-sql-server-2016","tag-sqlserver","tag-sqlserver2016"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p6eIyh-1M","jetpack-related-posts":[{"id":2414,"url":"https:\/\/www.tiagoneves.net\/blog\/sql-server-2016-esta-chegando-ao-fim-do-suporte-o-que-isso-significa-na-pratica\/","url_meta":{"origin":110,"position":0},"title":"SQL Server 2016 est\u00e1 chegando ao fim do suporte: o que isso significa na pr\u00e1tica?","author":"tiagoneves","date":"27 de abril de 2026","format":false,"excerpt":"O SQL Server 2016 ter\u00e1 seu suporte estendido encerrado em 14 de julho de 2026, o que resultar\u00e1 na falta de atualiza\u00e7\u00f5es de seguran\u00e7a e suporte. Continuar usando essa vers\u00e3o traz riscos como vulnerabilidades e n\u00e3o conformidade regulat\u00f3ria. Planejar a migra\u00e7\u00e3o para vers\u00f5es mais recentes ou cloud deve ser prioridade\u2026","rel":"","context":"Em &quot;Seguran\u00e7a&quot;","block_context":{"text":"Seguran\u00e7a","link":"https:\/\/www.tiagoneves.net\/blog\/category\/seguranca\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2026\/04\/sql_server_2016_eos_v3.png?fit=772%2C702&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2026\/04\/sql_server_2016_eos_v3.png?fit=772%2C702&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2026\/04\/sql_server_2016_eos_v3.png?fit=772%2C702&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/www.tiagoneves.net\/blog\/wp-content\/uploads\/2026\/04\/sql_server_2016_eos_v3.png?fit=772%2C702&ssl=1&resize=700%2C400 2x"},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/posts\/110","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/comments?post=110"}],"version-history":[{"count":9,"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/posts\/110\/revisions"}],"predecessor-version":[{"id":125,"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/posts\/110\/revisions\/125"}],"wp:attachment":[{"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/media?parent=110"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/categories?post=110"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tiagoneves.net\/blog\/wp-json\/wp\/v2\/tags?post=110"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}