一.代碼(有bug)
GitHub - michaelbutler/php-WebHDFS: A PHP client for WebHDFS
二.調用代碼
1.代碼1.代碼
|
GitHub - michaelbutler/php-WebHDFS: A PHP client for WebHDFS
|
GitHub - michaelbutler/php-WebHDFS: A PHP client for WebHDFS
四.代碼有bug。當上傳文件時,這個代碼有bug
解決方式,加頭即可。
四.調用說明,來自README.md
文件和目錄操作
創建和寫入文件
hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > create(' user / hadoop-username / new-file.txt ',' local-file.txt ');
直接創建內容并將其寫入文件
hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > createWithData(' user / hadoop-username / new-file.txt ',' content ');
附加到文件
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > append(' user / hadoop-username / file-to-append-to.txt ',' local-file.txt ');
Concat文件
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > concat(' user / hadoop-username / concatenated-file.txt ',' / test / file1,/ test / file2,/ test / file3 ');
打開并讀取文件
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ response = $ hdfs - > open(' user / hadoop-username / file.txt ');
制作目錄
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > mkdirs(' user / hadoop-username / new / directory / structure ');
創建符號鏈接
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > createSymLink(' user / hadoop-username / file.txt ',' / user / hadoop-username / symlink - to -file.txt ');
重命名文件/目錄
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > rename(' user / hadoop-username / file.txt ',' / user / hadoop-username / renamed -file.txt ');
刪除文件/目錄
hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > delete(' user / hadoop-username / file.txt ');
文件/目錄的狀態
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ response = $ hdfs - > getFileStatus(' user / hadoop-username / file.txt ');
列出目錄
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ response = $ hdfs - > listStatus(' user / hadoop-username / ');
其他文件系統操作
獲取目錄的內容摘要
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ response = $ hdfs - > getContentSummary(' user / hadoop-username / ');
獲取文件校驗和
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ response = $ hdfs - > getFileChecksum(' user / hadoop-username / file.txt ');
獲取主目錄
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ response = $ hdfs - > getHomeDirectory();
設置權限
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > setPermission(' user / hadoop-username / file.txt ',' 777 ');
設置所有者
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > setOwner(' user / hadoop-username / file.txt ',' other-user ');
設置復制因子
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ hdfs - > setReplication(' user / hadoop-username / file.txt ',' 2 ');
設置訪問或修改時間
$ hdfs = new WebHDFS(' mynamenode.hadoop.com ',' 50070 ',' hadoop-username '); $ response = $ hdfs - > setTimes(' user / hadoop-username / file.txt ');