hdfs client implementation