SCID allows you to work with collections of chess games. A collection of chess games stored using the SCID format is called a database (or a base). A SCID database has three files: an Index file, a Name file and a Game file, with the extensions .si3, .sn3, and .sg3 respectively.
The file with an .si3 extension is called the Index file and consists of indexing information about the database games. More precisely, the file contains 41 bytes for each game in the base. About 28 bytes are used to describe the result, the date, and ID keys for players, events, and sites. The remaining 13 bytes are used to store information to speed up SCID searches. V. [HowScidSearchPositions] for more details.
The file with an .sn3 extension is called the Name file. It contains all the names used in the game description for each player, event, and site in the base. (Round names?) Each name is stored with the ID key used in the index file. This indexation scheme makes the name file the smallest of a SCID base.
The file with an .sn3 extension is called the Game file. It encodes the actual moves, variations and comments of each game in the base. The move encoding format is very compact: most moves take only one byte. Please note that games have no unique IDs, which means that SCID is not a relational database. In return, SCID is amazingly fast - see [HowScidSearchPositions] for a partial (in both sense of the word) explanation.
Wiki: AboutScidBases
Wiki: FileFormats
Wiki: HowToAnnotateGames
Wiki: HowToCompactDatabases
Wiki: HowToImportGames
Wiki: TheFileMenu
Wiki: TheFilter