This course examines the methods used to search for information in large digital collections (e.g. Google) and how digital content is gathered by search engines. We study classic techniques of indexing documents and searching text and also new algorithms that exploit properties of the Web (e.g. links) and other digital collections, including multimedia collections. We contrast the problems and requirements of two extremes: database systems and Web search engines. We also examine systems aspects of search technology: how distributed computing and storage are used to make information delivery efficient.