BDOTNET UG MEET: 26th May 2012 (WindowsAzure & SQLServer)

bdotnet  SQL12_Logo windows-azure

Today we had a UG meet at Microsoft Building,Bangalore. UG Meet means guaranteed technical learning, a great networking opportunity, feedback from masters, unlimited fun, lots of tweets and the count goes on.

The audience experienced two very informative session by two masters 1)Windows Azure by Niraj Bhat(FB|T) & 2)SQL Server Execution Plan by Pinal Dave(B|T) from SQLAuthority. This time also we had a houseful audience like every time and each one went back with some new thoughts , some new ideas and some new concepts. One thing I must say that from today onwards every one who attended the session will “Ask SQL Server” for their doubts , rather then assuming anything:)

Vinod Kumar(B|T) introduced the speakers and said a few words on Windows Azure. He asked multiple questions to audience and gave them a feel of what’s coming up. Also if you know the answers , you can tweet him or put the same on #BDOTNET FB page.

Here goes some points covered in the sessions.

Windows Azure: Big Talk

Windows Azure is an open and flexible cloud platform and used to build , deploy and manage applications across global Microsoft managed Data Centers. It provides you a great application hosting environment.

Niraj told us about the Open Source Apacheâ„¢ Hadoop which is used to develop open-source software for reliable, scalable, distributed computing.

Microsoft says ~ A Hadoop based service on Azure will offer broader access to Hadoop through easy setup and configuration, simplified programming with JavaScript integration, and integration with familiar tools such as Excel.

Apache Hadoop is a powerful, scalable, distributed computing framework designed to handle the extreme volumes of these unstructured and structured data. The Developer Preview for the Apache Hadoop- based Services for Windows Azure is available at https://www.hadooponazure.com/. Its a software framework to process vast amounts of data scheduling, monitoring, re-execution of processing tasks.

You can follow the steps below for Hadoop On Azure.

  1. workflow
  2. create gather data
  3. copy data to hdfs/asv
  4. mapreduce functions
  5. output to hdfs/asv

Niraj also spoke about Google’s initiative of Parallel Programming MapReduce. MapReduce is a programming model used to process large amount of raw data.

 

SQL Server Execution Plan

How to use petrol efficiently?  Should I sale my car? Should I go for a Bi-Cycle?

Pinal Dave started his session and triggered the current petrol issue which gave a big question mark to everybody. In what way this problem is related to SQL Server execution? Actually he was trying to clear the idea that “to be efficient , you need to use your resource properly”.

Why is my query running so slow?

Is there a problem with the way I use my select statement?

Is my index not proper?

Does the where clause make sense in the performance?

Less resources better performance. Is this true?

Pinal Dave took a session on one of the most discussed topic of SQL server i.e. Execution Plan. He explained the best practices and gave some nice suggestion with a couple of Q&A on execution plan. The demos added flavor and clear the confusion with the execution plan described through the SSMS. When to use indexes and whether the select and where statement make sense in performance tuning or not was the main discussion on the day.

Some of the points need to be considered are

  • What are the indexes we have?
  • Adding columns doesn’t change the execution plan its the where clause that change the plan, (But you need to consider the columns)
  • Nonclustered index already have clustered index in the selection.
  • Order of the index also matters.
  • When you want to tune always compare the execution plans.
  • Check the actual vrs estimated plans
  • Conversion of datatype matters
  • Put N before varchar to make it nvarchar (plain english 🙂 )

In SSMS Shortcut for Display Estimated Execution Plan : CTRL + L
Shortcut for Include Actual Execution Plan : CTRL + M

Pinal also touched the SQL Server 2012 keyword SEQUENCE and Vinod pitch in to clear some doubt on Pinal’s request. Vinod has dedicated a complete article for SEQUENCE.

  • You will not be able to change the datatype of a sequence with alter sequence statements.
  • IDENTITY is different because even the IDENTITY can get reset using the TRUNCATE command, but SEQUENCE has to be reinitialized using the ALTER for the same.
  • Sequence can be used inside a  Insert , Select , Update statement, with Over and Order By and With Default.
  • If you need a unique sequence number to be generated across a single database then sequence can be of great help. IDENTITY can be used to generate a unique number for a given table and not across tables.

QUIZ Time

  1. What is bits  in Windows 7?
  2. What are the different Optimization level? (trivial, full)
  3. What are the difference between WCF and windows service?

Useful Links

https://www.facebook.com/groups/BDotNet/

http://blogs.extremeexperts.com/

http://blog.sqlauthority.com/2010/01/22/sql-server-execution-plan-estimated-io-cost-estimated-cpu-cost-no-unit/

http://ranjandotnet.blogspot.in/2012/05/wcf-servicesvs-windows-service-this.html

Check http://beyondrelational.com/ for my articles, Interview Questions and Just Learned sections.

Till next time Keep Sharing Smile , its free 🙂