Martin Šárfy
and 1 contributors

NAME

Tie::LevelDB - A Perl Interface to the Google LevelDB NoSQL database

SYNOPSIS

  use Tie::LevelDB;

  tie my %hash, 'Tie::LevelDB', "/tmp/testdb";
  # Use the %hash array
  untie %hash;

  -- OR --

  use Tie::LevelDB; 

  my $db = new Tie::LevelDB::DB("/tmp/testdb");
  $db->Put("Google","Don't be evil!");
  print $db->Get("Google")."\n";
  $db->Delete("Google");

  my $batch = new Tie::LevelDB::WriteBatch;
  $batch->Delete("Google");
  $batch->Put("Microsoft","Where Do you Want to Go Today?");
  $db->Write($batch);

  my $it = $db->NewIterator;
  for($it->SeekToFirst;$it->Valid;$it->Next) {
     print $it->key.": ".$it->value."\n";
  }

DESCRIPTION

Tie::LevelDB is the Perl Interface for Google NoSQL database called LevelDB. See http://code.google.com/p/leveldb/ for more details.

Interface is implemented both as a reflection of an original LevelDB C++ API and a Perl-ish TIEHASH mechanism.

EXPORT

None by default.

LIMITATIONS

LevelDB does not support storing of undef values. If undef is stored, the key is deleted instead.

Perl support for Options specification is not covered.

To use SNAPPY compression method, install it from http://code.google.com/p/snappy first and then re-install this module.

LevelDB sources (version 2011-07-29) are bundled with this packages.

SEE ALSO

http://code.google.com/p/leveldb/, DB_File(3), tie.

AUTHOR

Martin Sarfy, <martin.sarfy@sokordia.cz>

COPYRIGHT AND LICENSE

Copyright (C) 2011 by Sokordia, s.r.o., http://www.sokordia.cz

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.1 or, at your option, any later version of Perl 5 you may have available.