Microsoft BI (Business Intelligence) Tools

Microsoft BI (Business Intelligence) Tools

Trending Questions and Lessons

Follow 2,830 Followers

Ask a Question

Feed

All

All

Lessons

Discussion

Lesson Posted on 16/06/2017 IT Courses/MS SQL/MS SQL Development IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/SQL Server IT Courses/Database Training +1 IT Courses/SQL Programming less

How To Minimize The Page Splits In Sqlserver To Improve The Performane Of Database?

Amitava Majumder

I am an experienced Trainer and IT professional with over 10 years of experience in IT Sector and more...

How to minimize the page splits in sqlserver to improve the performane of database? Page Splits: A page is 8Kbytes of data which can be index related, data related, large object binary (lob’s) etc... When you insert rows into a table they go on a page, into ‘slots’, your row will... read more

How to minimize the page splits in sqlserver to improve the performane of database?

Page Splits:

A page is 8Kbytes of data which can be index related, data related, large object binary (lob’s) etc...

When you insert rows into a table they go on a page, into ‘slots’, your row will have a row length and you can get only so many rows on the 8Kbyte page. What happens when that row’s length increases because you entered a bigger product name in your varchar column for instance,well,SQL Server needs to move the other rows along in order to make room for your modification, if the combined new length of all the rows on the page will no longer fit on that page then SQL Server grabs a new page and moves rows to the right or left of your modification onto it – that is called a ‘page split’.

Page splits arise when records from one memory page are moved to another page during changes to your table. Suppose a new record (Martin) being inserted, in sequence, between Adam and Rony. Since there’s no room in this memory page, some records will need to shift around. The page split occurs when Irene’s record moves to the second page.

This creates page fragmentation and is very bad for performance and is also reported as page split.

Page splits are considered very bad for performance, and there are a number of techniques to reduce, or even eliminate, the risk of page splits.

 Example code for tracking Page Splits :

We can find the bad page splits using the event sql_server.transaction_log. This event monitors all the activities in the transaction log, because that we need to use with caution. We can filter the ‘operation’ field looking for the value 11, which means LOP_DELETE_SPLIT. This is the deletion of rows that happens when SQL Server is moving rows from one page to another in a page split, a bad page split.

Extended Events for SQL Server provides a generic tracing and troubleshooting framework which allows deeper and more granular level control of tracing which was not possible using earlier methods like DBCC, SQL Trace, Profiler, etc... These earlier methods still exist and Extended Events is not a replacement.

 For this We need to create the session by t-sql. The code to create the session will be this:

 IF EXISTS (SELECT 1

            FROM sys.server_event_sessions

            WHERE name = 'PageSplits_Tracker')

    DROP EVENT SESSION [PageSplits_Tracker] ON SERVER

 CREATE EVENT SESSION PageSplits_Tracker

ON    SERVER

ADD EVENT sqlserver.transaction_log(

    WHERE operation = 11  -- LOP_DELETE_SPLIT

)

--Description for transaction_log event is: “Occurs when a record is added to the SQL Server transaction log.

--This is a very high volume event that will affect the performance of the server. Therefore, you should use

--appropriate filtering to reduce the number of events, and only use this event for targeted troubleshooting

--during a short time period.”

 -- LOP_DELETE_SPLIT : A page split has occurred. Rows have moved physically.

ADD TARGET package0.histogram(

    SET filtering_event_name = 'sqlserver.transaction_log',

        source_type = 0,source = 'database_id');

GO

--package0.histogram : You can use the histogram target to troubleshoot performance issues.      

--filtering_event_name : Any event present in the Extended Events session.

--source_type : The type of object that the bucket is based on.

--0 for an event

--1 for an action

--source : The event column or action name that is used as the data source.

-- Start the Event Session

ALTER EVENT SESSION PageSplits_Tracker

ON SERVER

STATE=START;

GO

-- Create the database

CREATE DATABASE Performance_Tracker

GO

USE [Performance_Tracker]

GO

-- Create a bad splitting clustered index table

CREATE TABLE PageSplits

( ROWID UNIQUEIDENTIFIER NOT NULL DEFAULT NEWID() PRIMARY KEY,

  Data INT NOT NULL DEFAULT (RAND()*1000),

  Change_Date DATETIME2 NOT NULL DEFAULT CURRENT_TIMESTAMP);

GO

--  This index should mid-split based on the DEFAULT column value

CREATE INDEX IX_PageSplitsPk_Data ON PageSplits (Data);

GO

--  This index should end-split based on the DEFAULT column value

CREATE INDEX IX_PageSplitsPk_ChangeDate ON PageSplits (Change_Date);

GO

-- Create a table with an increasing clustered index

CREATE TABLE PageSplits_Index

( ROWID INT IDENTITY NOT NULL PRIMARY KEY,

Data INT NOT NULL DEFAULT (RAND()*1000),

Change_Date DATETIME2 NOT NULL DEFAULT DATEADD(mi, RAND()*-1000, CURRENT_TIMESTAMP))

GO

-- This index should mid-split based on the DEFAULT column value

CREATE INDEX IX_PageSplits_Index_ChangeDate ON PageSplits_Index (Change_Date);

GO

-- Insert the default values repeatedly into the tables

WHILE 1=1

BEGIN

    INSERT INTO PageSplits DEFAULT VALUES;

    INSERT INTO PageSplits_Index DEFAULT VALUES;

    WAITFOR DELAY '00:00:00.005';

END

GO

--If we startup this workload and allow it to run for a couple of minutes, we can then query the histogram target

--for our session to find the database that has the mid-page splits occurring.

-- Query the target data to identify the worst splitting database_id

with cte as

(

SELECT

    n.value('(value)[1]', 'int') AS database_id,

    DB_NAME(n.value('(value)[1]', 'int')) AS database_name,

    n.value('(@count)[1]', 'bigint') AS split_count

FROM

(SELECT CAST(target_data as XML) target_data

 FROM sys.dm_xe_sessions AS s

 JOIN sys.dm_xe_session_targets t

     ON s.address = t.event_session_address

 WHERE s.name = 'PageSplits_Tracker'

  AND t.target_name = 'histogram' ) as tab

CROSS APPLY target_data.nodes('HistogramTarget/Slot') as q(n)

)

select * from cte

database_id

database_name

split_count

16

Performance_Tracker

123

--With the database_id of the worst splitting database, we can then change our event session configuration

--to only look at this database, and then change our histogram target configuration to bucket on the alloc_unit_id

--so that we can then track down the worst splitting indexes in the database experiencing the worst mid-page splits

-- Drop the Event Session so we can recreate it

-- to focus on the highest splitting database

DROP EVENT SESSION [PageSplits_Tracker]

ON SERVER

-- Create the Event Session to track LOP_DELETE_SPLIT transaction_log operations in the server

CREATE EVENT SESSION [PageSplits_Tracker]

ON    SERVER

ADD EVENT sqlserver.transaction_log(

    WHERE operation = 11  -- LOP_DELETE_SPLIT

      AND database_id = 16 -- CHANGE THIS BASED ON TOP SPLITTING DATABASE!

)

ADD TARGET package0.histogram(

    SET filtering_event_name = 'sqlserver.transaction_log',

        source_type = 0, -- Event Column

        source = 'alloc_unit_id');

GO

-- Start the Event Session Again

ALTER EVENT SESSION [PageSplits_Tracker]

ON SERVER

STATE=START;

GO

--With the new event session definition, we can now rerun our problematic workload for more than 10 minutes period

-- and look at the worst splitting indexes based on the alloc_unit_id’s that are in the histogram target:

WHILE 1=1

BEGIN

    INSERT INTO PageSplits DEFAULT VALUES;

    INSERT INTO PageSplits_Index DEFAULT VALUES;

    WAITFOR DELAY '00:00:00.005';

END

GO

-- Query Target Data to get the top splitting objects in the database:

SELECT

    o.name AS table_name,

    i.name AS index_name,

    tab.split_count,indexstats.index_type_desc AS IndexType,

indexstats.avg_fragmentation_in_percent,

    i.fill_factor

FROM (    SELECT

            n.value('(value)[1]', 'bigint') AS alloc_unit_id,

            n.value('(@count)[1]', 'bigint') AS split_count

        FROM

        (SELECT CAST(target_data as XML) target_data

         FROM sys.dm_xe_sessions AS s

         JOIN sys.dm_xe_session_targets t

             ON s.address = t.event_session_address

         WHERE s.name = 'PageSplits_Tracker'

          AND t.target_name = 'histogram' ) as tab

        CROSS APPLY target_data.nodes('HistogramTarget/Slot') as q(n)

) AS tab

JOIN sys.allocation_units AS au

    ON tab.alloc_unit_id = au.allocation_unit_id

JOIN sys.partitions AS p

    ON au.container_id = p.partition_id

JOIN sys.indexes AS i

    ON p.object_id = i.object_id

        AND p.index_id = i.index_id

JOIN sys.objects AS o

    ON p.object_id = o.object_id

JOIN sys.dm_db_index_physical_stats(DB_ID(), NULL, NULL, NULL, NULL) indexstats

ON i.object_id = indexstats.object_id

AND i.index_id = indexstats.index_id

WHERE o.is_ms_shipped = 0

ORDER BY indexstats.avg_fragmentation_in_percent DESC

table_name

index_name

split_count

IndexType

avg_fragmentation_in_percent

fill_factor

PageSplits_Index

IX_PageSplits_Index_ChangeDate

286

NONCLUSTERED INDEX

99.57894737

0

PageSplits

PK__PageSpli__97BD02EBEA21A6BC

566

CLUSTERED INDEX

99.37238494

0

PageSplits

IX_PageSplitsPk_Data

341

NONCLUSTERED INDEX

98.98989899

0

PageSplits

IX_PageSplitsPk_ChangeDate

3

NONCLUSTERED INDEX

1.747572816

0

--With this information we can now go back and change our FillFactor specifications and retest/monitor the impact

-- to determine whether we’ve had the appropriate reduction in mid-page splits to accommodate the time between

-- our index rebuild operations:

-- Change FillFactor based on split occurences to minimize page splits

Using Fill Factor we can minimize the page splits :

Fill Factor :When an index is created with a fill factor percentage, this leaves a percentage of the index pages free after the index is created, rebuilt or reorganized. This free space is used to hold additional pages as page splits occur, reducing the change of a page split in the data page causing a page split in the index structure as well, but even with your Fill Factor set to 10% to 20%, index pages eventually fill up and are split the same way that a data page is split.

 A page is the basic unit of data storage in SQL server. Its size is 8KB(8192 bytes). Data is stored in the leaf-level pages of Index.  The percentage of space to be filled with data in a leaf level page is decided by fill factor. The remaining space left is used for future growth of data in the page. Fill factor is a number from 1 to 100. Its default value is 0, which is same as 100. So when we say fill factor is 70 means, 70% of space is filled with data and remaining 30% is vacant for future use. So higher the fill factor, more data is stored in the page. Fill factor setting is applied when we create/rebuild index.

ALTER INDEX PK__PageSpli__97BD02EBEA21A6BC ON PageSplits REBUILD WITH (FILLFACTOR=70)

ALTER INDEX IX_PageSplitsPk_Data ON PageSplits REBUILD WITH (FILLFACTOR=70)

ALTER INDEX IX_PageSplits_Index_ChangeDate ON PageSplits_Index REBUILD WITH (FILLFACTOR=80)

GO

-- Stop the Event Session to clear the target

ALTER EVENT SESSION [PageSplits_Tracker]

ON SERVER

STATE=STOP;

GO

-- Start the Event Session Again

ALTER EVENT SESSION [PageSplits_Tracker]

ON SERVER

STATE=START;                           

GO

--Do the workload once again

WHILE 1=1

BEGIN

    INSERT INTO PageSplits DEFAULT VALUES;

    INSERT INTO PageSplits_Index DEFAULT VALUES;

    WAITFOR DELAY '00:00:00.005';

END

GO

--With the reset performed we can again start up our workload generation and

--begin monitoring the effect of the FillFactor specifications on the indexes with our code.

--After another 2 minute period, the following splits were noted.

--Once again Query Target Data to get the top splitting objects in the database:

--At present there is no page splits are found in indexes IX_PageSplitsPk_ChangeDate, PK__PageSpli__97BD02EBEA21A6BC,   IX_PageSplitsPk_Data

read less
Comments
Dislike Bookmark

Lesson Posted on 13/05/2017 IT Courses/Computer Software/DBA IT Courses/MS SQL IT Courses/MS SQL/MS SQL Administration +2 IT Courses/MS SQL/MS SQL Certification IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/SQL Server less

History of SQL server

Rahul J Rajesh

I have 7+ years in SQL server DBA and 6+ years in teaching field.

In 1988, Microsoft released its first version of SQL Server. It was designed for the OS/2 platform and was developed jointly by Microsoft and Sybase. During the early 1990s, Microsoft began to develop a new version of SQL Server for the NT platform. While it was under development, Microsoft decided that... read more

In 1988, Microsoft released its first version of SQL Server. It was designed for the OS/2 platform and was developed jointly by Microsoft and Sybase. During the early 1990s, Microsoft began to develop a new version of SQL Server for the NT platform. While it was under development, Microsoft decided that SQL Server should be tightly coupled with the NT operating system. In 1992, Microsoft assumed core responsibility for the future of SQL Server for NT. In 1993, Windows NT 3.1 and SQL Server 4.2 for NT were released. Microsoft's philosophy of combining a high-performance database with an easy-to-use interface proved to be very successful. Microsoft quickly became the second most popular vendor of high-end relational database software. In 1994, Microsoft and Sybase formally ended their partnership. In 1995, Microsoft released version 6.0 of SQL Server. This release was a major rewrite of SQL Server's core technology. Version 6.0 substantially improved performance, provided built-in replication, and delivered centralized administration. In 1996, Microsoft released version 6.5 of SQL Server. This version brought significant enhancements to the existing technology and provided several new features. In 1997, Microsoft released version 6.5 Enterprise Edition. In 1998, Microsoft released version 7.0 of SQL Server, which was a complete rewrite of the database engine. In 2000, Microsoft released SQL Server 2000. SQL Server version 2000 is Microsoft's most significant release of SQL Server to date. This version further builds upon the SQL Server 7.0 framework. According to the SQL Server development team, the changes to the database engine are designed to provide an architecture that will last for the next 10 years.

 

Prior to version 7.0 the code for MS SQL Server was sold by Sybase SQL Server to Microsoft, and was Microsoft's entry to the enterprise-level database market, competing against Oracle, IBM DB2, and, later, Sybase.

Rather than listing all the new features and enhancements found in 2000, I've decided to list my favorite changes. The remainder of this chapter is dedicated to discussing these new features found in version 2000.

table_name

index_name

split_count

IndexType

Version

Year

Release name

Code name

Internal version

1.0 (OS/2)

1989

SQL Server 1.0 (16 bit)

Ashton-Tate / Microsoft SQL Server

-

1.1 (OS/2)

1991

SQL Server 1.1 (16 bit)

-

-

4.21 (WinNT)

1993

SQL Server 4.21

SQLNT

-

6

1995

SQL Server 6.0

SQL95

-

6.5

1996

SQL Server 6.5

Hydra

-

7

1998

SQL Server 7.0

Sphinx

515

-

1999

SQL Server 7.0 OLAP Tools

Palato mania

-

8

2000

SQL Server 2000

Shiloh

539

8

2003

SQL Server 2000 64-bit Edition

Liberty

539

9

2005

SQL Server 2005

Yukon

611/612

10

2008

SQL Server 2008

Katmai

661

10.25

2010

Azure SQL DB

Cloud Database or CloudDB

-

10.5

2010

SQL Server 2008 R2

Kilimanjaro (aka KJ)

665

11

2012

SQL Server 2012

Denali

706

12

2014

SQL Server 2014

SQL14

782

13

2016

SQL Server 2016

 

852

14.0

2017

SQL Server 2017

Helsinki

 

 

 

read less
Comments
Dislike Bookmark

Lesson Posted on 04/05/2017 IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/Microsoft SharePoint

SharePoint Training

Bound Tech Solutions

Being the front running leader in IT Software Training sector Bound Tech Solutions holds the prestigious...

ABOUT SHAREPOINT: SharePoint is a web-based function that integrates with Microsoft Office. SharePoint is primarily sold as a document administration and storage organization but the produce is greatly configurable and custom varies significantly between organizations. SharePoint is a single point... read more

ABOUT SHAREPOINT:

SharePoint is a web-based function that integrates with Microsoft Office. SharePoint is primarily sold as a document administration and storage organization but the produce is greatly configurable and custom varies significantly between organizations.

SharePoint is a single point for generous out data between various users. It is a single gap for content management of data for a variety of companies. Depending on the business requirements Companies can design, create sites and give permissions to people. SharePoint can be used to arrange and manage data and documents in a extensive variety of ways. It can be used to make dashboards that report results commencing multiple sources.

SharePoint is exclusive amongst information management systems in that it is purchased with any specific purpose in mind. It is often bought bundled in with other products when IT departments negotiate an enterprise accord with Microsoft.

ABOUT SHAREPOINT TRAINING:

Build active career in SharePoint atmosphere with SharePoint Online training courses from our Origination. Our SharePoint curriculum can help you to improvement the knowledge to enhance your SharePoint implementation. Learn how to use SharePoint for specialized project management, build apps, create dashboards, and develop InfoPath forms. Enhance your efficiency with instructor-led Online training brought privately to you through live online. Our expert instructors bring quality training that meets your budget, program schedules, and business objectives. We also offer Comprehensive courseware covering all subjects in the course. Our Consultant are working Professional in Mnc’s they guide our students in the Project based Scenarios. We are the Best SharePoint Online training providers from India.

read less
Comments
Dislike Bookmark

Looking for Microsoft BI (Business Intelligence) Tools Training

Find best Microsoft BI (Business Intelligence) Tools Training in your locality on UrbanPro.

FIND NOW

Lesson Posted on 04/05/2017 IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/Microsoft SharePoint

SharePoint Modal Dialogue : Freeze the header

Mallikarjuna

I have around 11 years of experience in IT industry, worked with multiple MNCs and multiple technical...

Recently working on a project got a requirement for freezing a header for modal dialog. To make it simple this is how you can achieve. ##########HTML##################### outer text.....<div id="mholder"> <div id="mheader">Header text</div> <div id="mbody">Lorem ipsum dolor... read more

Recently working on  a project got a requirement for freezing a header for modal dialog. To make it simple this is how you can achieve.

##########HTML#####################

outer text.....
<div id="mholder">
<div id="mheader">Header text</div>
<div id="mbody">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborumLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborumLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborumLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum</div>
<div id="mfooter">Footer text</div>
</div>

##########End HTML#####################
##########CSS #########################

#mholder{
padding: 10px 10px 10px 10px;
width: 65%;
height: 60%;
background-color: grey;
position: absolute;
top:0;
bottom:0;
left:0;
right:0;
margin: auto;
}

#mheader{
position: absolute;
height: 10%;
left:0;
top:0;
width: 100%;
}

#mbody{
width:96%;
height: 80%;
position: absolute;
top: 10%;
overflow: auto;
}

#mfooter{
height:10%;
width:100%;
position: absolute;
left: 0;
bottom: 0;
}

##########end CSS #########################

read less
Comments
Dislike Bookmark

Answered on 12/03/2017 IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/Microsoft SharePoint IT Courses/ETL

Jithendar

SharePoint Trainer

If you are comfortable with. Net then choose SharePoint is the better option.
Answers 15 Comments
Dislike Bookmark

Lesson Posted on 16/02/2017 IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/SQL Server IT Courses/Database Training

New Features Worth Exploring in SQL Server 2016

Amitava Majumder

I am an experienced Trainer and IT professional with over 10 years of experience in IT Sector and more...

New Features Worth Exploring in SQL Server 2016 There is a lot of buzz around SQL Server 2016. Microsoft announced the release of SQL Server 2016 at the Microsoft Ignite Conference during the first week of May 2015. In this article I will be exploring, at a very high level, 10 of those new features. Always... read more

New Features Worth Exploring in SQL Server 2016

There is a lot of buzz around SQL Server 2016. Microsoft announced the release of SQL Server 2016 at the Microsoft Ignite Conference during the first week of May 2015.

In this article I will be exploring, at a very high level, 10 of those new features.

Always Encrypted- With the Always Encrypted feature enabled your SQL Server data will always be encrypted within SQL Server. Access to encrypted data will only be available to the applications calling SQL Server. Always Encrypted enables client application owners to control who gets access to see their applications confidential data. It does this by allowing the client application to be the one that has the encryption key. That encryption key is never passed to SQL Server. By doing this you can keep those nosey Database or Windows Administrators from poking around sensitive client application data In-Flight or At-Rest. This feature will now allow you to sleep at night knowing your confidential data stored in a cloud managed database is always encrypted and out of the eyes of your cloud provider.

Dynamic Data Masking- If you are interested in securing your confidential data so some people can see it, while other people get an obscured version of confidential data then you might be interested in dynamic data masking. With dynamic data masking you can obscure confidential columns of data in a table to SQL Server for users that are not authorized to see the all the data. With dynamic data masking you can identify how the data will be obscured. For instance say you accept credit card numbers and store them in a table, but you want to make sure your help desk staff is only able to see the last four digits of the credit card number. By setting up dynamic data masking you can define a masking rules so unauthorized logins can only read the last four digits of a credit card number, whereas authorized logins can see all of the credit card information.

JSON Support- JSON stands for Java Script Object Notation. With SQL Server 2016 you can now interchange JSON data between applications and the SQL Server database engine. By adding this support Microsoft has provided SQL Server the ability to parse JSON formatted data so it can be stored in a relation format. Additionally, with JSON support you can take relational data, and turn it into JSON formatted data. Microsoft has also added some new functions to provided support for querying JSON data stored in SQL Server. Having these additional JSON features built into SQL Server should make it easier for applications to exchange JSON data with SQL Server.

Multiple TempDB Database Files- It has been a best practice for a while to have more than one tempdb data file if you are running on a multi-core machine. In the past, up through SQL Server 2014, you always had to manually add the additional tempdb data files after you installed SQL Server. With SQL Server 2016 you can now configure the number of tempdb files you need while you are installing SQL Server. Having this new feature means you will no longer need to manually add additional tempdb files after installing SQL Server.

PolyBase- PolyBase allows you to query distributed data sets. With the introduction of PolyBase you will be able to use Transact SQL statements to query Hadoop, or SQL Azure blob storage. By using PolyBase you can now write adhoc queries to join relational data from SQL Server with semi-structured data stored in Hadoop, or SQL Azure blob storage. This allows you to get data from Hadoop without knowing the internals of Hadoop. Additionally you can leverage SQL Server’s on the fly column store indexing to optimize your queries against semi-structured data. As organizations spread data across many distributed locations, PolyBase will be a solution for them to leverage SQL Server technology to access their distributed semi-structured data.

Query Store- If you are into examining execution plans than you will like the new Query Store feature. Currently in versions of SQL Server prior to 2016 you can see existing execution plans by using dynamic management views (DMVs). But, the DMVs only allow you to see the plans that are actively in the plan cache. You can’t see any history for plans once they are rolled out of the plan cache. With the Query Store feature, SQL Server now saves historical execution plans. Not only that but it also saves the query statistics that go along with those historical plans. This is a great addition and will allow you to now track execution plans performance for your queries over time. 

Row Level Security- With Row Level Security the SQL database engine will be able to restrict access to row data, based on a SQL Server login. Restricting rows will be done by filter predicates defined in inline table value function. Security policies will ensure the filter predicates get executed for every SELECT or DELETE operation. Implementing row level security at the database layer means application developers will no longer need to maintain code to restrict data from some logins, while allowing other logins to access all the data. With this new feature, when someone queries a tables that contains row level security they will not even know whether or not any rows of data were filtered out.

R Comes to SQL Server- With Microsoft’s purchase of Revolution Analytics they are now able to incorporate R to support advance analytics against big data right inside of SQL Server. By incorporating R processing into SQL Server, data scientists will be able to take their existing R code and run it right inside the SQL Server database engine. This will eliminate the need to export your SQL server data in order to perform R processing against it. This new feature brings R processing closer to the data.

Stretch Database- The Stretch Database feature provides you a method to stretch the storage of your On-Premise database to Azure SQL Database. But having the stretch database feature allows you to have your most frequently accessed data stored On-Premise, while your less accessed data is off-site in an Azure SQL databases. When you enable a database to “stretch” the older data starts moving over to the Azure SQL database behind the scenes. When you need to run a query that might access active and historical information in a “stretched” database the database engine seamlessly queries both the On-Premise database as well as Azure SQL database and returns the results to you as if they had come from a single source. This feature will make it easy for DBA’s to archive information to a cheaper storage media without having to change any actual application code. By doing this you should be able to maximize performance on those active On-Premise queries.

Temporal Table- A temporal table is table that holds old versions of rows within a base table.  By having temporal tables SQL Server can automatically manage moving old row versions to the temporal table every time a row in the base table is updated.  The temporal table is physically a different table then the base table, but is linked to the base table.  If you’ve been building or plan to build your own method to managing row versioning then you might want to check out the new temporal tables support in SQL server 2016 before you go forth and build your own row versioning solution.

read less
Comments
Dislike Bookmark

Looking for Microsoft BI (Business Intelligence) Tools Training

Find best Microsoft BI (Business Intelligence) Tools Training in your locality on UrbanPro.

FIND NOW

Lesson Posted on 09/02/2017 IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/Microsoft SharePoint

Why learn SharePoint?

Lakky

Working as solution architect and having total 13 years of IT experience. 8 years of experience in...

SharePoint is easy to start learn and implement if any one know HTML concepts. SharePoint's core functions are 1) store documents in a more effective format and 2) bring an organisation together. Most of the organisations uses SharePoint for internal operations and require changes as per their requirements.... read more

SharePoint is easy to start learn and implement if any one know HTML concepts.

SharePoint's core functions are 1) store documents in a more effective format and 2) bring an organisation together.

Most of the organisations uses SharePoint for internal operations and require changes as per their requirements. So the demand is keep growing. 

At high level SharePoint is a platform where one can create sites which will have predefined designed pages.

Most of the time developers will be working with customizing the existing SharePoint pages, developing workflows and search configuration. Either Client side scripting or server side coding will be required to interact with SharePoint database.

These are few of the SharePoint features: Workflows, Alerts, Storage, Collaborate by sharing the information with other users or colleagues, Content management and Search

read less
Comments
Dislike Bookmark

Answered on 21/02/2017 IT Courses/Tableau IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools SAP Business Objects Training

Techandmate

TechandMate - The Techmnology Insight

Tableau is the best data visualization tool among all BI tools, you can go for it.
Answers 28 Comments
Dislike Bookmark

Looking for Microsoft BI (Business Intelligence) Tools Training

Find best Microsoft BI (Business Intelligence) Tools Training in your locality on UrbanPro.

FIND NOW

Answered on 12/03/2017 IT Courses/Microsoft Training/Microsoft BI (Business Intelligence) Tools/Microsoft SharePoint

Jithendar

SharePoint Trainer

What you are looking for SharePoint development or admin?
Answers 6 Comments
Dislike Bookmark

About UrbanPro

UrbanPro.com helps you to connect with the best Microsoft BI (Business Intelligence) Tools Training in India. Post Your Requirement today and get connected.

Overview

Questions 17

Lessons 42

Total Shares  

Top Contributors

Connect with Expert Tutors & Institutes for Microsoft BI (Business Intelligence) Tools

x

Ask a Question

Please enter your Question

Please select a Tag

UrbanPro.com is India's largest network of most trusted tutors and institutes. Over 25 lakh students rely on UrbanPro.com, to fulfill their learning requirements across 1,000+ categories. Using UrbanPro.com, parents, and students can compare multiple Tutors and Institutes and choose the one that best suits their requirements. More than 6.5 lakh verified Tutors and Institutes are helping millions of students every day and growing their tutoring business on UrbanPro.com. Whether you are looking for a tutor to learn mathematics, a German language trainer to brush up your German language skills or an institute to upgrade your IT skills, we have got the best selection of Tutors and Training Institutes for you. Read more