cassandra の行のすべての列名を取得したいのですが、どうすれば phpcassa でそれを行うことができますか?
phpcassa がサポートしていない場合、他の言語やライブラリでサポートされていますか?
私の場合、列名は短いですが、行は長く(約1000以上)、データは大きい(約100K)
phpCassa だけで名前を直接取得するということですか? 直接行う方法はわかりませんが、以前はすべての行を取得してから、次のように、列ファミリーから取得した配列に対して foreach ループを実行していました。
1.-どこでも使用できる小さな関数(必要に応じて独自の関数を作成してください;)):
function f_get_data_as_array($p_pool, $p_cf, $p_key, $p_col_count = 100, $p_column_names = NULL, $p_range_start = '', $p_range_end = '', $p_inverted_sort = false)
{
try{
$lv_slice = new ColumnSlice($p_range_start, $p_range_end, $p_col_count, p_inverted_sort);
$lv_cf = new ColumnFamily($p_pool, $p_cf);
$lv_cf->insert_format = ColumnFamily::ARRAY_FORMAT;
$lv_cf->return_format = ColumnFamily::ARRAY_FORMAT;
$lv_result = $lv_cf->get($p_key, $lv_slice, $p_column_names);
}catch(Exception $lv_e)
{
return false;
}
return $lv_result;
2.- 最初の 4 つのパラメーターを使用して呼び出し、プール、列ファミリー名、必要なキー、および取得する列の数を設定します (必要に応じて数を設定します)。
3.- 返された配列に対する foreach ループで、各列名を取得します。または、列ファミリーから取得する構造がわかっている場合は、適切なインデックスを使用する必要があります。おそらく: $lv_result[0][0]、$lv_result[0][1] など...
それが役に立てば幸い。そして私の英語でごめんなさい!