2009-04-26 5 views
3

Das Perl DBI Modul ermöglicht mir die Verbindung zu vielen verschiedenen Arten von SQL-Datenbank transparent. Gibt es ein äquivalentes Perl-Modul für nicht-relationale Schlüssel-Wert-Paar-Datenbanken?Gibt es ein nicht-relationales Äquivalent von DBI in Perl?

Zum Beispiel, eine Schnittstelle, die mich mit einer BerkeleyDB (oder sogar nur einem Perl-Hash?) Entwickeln könnte, aber zu etwas wie memcachedb oder CouchDB oder sogar einer Cloud-Datenbank wie von Amazon SinmpleDB oder Google AppEngine Datastore wechseln .

(Ist das, was Tie :: Hash tut? In diesem Fall, wo kann ich eine Zusammenfassung von Implementierungen finden?)

Antwort

4

tie ist ein allgemeiner Mechanismus „eine Objektklasse in einer einfachen Variablen zu verstecken.“ Tie::Hash ist eine praktische Dienstprogrammklasse zum Implementieren von Hash-Bindungen.

Das Verknüpfen von Objekten in einen Hash ist daher eine geeignete Abstraktion für den Zugriff auf Schlüssel/Wert-Paar-Datenbanken. Nach meinem besten Wissen gibt es keine gemeinsame Infrastruktur, um solche Verbindungen zu erstellen, also sollten Sie selbst ein Factory erstellen, um Ihr Projekt von den verschiedenen Möglichkeiten zu trennen, die verschiedenen Verbindungen zu erstellen.

4

Im Allgemeinen für jede Art von Schlüssel-Wert-Paaren Speicher benötigen Sie separate Modul.

Zum Beispiel:

Ich bin mir nicht sicher, ob es Modul für Google AppEngine Datastore - in der Regel s Suchen Sie nach MetaCPAN für etwas, das zu Ihnen passt.

10

Nicht sicher, ob KiokuDB ist, was Sie wollen. Es hat CouchDB, BDB (BerkeleyDB) und DBI-Backends.

Verwandte Themen