2012-12-27 44 views
2

我想将SSTables导出为JSON。所以我使用。我可以使用命令提示符运行此蝙蝠,并可以在命令提示符处看到JSON结果打印。我使用了下面的命令:使用Cassandra中的工具sstable2json将JSON写入输出文件

sstable2json H:/cassandra/db/data/191/191/191-191-hd-1-Data.db 

我必须将这个JSON内容写入输出文件。对于我用下面的命令:

sstable2json -f H:/output.json H:/cassandra/db/data/191/191/191-191-hd-1-Data.db 

但该命令显示了我的异常,如:

 
You must supply exactly one sstable 
Usage: org.apache.cassandra.tools.SSTableExport
<sstable> [-k key [-k key [...]] -x key [-x key [...]]]

任何一个可以改正我的错误(如有)。我正在使用Cassandra 1.1.2版本。

回答

3

只是将stdout重定向到一个文件。你可以找到的文件重定向这里:http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/redirection.mspx?mfr=true

例如:然后

sstable2json H:/cassandra/db/data/191/191/191-191-hd-1-Data.db>mysstable.json 

内容将在一个名为mysstable.json文件。

+0

...您的解决方案对我来说工作得很好......然后我从Cassandra的SSTableExport.java中探索API ......它没有处理文件编写器的选项,如以下所述:http:// wiki。 apache.org/cassandra/Operations#Import_.2BAC8_export ...我提及的是否正确?... –

+0

看起来像维基是错误的或过时的。我已经更新了,谢谢。 –

+0

@Tyler Hobbs ..是否有可能使用命令“sstable2json H:/ cassandra/db/data/191/191> mysstable.json”导出整个列族如果不可能如何导出列族而无需定义191-191-hd-1-Data.db? – SANN3