DBM

A DBM  (az angol  datbase manager szóból ) egy platformfüggetlen mechanizmus a karakterláncok fájlban történő tárolására hashként . Mind a kulcsnak, mind a hozzá tartozó adatoknak karakterláncoknak kell lenniük. A DBM mint formátum és a feldolgozására szolgáló szoftver a legegyszerűbb adatbázismotornak tekinthető .

A karbantartó formátumot és az azonos nevű segédprogramot 1979 -ben hozta létre Ken Thompson , azóta egy ilyen segédprogram egyik vagy másik megvalósítása megtalálható a legtöbb Unix-szerű rendszer disztribúciójában ( ndbm Unix rendszerekben, gdbm in a GNU projekt ). A Berkeley DB -t eredetileg a dbm segédprogram nagy teljesítményű alternatívájaként hozták létre, amely megtartotta ugyanazt a felületet (később egy beágyazott DBMS -vé fejlődött sok más funkcióval).

A DBM-et számos programozási nyelvhez telepítették könyvtárként ; A Ruby szabványos rubin felülettel érkezik . A Rubyban való használathoz létre kell hozni egy objektumot DBM egy fájlnévvel, majd úgy kell vele dolgozni, mint egy normál hash -sel, a munka befejezése után a fájlt be kell zárni:

#A DBM csatlakoztatásához 'dbm' szükséges # Új objektum létrehozása. A fájl neve adat d = DBM . new ( "data" ) #123 érték hozzárendelése az abc kulcshoz d [ "abc" ]= "123" #A dbm fájl bezárása d . bezárás #Ha megpróbál hozzáférni egy zárt dbm fájlhoz, RuntimeError hibaüzenetet okoz: d [ "abc" ] #Egy korábban létrehozott dbm fájl megnyitása e = DBM . open ( "data" ) #A korábban generált értékek kimenete e [ "abc" ] #Convert to hash. f = {"abc">"123"} f = e . to_hash #Dbm fájl bezárása e . Bezárás

A DBM -hez való interfész egyetlen osztályként van megvalósítva , amelyhez a Enumerable. newA és opena két szinonim osztálymetódus magányos , ami azt jelenti, hogy egy adott fájlhoz egy adott időpontban csak egy objektum DBMtársítható . Szinte minden hash-művelet egy DBM. A metódus to_saz objektumazonosító karakterlánc reprezentációját adja vissza.

Linkek

  • Olsen, Bostic és Seltzer. Berkeley DB (nem elérhető link) . Archiválva az eredetiből 2013. január 5-én.