用Python寫的我使用YCSB(雅虎雲服務基準)Linux文件 2節點卡桑德拉(2.0.2)集羣部署在的CentOS的性能測量。對於使用YCSB加載數據I執行以下的 -
執行使用Java程序
bin/ycsb load cassandra -P workloads/cassandraLoadA -s files/load.dat
此行使用屬性文件cassandraLoadA和並存儲在YCSB load.dat生成。這裏ycsb文件是用Python編寫的。現在我想從Java程序執行上述操作。我試着用ProcessBuilder和運行時對象但失敗。
使用的ProcessBuilder對象 -
ProcessBuilder builder = new ProcessBuilder("/DIRECTORY_HERE/bin/ycsb","load","cassandra","-P", "workloads/cassandraLoadA","-s","files/load.dat");
Map<String, String> environ = builder.environment();
final Process process = builder.start();
使用運行時對象 -
Process p = Runtime.getRuntime().exec("cd /DIRECTORY_HERE/bin/ycsb load cassandra -P workloads/cassandraLoadA -s files/load.dat");
p.waitFor();
Q1:我是不是做錯了什麼嗎?問題二:如何實現?
最佳關於下述
Avijoy
問題可能會被降低,但會提到可行的方法,所以至少有一種方法可以在投票前給出正確的方法。 –