GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  DATA::MODEL::DRIVER::MEMCACHED (3)

.ds Aq ’

NAME

Data::Model::Driver::Memcached - storage driver for memcached protocol

CONTENTS

SYNOPSIS



  package MyDB;
  use base Data::Model;
  use Data::Model::Schema;
  use Data::Model::Driver::Memcached;
 
  my $dbi_connect_options = {};
  my $driver = Data::Model::Driver::Memcached->new(
      memcached => Cache::Memcached::Fast->new({ servers => [ { address => "localhost:11211" }, ], }),
  );
 
  base_driver $driver;
  install_model model_name => schema {
    ....
  };



DESCRIPTION

Storage is used via a memcached protocol.

It can save at memcached, Tokyo Tyrant, kai, groonga, etc.

OPTIONS

    serializer



  my $driver = Data::Model::Driver::Memcached->new(
      memcached  => Cache::Memcached::Fast->new({ servers => [ { address => "localhost:11211" }, ], }),
      serializer => Default, # default is L<Data::MessagePack> or messagepack minimum set for Data::Model
  );



you can use customizable serializer.



  {
      package MySerializer;
      sub serialize {
          my($class, $c, $hash) = @_;
          # you serialize of $hash
          return $serialize_string;
      }
      sub deserialize {
          my($class, $c, $serialize_string) = @_;
          ...
          return $hash;
      }
  }
  my $driver = Data::Model::Driver::Memcached->new(
      memcached  => Cache::Memcached::Fast->new({ servers => [ { address => "localhost:11211" }, ], }),
      serializer => +MySerializer,
  );



    strip_keys

strip tables key data, Because key data stored in a memcached key part.



  my $driver = Data::Model::Driver::Memcached->new(
      memcached  => Cache::Memcached::Fast->new({ servers => [ { address => "localhost:11211" }, ], }),
      strip_keys => 1,
  );



    ignore_undef_value

When <B>valueB> is <B>undefB>, a value is not put into storage.

It becomes size saving at the time of obvious empty data.



  my $driver = Data::Model::Driver::Memcached->new(
      memcached          => Cache::Memcached::Fast->new({ servers => [ { address => "localhost:11211" }, ], }),
      ignore_undef_value => 1,
  );



    model_name_realname column_name_rename

compress your table name and column name.

OPTIONS EXAMPLE



  my $driver = Data::Model::Driver::Memcached->new(
      memcached  => Cache::Memcached::Fast->new({ servers => [ { address => "localhost:11211" }, ], namespace => test, }),
      serializer => Default,
      strip_keys => 1,
  );
  install_model simple => schema {
      schema_options model_name_realname => s;
      key id;
      column id;
      column name;
      column nickname;
      schema_options column_name_rename => {
          id       => 1,
          name     => 2,
          nickname => 3,
      };
  };

  $model->set(
      simple => keyvalue => {
          name     => osawa,
          nickname => yappo,
      }
  );
  # same code
  $memcached->add(
      tests:keyvalue,
      Data::MessagePack->pack({ 2 => osawa, 3 => yappo }),
  );



SEE ALSO

Cache::Memcache::Fast, Data::Model

AUTHOR

Kazuhiro Osawa <yappo <at> shibuya <doet> pl>

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

POD ERRORS

Hey! <B>The above document had some coding errors, which are explained below:B>
Around line 543: Non-ASCII character seen before =encoding in ’<doet>’. Assuming UTF-8
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 DATA::MODEL::DRIVER::MEMCACHED (3) 2013-07-08

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.