This module implements a caching layer around BerkeleyDB for object persistence.
It implements the basic methods necessary to add, retrieve, and remove objects.
The main advantage over other caching modules is performance. I've attempted to
stick with a Cache::Cache-like interface as much as possible, though it may
differ here and there.
Class::DBI::LazyInflate is a utility class that allows you to create
DBI columns that only inflate to an object when it is required.
When a row is fetched, columns specified via has_lazy() is wrapped
by Data::Lazy, such that it is inflated only when the column is
actually used.
By taking the busy work out of using Class::DBI as you see fit, your code
becomes more useful by size. Most of us end up using at least a couple
Class::DBI extensions in our programs, and it's just a pain. Enter the Swiss
Army Knife.
The DBD::Mock perl module is a simple mock DBD implementation used for testing.
It's entirely self-contained so that you can extract the single library file
(DBD/Mock.pm), put it in your own distribution and be able to run DBI-based
tests even though you don't have information about a database.
DBD::PgPP is a Pure Perl client interface for the PostgreSQL database.
It implements the PostgreSQL client/server network protocol and doesn't
need an external PostgreSQL client library like "libpq" for it to work.
Consequently, it allows one to connect to a PostgreSQL server from
operating systems to which PostgreSQL has not been ported.
This module automatically inflates/deflates DateTime objects
corresponding to applicable columns. Columns may also be
defined to specify their nature, such as columns representing a
creation time (set at time of insertion) or a modification time
(set at time of every update).
DBIx::Class::Schema::Config is a subclass of DBIx::Class::Schema that
allows the loading of credentials from a file. The actual code itself
would only need to know about the name used in the configuration file.
This aims to make it simpler for operations teams to manage database
credentials.
This module provides a synchronous and asynchronous driver for Tarantool.
The driver does not have external dependencies, but includes the official
light-weight Tarantool C client (a single C header which implements all
protocol formatting) for packing requests and unpacking server responses.
This module allows use of the CQL3 interface of a Cassandra
database. It fully supports asynchronous operation via IO::Async,
allowing both direct queries and prepared statements to be managed
concurrently, if required. Alternatively, as the interface is entirely
based on Future objects, it can be operated synchronously in a
blocking fashion by simply awaiting each individual operation by
calling the get method.
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.