問題タブ [phpcassa]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cassandra - phpcassaでのcassandra Javaヒープスペースの問題
現在、ツールを使用していくつかのストレス テストを行っていab
ます。カサンドラでは、単一の挿入はうまくいっています。ただし、バッチ挿入に関しては、現在 Java のメモリ不足エラー: Java Heap Space に対処しています。
2Gのメモリを搭載したUbuntuサーバー13.04がインストールされた仮想ボックスマシンがあります
Cassandraの内部構成についてはよくわかりません。
サイズ100のバッチ挿入を作成しています( に100挿入BATCH
)。
このエラーが表示された後、cqlsh
アクセスできなくなりましnodetool
た。ほぼ 1 時間アクセスできません。
高負荷でこのエラーを修正するにはどうすればよいですか?
HTTP POST
注 :リクエストによる単一の挿入では発生しません。
注: 私の列ファミリーには、TimeUUIDType のキーがあり、列の値はint
s とvarchar
sです。
更新: テスト結果によると、6000 リクエストの前に何も問題がなかったことが示されています。ただし、7000 になると、php コードは次のようにスローします。
Error connecting to 127.0.0.1: Thrift\Exception\TTransportException: TSocket: timed out reading 4 bytes from 127.0.0.1:9160
さらに、cassandra は高負荷時に次のログを記録します。
java - Cassandra データモデルの単一のキースペースまたは複数のキースペース
単一のキースペースまたは複数のキースペースを使用してデータを管理するのに最適なものはどれですか。より多くのクライアントを持つアプリケーションがあるとします。各クライアントは大量のデータを送信し、時系列の列にデータを保存しています。クライアントごとに個別のキースペースを使用すると、Cassandra でデータを管理するのに適していますか? アプリケーションで 1 つのクライアントに対して 1 つのキースペースを使用する場合の長所と短所は何ですか?
cassandra - phpcassaでtimeuuidを日時に変換する
cqlsh で関数を呼び出さずに timeuuid から日付を取得しようとしていますdateOf(id)
。それで、timeuuidをdateに変換できるphpcassaの関数はありますか?
database-design - 時系列データの読み取り性能
センサーの時系列データをcassandraに保存するには?
ここで私はパフォーマンスをチェックしました
10000 の時系列データ データを持つ cassandra 複合 columnfamily 単一行キーでは、クエリ: select * from deviceidcomposite where did='Dev001' limit 5000
ケース 1:
Devid(行キー)
ケース 2:
標準カラムファミリー
時系列モデルはどれ?
他のより良い方法!私のパフォーマンスを上げるために
cassandra - phpcassa が LongType と dateOf(TimeUUIDType) で警告をスローする
カサンドラに次のテーブルがあります。
c_date
レポートを日付別にクエリするためのものです。
c_n
ホットスポットを防止するノードの数 (データを均等に分散するノードの数) です。
c_id
挿入された timeuuid です。
私の選択クエリ(cql 3)は次のとおりです。
結果セットを正常に取得しました。ただし、別の例( here)でcql_get_rows()
実装された関数を使用すると、
タイムスタンプ (dateOf(id)) を正しく解析できず、bigint フィールドは次の警告を生成します。
から返されるデータcql_get_rows()
は次のとおりです。
この関数が警告をスローするのを防ぎ、タイムスタンプを日付形式で取得するにはどうすればよいですか? (@ の使用法を提案しないでください)
php - Cassandra と PHP を接続する方法
「PHPCassa」を使用して Cassandra を php に接続するのに助けが必要です。試してみましたが、次の例外が発生しました。Web サーバーとして Ubuntu を使用しています。
NoServerAvailable Object ( [message:protected] => すべてのサーバーに 2 回接続しようとしましたが、すべての試行が失敗しました。最後のエラーは次のとおりです: 例外 'cassandra_InvalidRequestException' とメッセージ 'キースペース 'testApp' が存在しません' が /var/ にありますwww/Cassandra/phpcassa/thrift/packages/cassandra/Cassandra.php:138 スタック トレース: #0 /var/www/Cassandra/phpcassa/thrift/packages/cassandra/Cassandra.php(138): thrift_protocol_read_binary(Object(TBinaryProtocolAccelerated) , 'cassandra_Cassa...', false) #1 /var/www/Cassandra/phpcassa/thrift/packages/cassandra/Cassandra.php(113): CassandraClient->recv_set_keyspace() #2 /var/www/Cassandra/phpcassa /connection.php(102): CassandraClient->set_keyspace('testApp') #3 /var/www/Cassandra/phpcassa/connection.php(84): ConnectionWrapper->set_keyspace('testApp') #4 /var/www/Cassandra/phpcassa/connection.php(222): ConnectionWrapper->__construct('testApp', '127.0.0.1:9160', NULL, true, 5000, 5000) #5 /var /www/Cassandra/phpcassa/connection.php(258): ConnectionPool->make_conn() #6 /var/www/Cassandra/phpcassa/connection.php(352): ConnectionPool->get() #7 /var/www /Cassandra/phpcassa/connection.php(287): ConnectionPool->call('describe_keyspa...', 'testApp') #8 /var/www/Cassandra/phpcassa/columnfamily.php(194): ConnectionPool->describe_keyspace () #9 /var/www/Cassandra/index.php(7): ColumnFamily->__construct(Object(ConnectionPool), 'Users') #10 {main} [string:Exception:private] => [code:protected] ] => 0 [file:protected] => /var/www/Cassandra/phpcassa/connection.php [line:protected] => 233 [trace:Exception:private] =>配列 ( [0] => 配列 ( [ファイル] => /var/www/Cassandra/phpcassa/connection.php [行] => 258 [関数] => make_conn [クラス] => ConnectionPool [タイプ] => - > [引数] => 配列 ( ) ) [1] => 配列 ( [ファイル] => /var/www/Cassandra/phpcassa/connection.php [行] => 352 [関数] => get [クラス] = > ConnectionPool [タイプ] => -> [引数] => 配列 ( ) ) [2] => 配列 ( [ファイル] => /var/www/Cassandra/phpcassa/connection.php [行] => 287 [関数] => call [class] => ConnectionPool [type] => -> [args] => Array ( [0] => describe_keyspace [1] => testApp ) ) [3] => Array ( [file] => /var/www/Cassandra/phpcassa/columnfamily.php [行] => 194 [関数] => describe_keyspace [クラス] => ConnectionPool [タイプ] => -> [引数] => 配列 ( ) ) [4] = > 配列 ( [ファイル] =>/var/www/Cassandra/index.php [行] => 7 [関数] => __construct [クラス] => ColumnFamily [型] => -> [引数] => 配列 ( [0] => ConnectionPool オブジェクト ( [キースペース] => testApp [servers:ConnectionPool:private] => Array ( [0] => 127.0.0.1:9160 ) [pool_size:ConnectionPool:private] => 5 [send_timeout:ConnectionPool:private] => 5000 [recv_timeout :ConnectionPool:private] => 5000 [credentials:ConnectionPool:private] => [framed_transport:ConnectionPool:private] => 1 [queue:ConnectionPool:private] => Array ( ) [keyspace_description:ConnectionPool:private] => [max_retries ] => 5 [リサイクル] => 10000 [統計] => 配列 ( [作成] => 0 [失敗] => 2 [リサイクル] => 0 ) [list_position] => 0 ) [1] => ユーザー ) ) ) [前:例外:非公開] => )7 [function] => __construct [class] => ColumnFamily [type] => -> [args] => Array ( [0] => ConnectionPool Object ( [keyspace] => testApp [servers:ConnectionPool:private] =>配列 ( [0] => 127.0.0.1:9160 ) [pool_size:ConnectionPool:private] => 5 [send_timeout:ConnectionPool:private] => 5000 [recv_timeout:ConnectionPool:private] => 5000 [credentials:ConnectionPool:private] => [framed_transport:ConnectionPool:private] => 1 [queue:ConnectionPool:private] => Array ( ) [keyspace_description:ConnectionPool:private] => [max_retries] => 5 [リサイクル] => 10000 [stats] =>配列 ( [作成] => 0 [失敗] => 2 [リサイクル] => 0 ) [list_position] => 0 ) [1] => ユーザー ) ) ) [前:例外:プライベート] => )7 [function] => __construct [class] => ColumnFamily [type] => -> [args] => Array ( [0] => ConnectionPool Object ( [keyspace] => testApp [servers:ConnectionPool:private] =>配列 ( [0] => 127.0.0.1:9160 ) [pool_size:ConnectionPool:private] => 5 [send_timeout:ConnectionPool:private] => 5000 [recv_timeout:ConnectionPool:private] => 5000 [credentials:ConnectionPool:private] => [framed_transport:ConnectionPool:private] => 1 [queue:ConnectionPool:private] => Array ( ) [keyspace_description:ConnectionPool:private] => [max_retries] => 5 [リサイクル] => 10000 [stats] =>配列 ( [作成] => 0 [失敗] => 2 [リサイクル] => 0 ) [list_position] => 0 ) [1] => ユーザー ) ) ) [前:例外:プライベート] => )配列 ( [0] => ConnectionPool オブジェクト ( [キースペース] => testApp [servers:ConnectionPool:private] => 配列 ( [0] => 127.0.0.1:9160 ) [pool_size:ConnectionPool:private] => 5 [send_timeout :ConnectionPool:private] => 5000 [recv_timeout:ConnectionPool:private] => 5000 [credentials:ConnectionPool:private] => [framed_transport:ConnectionPool:private] => 1 [queue:ConnectionPool:private] => Array ( ) [ keyspace_description:ConnectionPool:private] => [max_retries] => 5 [recycle] => 10000 [stats] => Array ( [created] => 0 [failed] => 2 [recycled] => 0 ) [list_position] = > 0 ) [1] => ユーザー ) ) ) [前:例外:プライベート] => )配列 ( [0] => ConnectionPool オブジェクト ( [キースペース] => testApp [servers:ConnectionPool:private] => 配列 ( [0] => 127.0.0.1:9160 ) [pool_size:ConnectionPool:private] => 5 [send_timeout :ConnectionPool:private] => 5000 [recv_timeout:ConnectionPool:private] => 5000 [credentials:ConnectionPool:private] => [framed_transport:ConnectionPool:private] => 1 [queue:ConnectionPool:private] => Array ( ) [ keyspace_description:ConnectionPool:private] => [max_retries] => 5 [recycle] => 10000 [stats] => Array ( [created] => 0 [failed] => 2 [recycled] => 0 ) [list_position] = > 0 ) [1] => ユーザー ) ) ) [前:例外:プライベート] => )5 [send_timeout:ConnectionPool:private] => 5000 [recv_timeout:ConnectionPool:private] => 5000 [credentials:ConnectionPool:private] => [framed_transport:ConnectionPool:private] => 1 [queue:ConnectionPool:private] => 配列( ) [keyspace_description:ConnectionPool:private] => [max_retries] => 5 [recycle] => 10000 [stats] => Array ( [created] => 0 [failed] => 2 [recycled] => 0 ) [ list_position] => 0 ) [1] => ユーザー ) ) ) [previous:Exception:private] => )5 [send_timeout:ConnectionPool:private] => 5000 [recv_timeout:ConnectionPool:private] => 5000 [credentials:ConnectionPool:private] => [framed_transport:ConnectionPool:private] => 1 [queue:ConnectionPool:private] => 配列( ) [keyspace_description:ConnectionPool:private] => [max_retries] => 5 [recycle] => 10000 [stats] => Array ( [created] => 0 [failed] => 2 [recycled] => 0 ) [ list_position] => 0 ) [1] => ユーザー ) ) ) [previous:Exception:private] => )0 [失敗] => 2 [リサイクル] => 0 ) [list_position] => 0 ) [1] => ユーザー ) ) ) [前:例外:プライベート] => )0 [失敗] => 2 [リサイクル] => 0 ) [list_position] => 0 ) [1] => ユーザー ) ) ) [前:例外:プライベート] => )
cassandra - phpcassa で作成された列ファミリーが cqlsh で表示されず、その逆も同様です
phpcassa で列ファミリーを作成しました。以下はコードです
cqlsh を使用してデモ キースペースに移動すると、そこからレコードを選択できません。
また、逆の場合、CREATE TABLE 構文 phpcassa を使用して cqlsh でテーブルを作成しているときに、それを見つけることができず、NOTFOUND 例外をスローします。