A surveillance system comprising: a plurality of cameras; media storage comprising a plurality of storage units which receive and store at least one video clip from each of the plurality of cameras; a database control system including a database server coupled to each of the plurality of cameras and to the plurality of storage units; and at least one workstation; wherein each of the plurality of cameras is configured to: establish a TCP connection to the database server; request and acquire configuration information from the database server; establish a TCP connection to a specific one of the plurality of storage units as indicated in the configuration information; record the at least one video clip to the specific one of the plurality of storage units based upon the configuration information; request an object identifier for the at least one video clip from the specific one of the plurality of storage units; send metadata for the at least one video clip to the specific one of the plurality of storage units; receive the object identifier for the at least one video clip from the specific one of the plurality of storage units; and send a request to the database server to record the object identifier and the metadata for the at least one video clip, wherein the database control system searches the plurality of storage units of the media storage for the at least one video clip from each of the plurality of cameras and queries the database server for the metadata for the at least one video clip from each of the plurality of cameras to retrieve the at least one video clip from each of the plurality of cameras in response to a query via a client application running on the at least one workstation. a plurality of cameras; media storage comprising a plurality of storage units which receive and store at least one video clip from each of the plurality of cameras; a database control system including a database server coupled to each of the plurality of cameras and to the plurality of storage units; and at least one workstation; wherein each of the plurality of cameras is configured to: establish a TCP connection to the database server; request and acquire configuration information from the database server; establish a TCP connection to a specific one of the plurality of storage units as indicated in the configuration information; record the at least one video clip to the specific one of the plurality of storage units based upon the configuration information; request an object identifier for the at least one video clip from the specific one of the plurality of storage units; send metadata for the at least one video clip to the specific one of the plurality of storage units; receive the object identifier for the at least one video clip from the specific one of the plurality of storage units; and send a request to the database server to record the object identifier and the metadata for the at least one video clip, establish a TCP connection to the database server; request and acquire configuration information from the database server; establish a TCP connection to a specific one of the plurality of storage units as indicated in the configuration information; record the at least one video clip to the specific one of the plurality of storage units based upon the configuration information; request an object identifier for the at least one video clip from the specific one of the plurality of storage units; send metadata for the at least one video clip to the specific one of the plurality of storage units; receive the object identifier for the at least one video clip from the specific one of the plurality of storage units; and send a request to the database server to record the object identifier and the metadata for the at least one video clip, wherein the database control system searches the plurality of storage units of the media storage for the at least one video clip from each of the plurality of cameras and queries the database server for the metadata for the at least one video clip from each of the plurality of cameras to retrieve the at least one video clip from each of the plurality of cameras in response to a query via a client application running on the at least one workstation.