dreamfactory / php-webhdfs
PHP WebHDFS,由 https://github.com/simpleenergy/php-WebHDFS 分支而来
1.1.1
2023-03-03 10:30 UTC
Requires
- php: >=5.4.0
- ext-curl: *
- ext-json: *
README
描述
php-WebHDFS 是一个针对 WebHDFS 的 PHP 客户端。
依赖项
通过 composer 安装
composer require dreamfactory/php-webhdfs
用法
文件和目录操作
创建并写入文件
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');
连接文件
$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');