In Hadoop FS introduction you can find requirements for atomicity
Here are the core expectations of a Hadoop-compatible FileSystem. Some FileSystems do not meet all these expectations; as a result, some programs may not work as expected.
Atomicity
There are some operations that MUST be atomic. This is because they are often used to implement locking/exclusive access between processes in a cluster.
- Creating a file. If the overwrite parameter is false, the check and creation MUST be atomic.
- Deleting a file.
- Renaming a file.
- Renaming a directory.
- Creating a single directory with mkdir().
...
Most other operations come with no requirements or guarantees of atomicity.
So to be sure you must check underlying filesystem. But based on those requirements answers are:
- yes
- listed above
- no
- imho renaming a file is good choice for the job