1

Cassandra community edition 2.1.2 をダウンロードしました (最新の開発リリースであることはわかっているため、安定していない可能性があります)。その理由は、現在の安定版でハードコードされた「Keyspace1」の代わりに、希望するキースペースでツールを実行できる YAML ベースの構成をサポートする cassandra-stress ツールの新しいバージョンです。

Windows 7 マシンで、コマンド ラインから cassandra-stress を実行し、YAML ファイルへのパスを指定しようとすると、「C:\」で始まるパスの「:」文字が原因で常にエラーが発生します。

C:\Program Files\DataStax Community\apache-cassandra\tools\bin>cassandra-stress user profile=../cqlstress-musicdb.yaml ops(insert=1)

出力は

Illegal character in path at index 10: file:///C:\Program Files\DataStax Community\apache-cassandra\tools\bin\cqlstress-musicdb.yaml

パスを指定するためにさまざまなオプションを試しました

  • 絶対パスを与える
  • 二重引用符と単一引用符で絶対パスを指定する
  • YAML を同じフォルダーにコピーし、ファイル名を指定するだけです
  • 一重引用符スペースを使用すると問題が発生するため、YAML をスペースなしでパスにコピーします。
  • バックスラッシュを使用して「:」をエスケープする
  • 最初から「C:」を無視して絶対パスを「/」で直接開始する
  • cassandraに付属する別のサンプルYAMLファイルを試しました

次のステップとして、ソースコードをダウンロードしてそこで何が起こっているかを確認するか、組織で入手できる場合は Linux マシンでこれを試してみる予定ですが、この質問をすることを考えたのは誰ですか助けることができます。

ありがとう。

4

2 に答える 2

2

正確に何が起こっているのかはわかりませんが、新しい cassandra-stress が Windows のプロファイル パスでこのような問題を抱えているのはバグのようです。

次の作業を行うことができました。

まず、.yaml ファイルをスペースを含まないパス (c:\temp など) にコピーします。

次に、次のように、"file:///" プレフィックスを使用してストレス コマンドを実行します。

C:\>cd "Program Files\DataStax Community\apache-cassandra\tools"
C:\Program Files\DataStax Community\apache-cassandra\tools>bin\cassandra-stress user profile=file:///c:/temp/cqlstress-example.yaml ops(insert=1)

c:\cassandraWindows では、Program Files の下のデフォルトではなく、次のようなパスにインストールする方が簡単な場合があります。(ディレクトリ名にこれらすべてのスペースを含めないようにします。)

于 2014-12-10T22:02:04.857 に答える
1

この問題は、Datastax Community Edition for Windows の 2.1.5 エディションにも存在します。スタックは e:\cassandra の下にインストールされますが、まだ失敗します :-(。文書化されていないのは、次のような構文を使用してフルパスを指定する必要があることに注意してください。

file:///c:/temp/cqlstress-example.yaml

もう 1 つの残酷なハックは、ローカル Apache サーバーをセットアップし、そこに yaml ファイルを配置して、サーバーから提供されるプロファイル パスを使用することです。

bin\cassandra-stress user profile= http://localhost/sample.yaml ops(insert=1)

于 2015-05-16T05:33:35.440 に答える