You have a table now:
FILE_DATASOURCE:
FILE_KEY VARCHAR2(2048) PRIMARY KEY,
other fields....

You would break up FILE_DATASOURCE into:
FILE_NAMES:
FILE_ID number(10) PRIMARY KEY,
FILE_NAME varchar2(2048)

and
FILE_DATASOURCE:
FILE_ID number(10),
other fields...

Then, whenever you wanted to get all the information you would have a join on FILE_DATASOURCE and FILE_NAMES via the FILE_ID field.

For simpler queries, you could create a view called FILE_INFO that was defined as:
CREATE VIEW file_info AS
SELECT a.file_name file_key, b.*
FROM file_names a, file_datasource b
WHERE a.file_id = b.file_id

and it would look like your original FILE_DATASOURCE table.