cassandraに挑戦 その11 multiget_slice(0.6 API)

cassandra API のmultiget_sliceを使用して、任意のsuper columnの
任意のcolomnだけを取り出すサンプルコードを書いてみた。

サンプルコードはこちらのmultiget.php

データは以下のように入っているとする
cassandra> get Keyspace1.Super1['store1']['item1']
=> (column=title, value=ipod, timestamp=1267714302240)
=> (column=price, value=101, timestamp=1268052816239)
=> (column=description, value=ipod nano 8G / color:silver, timestamp=1268053455479)
Returned 3 results.
cassandra> get Keyspace1.Super1['store2']['item1']
=> (column=title, value=manga, timestamp=1267714346761)
=> (column=price, value=1000, timestamp=1267714336347)
Returned 2 results.
ここでmultiget.phpを実行すると、
Array
(
    [store2] => Array
        (
            [0] => cassandra_ColumnOrSuperColumn Object
                (
                    [column] => cassandra_Column Object
                        (
                            [name] => price
                            [value] => 1000
                            [timestamp] => 1267714336350
                        )

                    [super_column] =>
                )

        )

    [store1] => Array
        (
            [0] => cassandra_ColumnOrSuperColumn Object
                (
                    [column] => cassandra_Column Object
                        (
                            [name] => price
                            [value] => 101
                            [timestamp] => 1268052816240
                        )

                    [super_column] =>
                )
        )
)
store2, store1にある、item1の、priceだけが
取得できていることがわかります。

使い道によっては、すごく便利そうなので、メモメモ

人気の投稿