我想獲得cassandra中所有行的列名,我怎麼能在phpcassa中做到這一點?如何使用phpcassa獲取cassandra中所有行的列名?
如果phpcassa不支持它,還有其他的語言,libs可以做到嗎?
在我的情況下,列名是短暫的,但排很長(約1000 +),數據是大(約10萬)
我想獲得cassandra中所有行的列名,我怎麼能在phpcassa中做到這一點?如何使用phpcassa獲取cassandra中所有行的列名?
如果phpcassa不支持它,還有其他的語言,libs可以做到嗎?
在我的情況下,列名是短暫的,但排很長(約1000 +),數據是大(約10萬)
你有一個很好的問題。嘗試類似的東西:
$pool = new ConnectionPool('feed', array('127.0.0.1'));
$raw = $pool->get();
$rows = $raw->client->execute_cql_query("SELECT * FROM posts", cassandra_Compression::NONE);
var_dump($rows);
也許這將幫助...
你的意思是直接和僅與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:我把它使用前四個參數,設置池,列姓,我需要的鍵和數字我想要的列(根據需要設置數字)。
3.-返回數組的foreach循環以獲取每個列的名稱。或者,如果您知道從列族中獲得的結構,則只需使用正確的索引即可:$ lv_result [0] [0],$ lv_result [0] [1]等等......
希望它有幫助。抱歉我的英語!