File Manager - What does the application do?

The file manager provides a solution to collect, catalog, and store files. Similar to the idea behind an iTunes Library, except the file manager can support any type of data, not just audio and videos. The file manager's ability to process any type of data makes it extremely flexible.

The File Manager ingests files and any available Metadata used to describe the files.

Once the files and Metadata are collected, the File Manager will add the Metadata to the Catalog to help describe the files being ingested. The Catalog will collect the filename, original location, and any additional Metadata as defined by the user.

Once the catalog has been populated the File Manager will move the file(s) into a final location on disk for archival storage. Once the file(s) have been written to disk and confirmed, the Catalog is updated with the final on-disk location of the file(s).

How does the File Manager know what metadata to collect about each ingested file?

Within the initial setup of the File Manager application, Product Types are defined by the user. Each Product Type has a list of associated Metadata Elements that will be entered into the catalog during the ingestion process if available. Missing metadata elements will not cause the File Manager to stop the ingestion process, instead the File Manager will give a warning that metadata was not collected, but will continue the process.


To begin to understand what the file manager does and how it operates I think we need to discuss some critical vocabulary since many terms are used in an extremely specific manner that relates only to this application.

Product Type = Grouping of Data used to define what metadata should be collected by the File Manager. It can also be used to specify where the products are stored on disk (directory structure) after ingestion.

File = Piece of data within a product which will be ingested by the File Manager and processed. Eventually this piece of data shall be stored on disk after its associated metadata has been collected and committed to the catalog.

Metadata = Data associated with a File which stores descriptive information about the File.

Elements = Single entry of Metadata used to describe a product. The following examples show elements like Artist, Year, Album when tracking music metadata.

Product (flat) = One or more files pulled from one directory.

Flat Example - File Manager only looks at the NineInchNails FOLDER

Product Type = MUSIC
Product = Nine Inch Nails Folder (Flat - NO SUBFOLDERS) @\\usr\itunes\music\NineInchNails\

File = \\usr\itunes\music\NineInchNails\the_day_the_world_went_away.flac
Metadata = \\usr\itunes\music\NineInchNails\the_day_the_world_went_away.met
Element(s) = Artist > NIN
Year > 1999
Album > The Fragile
Title > The day the World Went Away
Disc > 1
Track > 02

File = \\usr\itunes\music\NineInchNails\The_Frail.mp3
Metadata = \\usr\itunes\music\NineInchNails\The_Frail.met
Element(s) = Artist > NIN
Year > 1999
Album > The Fragile
Title > The Frail
Disc > 1
Track > 03

Product (hierarchical) = One or more files pulled from multiple directories.

Hierarchical Example - File Manager examines all SUBFOLDERS under the itunes FOLDER

Product Type = MUSIC
Product = iTunes Library Folder (Hierarchical - SUBFOLDERS) @\\usr\itunes\..

File = \\usr\itunes\music\beatles\revolver\Yellow_Submarine_06.mp3
Metadata = \\usr\itunes\music\beatles\revolver\Yellow_submarine_06.met
Element(s) = Artist > The Beatles
Year > 1966
Album > Revolver
Title > Yellow Submarine

File = \\usr\itunes\music\beatles\abbey_road\Here_Comes_The_Sun_07.aac
Metadata = \\usr\itunes\music\beatles\abbey_road\Here_Comes_The_Sun_07.met
Element(s) = Artist > The Beatles
Year > 1969
Album > Abbey Road
Title > Here Comes the Sun

Catalog - Stores the Metadata and a reference pointer to the ingested Data Product

Validation Layer - Validates what metadata is collected for each Product Type. This does not require that specific metadata elements are collected, just to collect what is available at time of ingestion.

Versioner - Specifies the PATH where the final Data Product shall be written to disk after ingestion

  • No labels