Disk defragmenting SharePoint on Virtual Machines: Performance tweak or myth?

I previously posted about the effectiveness of defragmenting guest machines (SharePoint servers) in virtualized environments here:
SharePoint on Virtual Machines – Is Disk Defragmenting necessary for Performance?

Today the ever-helpful President of PerfectDisk, Bob Nolan, wrote me to share a very interesting tidbit that he found on VMware’s VSphere documentation:

“Last week I was researching something and I found an interesting piece of documentation that might be helpful to you down the road.  The VMware 5.1 doc has a section enumerating 12 things to do when you have disk latency or I/O contention issues.  “Defragment the file system of all the guests” is the 2nd recommendation on the list http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.vsphere.monitoring.doc%2FGUID-174326D5-238B-48CA-B030-02009E388523.html

sharepoint-defragment-vmware

Also:

“You may want to look at this too. Cormac Hogan is a VMware storage architect and this is a blog he did on how Storage I/O Control (SIOC) balances fairness and performance http://blogs.vmware.com/vsphere/2013/04/virtual-machine-io-fairness-versus-performance.html .  The gist of the blog is that VMware Kernel settings reduce the number of outstanding I/O requests any VM can have when multiple VMs are sharing a LUN.  SIOC basically throttles performance to improve latency.  Further, if you do sequential I/O, VMware will grant you more I/O requests.

In response I wrote this paper which says if VMware is going limit your I/O requests then get the most from the ones you have by doing larger I/O. When you do larger I/O you tend to do sequential I/O so you can also get the additional requests VMware is willing to grant http://www.raxco.com/user_data/white_papers/Getting_More_VMware_Performance_from_Fewer_IO_Requests.pdf

This reinforces the original conclusion: This data combined with my decade-plus experience of seeing direct noticeable performance improvements on IIS boxes after full defragmentation and implementation of regular defrags, located on physical or virtual disks, leads to me to stand by my guns: I will continue to recommend disk defragging.  Would love to see if someone can change my mind..

Incoming search terms:

SharePoint Hire Interview Question Matrix

sharepoint-hire-interview-question-matrix-s1

What

Hiring staff in a highly specialized technical field such as SharePoint can rapidly turn into an inconsistent & time-consuming (expensive) affair, if you don’t have the right system in place. Selecting the right candidate for a SharePoint job from a pool of applicants with largely similar backgrounds & CV’s can be daunting – SharePoint encompasses, even by IT hiring standards, a huge body of knowledge and experience.

Think of all the expense & effort involved with bringing on a new SharePoint hire into your team: onboarding, setting up benefits, training, team familiarization, meetings, etc. Now imagine having to burn up all of that, if you make a less than perfect hiring decision! You stand to risk your company reputation, team trust, customer satisfaction, and so on. Most prominently, you would be right back where you started – looking for a great SharePoint expert for your team.

So What

Failure to properly screen your SharePoint hire applicants can lead to big trouble when it come’s time for them to be effective in their jobs. Once you get through all the standard HR practices & processes, the question remains: “Is this guy/gal really a SharePoint pro?”. To help determine that, an extremely effective screening method is a series of technical questions combined with a scoring system.

Now What

OPTION A- Hire itgroove’s SharePoint MVP’s to perform your interviews for you.

OPTION B- Purchase and download the SharePoint Hire Interview Question Matrix Excel Workbook for only $40. The itgroove SharePoint Hire Interview Question Matrix Excel Workbook is composed of two Worksheets:

1. Questions Scorecard
This Excel Worksheet contains 56 carefully researched, in-depth SharePoint Hiring Questions, composed from real world experience of itgroove’s 3 SharePoint MVP’s. These questions are divided into the following categories:
- General SharePoint Knowledge
- SharePoint 2010 IT Pro
- SharePoint Development
- SharePoint 2013

A Score column is used to rate your Job Applicant’s response to the questions.

All questions include a detailed answer and background explanation for the answer – you don’t necessarily need to be a SharePoint guru yourself in order to effectively grade someone with this worksheet!

2. Personal Scorecard
The Personal Scorecard Worksheet incorporates a detailed scoring formula that rates your potential hire by the following traits:
- Amount and Quality of relevant experience
- Communication Skills in Interview
- Technical Skills Level
- Enthusiasm
- Overall Fit/Suitability for Role
- Educational Qualifications
- Evidence of Research into our Company

The general interview results for these traits are entered into the Worksheet so that an overall grade for the Candidate can be achieved. This grade can then be stacked up against all your other interviewee’s results, to enable quick & fair qualification of who is most suitable for the job position.

Buy Now on the itgroove Store

SharePoint Interview Questions

www.DiscoverSharePoint.com launched – New MS SP end-user resource site

Microsoft has introduced DiscoverSharePoint.com, a new site geared towards driving SharePoint Adoption. This site is a great resource for helping end-users understand SharePoint and what’s in it for them. The site offers a use case catalog, how to guides and videos, and an adoption guide with recommendations on how to drive organic adoption of SharePoint based on research, learnings from customers, Yammer Customer Success Managers, field, and partners.

New content (including Video tutorials) is on the way so stay tuned to http://www.discoversharepoint.com/.

7-30-2013 10-14-14 AM

PowerShell Enable Versioning in all Site Collection Lists & Libraries

Often it’s a requirement to have Versioning turned on in a SharePoint List or Library. Versioning is a list/library level attribute and there’s unfortunately no way via the Site Settings GUI to tell SharePoint at the Site Collection or Site level to always have versioning turned on when a new list or library is created..

Traditionally, If you want versioning to be turned on in each new list/library, you’d have to either:

  • Use your own library template (with versioning turned on)
  • Use feature + event handler to programmatically activate versioning on each new list

The easiest way out of those two options is probably to use your own template. To do this, create a new document library, activate versioning, then save this list as template.

When you create a new list, you will then be able to use your template and directly create a list with versioning activated.

What about cases where we don’t want to/can’t use templates and we have admins spinning up new lists/libraries and jonesing for that versioning goodness?
The following PowerShell can be used to report on, and optionally enable Versioning on all Lists and Libraries in the site collection URL it is fed.
Minor Versioning, and Major/Minor Version quantity limit toggling is also in there but commented out. To turn on those options, simply remove the # symbol from the beginning of the lines.

PowerShell Script (save as file e.g. Enable-Versioning.ps1):

Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
$siteURL = $args[0]
$execute = $args[1]
$site = Get-SPSite($siteURL)
foreach($web in $site.AllWebs) {
Write-Host "Inspecting " $web.Title
foreach ($list in $web.Lists) {
Write-Host "Versioning enabled: " $list.EnableVersioning
$host.UI.WriteLine()
Write-Host "MinorVersioning Enabled: " $list.EnableMinorVersions
$host.UI.WriteLine()
Write-Host "EnableModeration: " $list.EnableModeration
$host.UI.WriteLine()
Write-Host "Major Versions: " $list.MajorVersionLimit
$host.UI.WriteLine()
Write-Host "Minor Versions: " $list.MajorWithMinorVersionsLimit
$host.UI.WriteLine()
if($execute -eq "execute") {
$list.EnableVersioning = $true
#if($list.BaseType -eq "DocumentLibrary") {
#$list.EnableMinorVersions = $true
#}
#$list.MajorVersionLimit = 3
#$list.MajorWithMinorVersionsLimit = 3
$list.Update()
Write-Host $list.Title " is updated"
}
}
}

Usage:
Script takes two parameters:
1. Required: Site collection URL e.g. http://mysitecollection Specifies the site collection to operate on.
2. Optional: execute Script runs in report mode only unless you add the word execute
Example 1: Run the script in report mode only (no changes effected):
    c:\users\administrator\desktop\.\Enable-Versioning.ps1 http://mysitecollection
Example 2: Run the script in execute mode:  c:\users\administrator\desktop\.\Enable-Versioning.ps1 http://mysitecollection execute

This script could potentially be run on an automated basis via the Windows Task Scheduler – this would let you run it on a regular basis to ensure all lists/libraries in a site collection have Versioning turned on.

 

T-SQL to get SQL Transaction Log Sizes

When dealing with the slew of SharePoint MS SQL databases that can be found in a typical install, it’s a bit of a time suck to check transaction log sizes manually. I put together the following T-SQL script to quickly show which transaction logs out of all the logs in the particular SQL instance, are above 299 MB in size. Adjust that threshold to your tastes.

declare @LogSpace table
(
DatabaseName varchar(255),
[Log Size (MB)] float,
[Log Space Used (%)] float,
[Status] int)
insert into @LogSpace
execute('dbcc sqlperf(''LogSpace'')')
 
select * from @LogSpace 
where [Log Size (MB)] > 299 
order by [Log Size (MB)] desc 
--order by [Log Space Used (%)] desc 

Incoming search terms:

Top 10 posts from yalla.itgroove.net

It’s a drizzly grey Friday morning and i’m not feeling super bloggy today – so I’ve looked to the past and dug up the top 10 blog posts that I feel offer the most value:

User Profile Synch SharePoint 2010 – The Essential Mix
My attempt to humbly leverage the gold standard of Spencer Harbar’s explanations of UPS against the latter-improved TechNet guides, sprinkled in with my own experiences.

The Top 10 Problems With SharePoint Performance Top 10 Lists
I’ve come across lot’s of helpful lists around the net and forums on the topic of performance tuning SharePoint however as time and performance projects march forward it’s clear that this subject, more than most in the already dense realm of SharePoint, deserves a more realistic outlook. The standard lists of performance tuning tips look at the forest for the trees. This list looks at the forest as a melee battle between good and evil and er..  anyhow, read on for some twists on the old tuning bag of tricks

SharePoint 2010 File Size Upload Limits – The Essential Mix
​Clearly there are a lot of articles & posts on net regarding increasing File Size Upload limits in SharePoint. Unfortunately I couldn’t find any one that was comprehensive enough to include ALL the tweaks you need to consider to accomplish the goal, on both the SharePoint and IIS level. So here’s mine.

Claims Based Authentication in SharePoint 2010
My run-down of the fundamentals of Claims Based Authentication in SharePoint. Applicable on to, and heavily focused on, in SharePoint 2013 too.

SharePoint 2007 Anonymous MS Office Document Download Login Prompts
Workaround for avoiding authentication prompts on anonymous SharePoint sites, can be applied to newer SP versions too.

Nintex Custom Actions permissions – Understanding RunWithElevatedPrivileges
Getting head around RunWithElevatedPrivileges, useful for all SP Dev, not just when making Nintex Actions.

Cloud-based SharePoint – Risks & Rewards
My early attempts to be a SharePoint weatherman.

All About OneNote Synching & SharePoint
Getting into the nitty gritty of how OneNote (you are using OneNote, aren’t you?) magically keeps all your thoughts saved, synched and backed up in SharePoint.

SharePoint Calculated Column Formulas
Although fundamentally SharePoint calculated columns support all the functions and formulas that Excel can use, there are a few discrepencies. Here I try and present the biggest, most monolithic library of calculated column formulas on the net.

itgroove 2012 SharePoint Predictions.. Dionne Warwick Strikes Back
Not so much a content based post, but just one that needs to be remembered - “Remember that time when Sean predicted the rise of the Apps?”

Visual Studio 2012 or 2010 for SharePoint 2010 Development?

A recurring question that has come up is regarding which version & flavour of Visual Studio can and should be used for SharePoint- we are at a point where SP 2013 is coming on strong but many, many clients are going to be locked into SP 2010 for a while yet. Obviously an investment in software like Visual Studio should be made with the best balance of future-proofing and low cost possible. This post seeks to offer some advice on that.

The quick answer is:
-you can develop for SP 2010 using VS 2012, there project templates etc. that are geared for both version in VS 2012.
-you can develop for SP 2013 using VS 2010, however there’s going to be loose ends. Upgrading your existing VS 2010 solutions to VS 2012 is however not that hard.

The next question you will likely have is, which flavour of Visual Studio to get – Ultimate with MSDN, Premium with MSDN, Test Professional, Professional with MSDN, or Professional.

Version compare here: http://www.microsoft.com/visualstudio/eng#products/compare. I would see Visual Studio Professional 2012 being a good fit for most common scenarios, but whether you use Pro or move up to Premium would depend on if you need the following Premium features:

-          PowerPoint Storyboarding
-          Team Foundation Service

In general, the big upsell when going up the feature matrix ladder is when you are working on hardcore software development in big teams, using Agile development processes, complex unit testing etc.

The hard requirement of having Visual Studio installed on a non-production SharePoint server install is pretty much standard, until you go to a SharePoint 2013 development model which is based on more open standards and Apps. Depending on your licensing provisions available (e.g. you’re in Government or Education), you may have SharePoint CAL’s covered to create such an environment – or, and for a variety of other reasons, you might want to consider an MSDN subscription. An MSDN subscription also would enable the aforementioned Team Foundation Service hosted source code option.

A fleshed-out dev environment is a must, custom code should never see the light of day on a production server until tested, there is always potential for irreparable damage to production systems when it comes to custom dev. Here are four great options for setting up a SharePoint development environment in the cloud.

SharePoint dev is sometimes maddeningly complex as the already complex front-end side of SP is just the tip of iceberg. The plumbing underneath is massive. Although there is quite a bit of flexibility with how you approach it, you definitely need to get your shop tooled up in a specific pattern, and Visual Studio is just one component. Evaluating whether or not it even makes practical sense to do such work in-house or to contract out is a big jigsaw puzzle too.  Fortunately there is a good degree

SharePoint Maintenance Recommendations Document – On Sale Now

sharepoint-maintenance-recommendations-icon

Routine system maintenance is essential for the smooth operation of Microsoft SharePoint Products and Technologies. Routine system checks must be performed consistently, and the results need to be archived over a period of time to obtain the greatest benefit (trend analysis).

The routine checks come in the form of:

  • Daily Maintenance Tasks
  • Weekly Maintenance Tasks
  • Monthly Maintenance Tasks
  • Annual Maintenance Tasks

Maintenance-Recommendations1

This checklist provides information and guidelines for maintaining the databases that host Microsoft SharePoint 2010 & 2013 data and configurations. It describes and provides examples of tried & true, best practice system & database maintenance tasks that itgroove recommend when using SharePoint 2010 & SharePoint 2013. Composing checklists and procedures is time consuming, we’ve done it for you!

Buy now for the super discounted price of $20 on the itgroove store!

Incoming search terms:

Cloud SharePoint for Developers : Office 365, Azure, Amazon AWS & CloudShare

Here’s a quick round up of our four top picks for getting your SharePoint Development going on in the cloud. Why develop in the cloud instead of perhaps using a local dedicated or virtual development environment?    Here’s ten reasons:

1. Scalable Add as many machines as you need.
2. Open and Flexible Choose development platform and programming model.
3. Secure Secure and durable technology platform with industry-recognized certifications and audits.
4. Fast Deployment Time Deploy applications without waiting for hardware to arrive.
5. Highly Available Highly reliable services and multiple fault-tolerant Availability Zones.
6. Quickly Adjust to Business Change: Running SharePoint in the Cloud allows you to add capacity as needed, without long lead time. You can easily scale up, or down, as business demands change. Stay ahead of the curve by adjusting capacity in minutes and hours, not days or weeks.
7. No New Hardware to Buy: All four options offer low, pay-as-you-go pricing, which eliminates hardware acquisition costs and allows you to pay only for the capacity you need. We do all of the hardware management, so you can focus on higher-value activities than replacing hard drives.
8. Shift Capital Expense to Operating Expense: While reducing both. You no longer need to plan, procure, manage, and depreciate your IT infrastructure.  You can replace large up-front expenses with more predictable costs that scale with your business.
9. Utilize Existing Skills and Software: Leverage your existing investments in IT skills and software assets, enabling your company to roll out new applications more quickly.
10. Low Cost Pay only for cloud resources used.

SharePoint Development on Office 365

Use an Office 365 Developer Site as a development and testing environment to shorten your setup time and start creating, testing, and deploying your apps for Office and SharePoint. Deploy the “Napa” Office 365 Development Tools to this preconfigured SharePoint site and you also get a head start on developing SharePoint-hosted apps, and apps for Office documents and mail items, without installing Visual Studio 2012 and Office Developer Tools for Visual Studio 2012 on your development computer. With an Office 365 Developer Site, you get an isolated app domain for SharePoint-hosted apps, preconfigured to use OAuth, so that you can use the Windows Azure Access Control Service (ACS) for authenticating and authorizing provider-hosted apps for SharePoint that are deployed to this site.

http://msdn.microsoft.com/en-us/library/fp179924.aspx

Next steps

After you have a development environment and an Office 365 Developer Site, you can start creating apps for Office and SharePoint.

Next steps for working with “Napa” Office 365 Development Tools

Next steps for working with apps for SharePoint

Additional resources

SharePoint Development on Azure

Microsoft SharePoint Server provides rich deployment flexibility, which can help organizations determine the right deployment scenarios to align with their business needs and objectives. Hosted and managed in the cloud, the Windows Azure Virtual Machines offering provides complete, reliable, and available infrastructure to support various on-demand application and database workloads, such as Microsoft SQL Server and SharePoint deployments.

While Windows Azure Virtual Machines support multiple workloads, this paper focuses on SharePoint deployments. Windows Azure Virtual Machines enable organizations to create and manage their SharePoint infrastructure quickly—provisioning and accessing nearly any host universally. It allows full control and management over processors, RAM, CPU ranges, and other resources of SharePoint virtual machines (VMs).

Windows Azure Virtual Machines mitigate the need for hardware, so organizations can turn attention from handling high upfront cost and complexity to building and managing infrastructure at scale. This means that they can innovate, experiment, and iterate in hours—as opposed to days and weeks with traditional deployments.

Step-by-Step: Build a FREE SharePoint 2013 Lab in the Cloud with Windows Azure Infrastructure Services

Prerequisites

The following is required to complete this step-by-step guide:

  • A Windows Azure subscription with the Virtual Machines Preview enabled.   DO IT: Sign up for a FREE Trial of Windows Azure   NOTE: When activating your FREE Trial for Windows Azure, you will be prompted for credit card information.  This information is used only to validate your identity and your credit card will not be charged, unless you explicitly convert your FREE Trial account to a paid subscription at a later point in time.
  • Completion of the Getting Started tasks in the following article:   DO IT: Getting Started with Servers in the Cloud
  • This step-by-step guide assumes that the reader is already somewhat familiar with configuring Windows Server Active Directory, SQL Server and SharePoint Server in an on-premise installation. This guide focuses on the unique aspects associated with configuring these components on the Windows Azure cloud platform.

Additional Resources:
How to: Deploy SharePoint Server 2010 on Azure
SharePoint 2013 on Azure Infrastructure

SharePoint Development on Amazon Web Services

Amazon EC2 running Windows Server is a secure and dependable environment for customers to deploy Microsoft SharePoint quickly and cost  effectively. The Microsoft License Mobility through Software Assurance program  allows Microsoft volume license customers to use their existing Windows Server applications licenses, including SharePoint Server, on AWS  without paying any additional Microsoft licensing fees. Take advantage of the benefits that the AWS Cloud offers such as pay-as-you-go pricing,  scalability, and data integrity to run your SharePoint workloads today.

The Get Started section below has more detail about all of the available technologies and resources for Microsoft on AWS, including pricing,  documentation, whitepapers, templates and sample code. If you have questions about SharePoint on AWS please visit the FAQ page for more info.

Get Started with AWS for Free
Sign Up Now »

AWS Free Tier includes 750 hours of Linux or Windows Micro Instances each month for one year. To stay within the Free Tier, use only EC2 Micro instances.

View AWS Free Tier Details »

Additional Resources

Microsoft and AWS     Overview of the relationship between the Microsoft and AWS, with technical resources, case studies, videos and more.

>     Learn More

Windows on the Amazon Cloud     Learn about pricing on Amazon EC2 for Windows Server and SQL Server, or find out about the Free Tier.

>     Learn More

SharePoint Reference Architecture White Paper     General concepts and technical guidance for setting up and running a SharePoint Server farm on AWS.

>     Read White Paper

Security for the Microsoft Applications on AWS White Paper Guidance, best practices, and available controls and capabilities within the AWS platform to run Windows Server-based applications securely on the AWS cloud.

Read White Paper

SharePoint Development on CloudShare

CloudShare provides an unmatched solution for SharePoint development and testing. Build a single server or multi-server SharePoint farm in minutes. With a few clicks, you can collaborate with other developers, demo for prospects, and deploy your solution to a production farm.

  • Explore the full functionality of SharePoint
  • Develop on virtual machines with sole server administration access
  • Select from development templates pre-configured with Visual Studio, Office, and various versions of SharePoint
  • Leverage tools including Team Foundation Server to store your solution code
  • Share your SharePoint solution across your organization

Try now using these top templates

SharePoint 2010 with SSRS 2012›
SharePoint 2010 Enterprise Small Farm›
SharePoint 2010 with Project Server›

CloudShare Free  Trial›

Conclusion

Each of these services has it’s strong points. With Microsoft’s Azure offering now set to price match against Amazon AWS, things are really heating up. CloudShare is an fantastic company with a super-simple deployment model - it’s possibly the simplest way to roll out a new development scenario.  Office 365 is rock solid, if you don’t need to actually manipulate server-side stuff and are focused on the Apps model.  I’m always interested to hear from other developers on their experiences with these different offerings.

Incoming search terms:

CKS Dev for Visual Studio 2012 is here

The Community Kit for SharePoint: Development Tools Edition extends the Visual Studio 2012 SharePoint project system with advanced templates and tools. Using these extensions you will be able to find relevant information from your SharePoint environments without leaving Visual Studio. You will have greater productivity while developing SharePoint components and you will have greater deployment capabilities on your local SharePoint installation.

CKSLogo

This version is targeted for users running SharePoint 2010 or SharePoint 2013. You only need this version regardless of SharePoint edition or version.

Previous Visual Studio 2010 versions can be found CKS – Development Tools Edition (Foundation) and CKS – Development Tools Edition (Server)

Features

This project provides extensions to four core areas; Environment, Exploration, Content and Deployment.

Exploration extends the new SharePoint Explorer with advanced information about SharePoint sites such as the installed Web Parts and Master Pages or the Feature dependencies and elements. Also included in the Explorer are a variety of import functions to bring existing SharePoint items into your active solution.

The Content area includes advanced templates such as Linq to SharePoint, Custom Action or Delegate Control. Become extra productive while developing sandboxed solutions using the SharePoint Full Trust Proxy. Utilise the SharePoint Console Application project template to quickly build SharePoint code.

Our enhanced Deployment functions give you the ability to utilise quick deployment and almost a dozen other productivity enhancing deployment steps, including automated deployment (per file on change deployment).

Find the complete overview of all the CKS Development Tools Edition features on the documentation tab of the project site.

Recent Comments

  • ChristopheD

    Hi Keith
    Sorry for the late answer but I had some urgent problems to solve.
    It’s ok now the feature has been removed and there is no more message.
    thanks a lot for your help and time.

  • Keith Tuomi

    Don’t worry, I often am unable to wrap my head around SharePoint too. ;)

    It really does sound like what you need a is Workflow. A workflow let’s you perform business logic like you described – check out the getting started guide at http://msdn.microsoft.com/en-us/library/office/jj163917(v=office.15).aspx. SharePoint includes Workflow out of the box, all you need to do to get started is download a free copy of SharePoint Designer.

Follow me on Twitter