NAME
Net::Cassandra - Interface to Cassandra
SYNOPSIS
my
$cassandra
= Net::Cassandra->new(
hostname
=>
'localhost'
);
my
$client
=
$cassandra
->client;
my
$key
=
'123'
;
my
$timestamp
=
time
;
eval
{
$client
->insert(
'Keyspace1'
,
$key
,
Net::Cassandra::Backend::ColumnPath->new(
{
column_family
=>
'Standard1'
,
column
=>
'name'
}
),
'Leon Brocard'
,
$timestamp
,
Net::Cassandra::Backend::ConsistencyLevel::ZERO
);
};
die
$@->why
if
$@;
eval
{
my
$what
=
$client
->get(
'Keyspace1'
,
$key
,
Net::Cassandra::Backend::ColumnPath->new(
{
column_family
=>
'Standard1'
,
column
=>
'name'
}
),
Net::Cassandra::Backend::ConsistencyLevel::QUORUM
);
my
$value
=
$what
->column->value;
my
$timestamp
=
$what
->column->timestamp;
warn
"$value / $timestamp"
;
};
die
$@->why
if
$@;
eval
{
$client
->remove(
'Keyspace1'
,
$key
,
Net::Cassandra::Backend::ColumnPath->new(
{
column_family
=>
'Standard1'
,
column
=>
'name'
}
),
$timestamp
);
};
die
$@->why
if
$@;
DESCRIPTION
This module provides an interface the to Cassandra distributed database. It uses the Thrift interface. This is changing rapidly and supports version 0.5.0 of Cassandra.
AUTHOR
Leon Brocard <acme@astray.com>.
COPYRIGHT
Copyright (C) 2009-2010, Leon Brocard
LICENSE
This module is free software; you can redistribute it or modify it under the same terms as Perl itself.