Sitecore has been using Lucene search since version 5, which used the Sitecore.Data.Indexing namespace and Sitecore -> Indexes section in the Web.Config. Starting in Sitecore 6.4, they introduced a new Search namespace – Sitecore.Search, this uses the Sitecore -> Search -> Configuration -> Indexes section in Web.Config. From what I know, Sitecore recommends using the [...]
Unlike many content management systems which maintain content in a haphazard manner, Sitecore maintains data in a structured content tree.
Data is represented as items. These items of different types are combined in a tree structure such that an item can have a parent and child items.
Templates are like Object Oriented Classes. A template contains fields that contain the actual content for an item. An item is an instance of a template just as an Object is an instance of a class. A template can have a “Master” which is used to create an item of a template. A master plays the same role as an Object Oriented Constructor. Masters can be configured to specify default values for fields and can specify sub-items that should be created when an item is first created. Templates can be based on other templates and inherit their fields, much like Object Oriented inheritance.