A computer implemented method at a first server of a cluster comprising at least two servers (106A, 106B, 106C, 406A, 406B, 406C) for providing a unique identifier (110, 200) to each file over the cluster, the method comprising: receiving (502, 604) a first request for a first file from a client (102, 104); in response to receiving the first request, generating (510, 606) a first unique identifier associated with the first file, wherein the first unique identifier comprises: a node identifier in a first portion (202, 608) of the first unique identifier identifying the first server; a first major sequence number in a second portion (204, 610) of the first unique identifier, the major sequence number being within a first range of numbers; and a first minor sequence number in a third portion (206, 612) of the first unique identifier, the minor sequence number being within a second range of numbers, wherein the first minor sequence number is incremented for each new file; sending the first unique identifier to the client; receiving, at the first server of the cluster, a second request for a second file; generating, upon determining that the first major sequence number should be incremented, a second unique identifier associated with the second file, wherein the second unique identifier comprises: the node identifier in a first portion of the second unique identifier; an incremented major sequence number in a second portion of the second unique identifier; and a second minor sequence number in a third portion of the second unique identifier, the second minor sequence number being at the beginning of the second range of numbers; and sending the second unique identifier to the client, wherein the method further comprises, prior to generating the second unique identifier: sending a request to a cluster service of the first server to reserve the incremented major sequence number; and receiving a response from the cluster service indicating that the incremented major sequence number has been reserved. receiving (502, 604) a first request for a first file from a client (102, 104); in response to receiving the first request, generating (510, 606) a first unique identifier associated with the first file, wherein the first unique identifier comprises: a node identifier in a first portion (202, 608) of the first unique identifier identifying the first server; a first major sequence number in a second portion (204, 610) of the first unique identifier, the major sequence number being within a first range of numbers; and a first minor sequence number in a third portion (206, 612) of the first unique identifier, the minor sequence number being within a second range of numbers, wherein the first minor sequence number is incremented for each new file; a node identifier in a first portion (202, 608) of the first unique identifier identifying the first server; a first major sequence number in a second portion (204, 610) of the first unique identifier, the major sequence number being within a first range of numbers; and a first minor sequence number in a third portion (206, 612) of the first unique identifier, the minor sequence number being within a second range of numbers, wherein the first minor sequence number is incremented for each new file; sending the first unique identifier to the client; receiving, at the first server of the cluster, a second request for a second file; generating, upon determining that the first major sequence number should be incremented, a second unique identifier associated with the second file, wherein the second unique identifier comprises: the node identifier in a first portion of the second unique identifier; an incremented major sequence number in a second portion of the second unique identifier; and a second minor sequence number in a third portion of the second unique identifier, the second minor sequence number being at the beginning of the second range of numbers; and the node identifier in a first portion of the second unique identifier; an incremented major sequence number in a second portion of the second unique identifier; and a second minor sequence number in a third portion of the second unique identifier, the second minor sequence number being at the beginning of the second range of numbers; and sending the second unique identifier to the client, wherein the method further comprises, prior to generating the second unique identifier: sending a request to a cluster service of the first server to reserve the incremented major sequence number; and receiving a response from the cluster service indicating that the incremented major sequence number has been reserved. sending a request to a cluster service of the first server to reserve the incremented major sequence number; and receiving a response from the cluster service indicating that the incremented major sequence number has been reserved.