Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Valentin Nechayev                    2:5020/400     19 Jan 2001  16:32:48
 To : Dmitriy Kyrhlarov
 Subject : Re: as usual... sendmail :-)
 -------------------------------------------------------------------------------- 
 
 >>> Dmitriy Kyrhlarov wrote:
 
 >> DK> И еще. При hash, как я понял, ограничение в сколько-то там килобайт на
 >> DK> размер файла.
 >> Чушь.
 
 DK> А кто такие эти hash, dbm и b-tree. В смысле какой где применяется и
 DK> почему.
 
 Есть такая ста-арая;)) юниксовая технология, которая была реализована в виде
 dbm, потом ndbm, потом Berkeley DB (она же newdb), потом гнушники сделали
 gdbm, а кто-то еще - sdbm и odbm, потом Sleepycat сделал db2 и db3 как
 продолжение newdb... Суть такая: есть хранилище данных в виде map'а, он же
 хэш, он же ассоциативный массив, и позволяет:
 1) записать данные в виде пары ключ - значение,
 2) прочитать значение по известному ключу,
 3) удалить оные,
 4) вывести в произвольном порядке,
 5) вывести в отсортированном порядке (это умеет среди перечисленных только
 newdb с потомками),
 
 причем ключ и значение заданы как произвольные последовательности байтов.
 Sendmail использует от этого всего единственную функцию - указанную выше
 под пунктом 2 - а makemap и newaliases строят таблицы для sendmail'а.
 Так называемый keyed database в sendmail'е работает поверх чего угодно,
 что умеет получить ключ и выдать в ответ значение, если оно есть, или сигнал
 отсутствия значения, или код ошибки при попытке получить оное; это может
 быть база указанного формата, запуск внешней программы, и т.п.
 
 dbm - это значит базы локального для данного юникса формата hash, доступ к
 которым идет через ndbm API. hash - базы newdb (доступ через newdb API)
 формата hash. btree - базы newdb формата btree (который позволяет получать
 значения в порядке сортировки ключей, что, однако, sendmail не использует).
 
 При сборке бинаря задается дефолтный формат, который будет использоваться,
 если не задан формат в описании конкретной сендмыловой keyed database.
 Hа солярке, например, это до сих пор dbm. Hа фре - hash. Обычно никто не
 меняет формат базы алиасов (хотя можно написать "O AliasFile=dbm /etc/aliases"
 и будет работать, но нафига?) и берут hash для остальных. Для баз меньше чем
 ~2000 ключей hash эффективнее.
 /netch
 --- ifmail v.2.15dev5
  * Origin: Lucky Netch Incorporated (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 as usual... sendmail :-)   Igor Cherkaev   03 Jan 2001 01:36:32 
 Re: as usual... sendmail :-)   Valentin Nechayev   03 Jan 2001 00:11:41 
 Re: as usual... sendmail :-)   Taras A. Nikolenko   03 Jan 2001 15:10:58 
 Re: as usual... sendmail :-)   Vladimir Kurtukov   03 Jan 2001 20:33:48 
 as usual... sendmail :-)   Igor Cherkaev   03 Jan 2001 22:03:11 
 as usual... sendmail :-)   Igor Cherkaev   03 Jan 2001 22:20:01 
 Re: as usual... sendmail :-)   Vladimir Kurtukov   04 Jan 2001 01:29:23 
 as usual... sendmail :-)   Igor Cherkaev   04 Jan 2001 00:02:26 
 Re: as usual... sendmail :-)   Dmitriy Kyrhlarov   17 Jan 2001 19:45:19 
 Re: as usual... sendmail :-)   Valentin Nechayev   17 Jan 2001 20:51:55 
 Re: as usual... sendmail :-)   Dmitriy Kyrhlarov   19 Jan 2001 15:35:29 
 Re: as usual... sendmail :-)   Valentin Nechayev   19 Jan 2001 16:32:48 
Архивное /ru.unix.bsd/9138b58f552e.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional