Thursday, April 4, 2013

Basic SharePoint Terminology

Let us first understand a few basic terms used with SharePoint:

Farm: A Farm is the outermost boundry of your SharePoint Infrastructure. Just like you have Forest in Active Directory, you have Farm in SharePoint. A SharePoint Farm comprises of all your Application, Front End and Database servers depending on the topology of your infrastructure.

Farm Topology: The term "Topology" basically represents the arrangement of something. In SharePoint terms, it represents the arrangement of servers in a SharePoint farm.

SharePoint supports 4 types of Farm topologies:

1) Single Server or Standalone Farm

In this Farm topology SharePoint is installed on a single server with Integrated Database (SQL Server Express/Embedded edition). The integrated database comes with SharePoint setup itself. The reason I have highlighted the text in the above line is because you can easily get confused between Standalone Farm topology and Small Farm topology. I will explain this in the next point where I explain small farm topology.

This farm topology has a major disadvantage in that no more servers can be added to the farm. Also, integrated database (SQL) has a size limitation depending on the version of SharePoint you install.

2) Small Farm

This Farm topology consists of one Application server (SharePoint) and one database server (SQL).
In case we install both SQL and SharePoint on Single Server, that topology will also be termed as Small Farm and not Standalone Farm. This is because in standalone topology we use integrated database but in small farm topology we do a complete install of SQL, install SharePoint and connect SharePoint to the SQL instance.

I hope this explanation clears the confusion.

3) Medium Farm

In this Farm topology we generally have 2 Web front end servers, 1 or 2 Application servers and 2 database servers. The two WFEs are load balanced using software or a hardware load balancer and the database servers are clustered using windows clustering feature. The cluster may be an Active-Active cluster or an Active-Passive cluster depending on the business need. In cluster configuration, the drives are taken from storage devices (SAN), like Hitachi, VNX, Clarion, etc...

4) Large Farm

I think by now you would have guessed what a large farm topology is. Any addition of servers to the medium server farm topology makes it a large farm topology. We can have n number of WFEs, n number of Application servers and n number of Database servers depending on the business needs.


Central Administration: Once you have installed SharePoint in one of the above mentioned topologies, completed the PS Configuration Wizard, a Central administration website is provisioned by the url "http://YourServerName:PortNumber/" This is a web application through which you can manage complete SharePoint Farm regardless of the size or the topology of the farm. There can be only one central administration web application per Farm.

Content Database: SharePoint is a front end application. Just like every other front end application it stores all its data in a backend application i.e., SQL server. When we create a web application in SharePoint, we also create a database in SQL server with the naming convention wss_content_XYZ, where XYZ is whatever name we give it. All the site collections, subsites, libraries, lists etc under that web application store data in that database. This database is called a content database. We can have multiple content databases under a web application.

* When I say create a database in SQL server I don't mean we go to SQL server and create a database from there. Remember databases are always to be created from SharePoint and not from SQL. Not that they cannot be, but they must not be.

Configuration Database: A configuration database in SharePoint is what defines your SharePoint farm. It has all the information about all databases, servers and services that comprise the farm. It also stores information about “Internet Information Services (IIS) Web sites or Web applications, solutions, Web Part packages, site templates, and Web application and farm settings specific to SharePoint, such as default quota, blocked file types, and configuration”

The best thing about configuration database is that it serves as a central piece in SharePoint to allow administrators easily scale a SharePoint farm. All the global farm settings, most of IIS configuration , and even solution binaries are stored in the config database and will be automatically propagated from there when you join more servers to the farm.

WebApplication: A web application is nothing but a website hosted in IIS. When you create a web application, a web site corresponding to the web application is created in IIS and is assigned an application pool to isolate it from other web sites. A web application in SharePoint is created by the url "http://YourServerName:PortNumber".

Site Collection: As the name suggests, a site collection is a collection of sites with a top level site and its sub sites. A site collection is identified from url as: http://YourWebApplication/Sites/XYZ . Here, "XYZ" represents the site collection.

* A bare web application is not accessible till the time a site collection is created under it.

Sub Site: By now you would have guessed what a sub site is. A sub site is a SharePoint site under the top level site of a site collection. A sub site is generally represented as: http://YourWebApplicaton/Sites/YourSiteCollection/ABC . Here, "ABC" represents a sub site.

Managed Path: A managed path is more of a mount point. They play a major role in segeration of sites be it as per the company divisions or as per departments. In the url http://YourWebApplicaton/Sites/YourSiteCollection/YourSubSite "Sites" represents a managed path.

Managed paths are of two types: Explicit and WildCard

 a) Explicit managed paths can have only one site collection mounted to them. You can have n number of sub sites within that site collection but you cannot have another site collection mounted to that managed path. OOB "/" is an explicit managed path.

b) Wildcard managed path can have multiple site collections mounted to them. You can have n number of site collections and n number of sub sites within those site collections. OOB "/Sites" and "/Personal" are wildcard managed paths.

Thursday, March 28, 2013

What is SharePoint?

Alright then, I have finally got the time to write what I have always wanted to. This is going to be a series of blog posts starting with SharePoint basics, terminology and so on. We will begin the discussion with GUI and will move on to the commandline, both stsadm and PowerShell.

I strongly believe that feedback, questions and suggestions are a way of improvement so all your queries and suggestions are more than welcome.

So What is SharePoint basically? Well, after extensive reading and handson I would like to conclude it this way. SharePoint is an Entrprise solution for collaboration and effective content management. It offers centralized control over the complete infrastructure with tremendous ability to delegate control to the extent best suited for the business.

Some call it a website factory as you can create multiple websites with a single click of mouse, others call it a data repository because it can store large amounts of data.

Because this gigantic software integrates with multiple other technologies, I would strongly recommend you to be aware of Active Directory, SQL, Exchange and basics of networking as they help a lot in troubleshooting issues. There are multiple others as well but I have listed major ones to start with.