vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
В связи с тем, что lib.rus.ec окончательно скурвился я купил себе 32Гб SD-шку, возникает вопрос о работе с НУ ОЧЕНЬ большим набором электроных книг.

И да, primary target platform - maemo.

Т.е. возникает задача хранения каталога библиотеки отдельно от самой библиотеки, периодической актуализации и т.д.

Основная операция с этим каталогом - найти некоторое множество книг и вытащить его в "рабочий набор", то есть в случае maemo в рабочий каталог FBReader-а, владельцы всяких lbook-ов и openinkpot-ов лучше знают, что у них там.

[livejournal.com profile] phd тут рекламировал MyRuLib. Мне не понравилось. Во-первых, оно требует свежего wxWidgets. Более свежего чем в lenny (хотя пакет якобы для Debian 5.0 на сайте есть), так что даже на десктопе попробовать не получилось.
Во-вторых, в maemo вообще с wxWidgets туго.

В третьих, залез я в их базу данных посредством sqlite и показалось мне что проектировал её типичный php-кодер. Поле genres в таблице books, содержащее конкатенацию каких-то кодов...

Вот и думаю теперь что делать. Либо пытаться все же использовать эту заботливо подготовленную неграмотными людьми базу, либо писать свою извлекалку метаинформации из fb2 (pdf и djvu меня интересуют меньше, потому что на 32Гб флэшку они не влезут и читать их на экране 800x480 неудобно).

Либо вообще прикрутить sqlite-каталог к FBReader-у.

Но вот как должен выглядеть интерфейс этого библиотечного приложения?
Очевидно что просмотр списка из десятков тысяч авторов - не вариант. Тем более что нужен поиск по сериалам (sequence) или названиям.

Столь же очевидно, что о полнотекстовом поиске сразу надо забыть. Сделать полнотекстовый индекс существенно меньший по объему, чем сама библиотека вряд ли удастся, а библиотека занимает более половины доступного объема.

Ничего лучшего, чем повторить форму поиска на сайте lib.rus.ec мне в голову пока не приходит
Page 1 of 8 << [1] [2] [3] [4] [5] [6] [7] [8] >>

Date: 2009-11-26 10:04 pm (UTC)
From: [identity profile] dzz.livejournal.com
У букридеров работа с большими каталогами - вообще больное место (возникает вопрос - а зачем там тогда поддержка больших флэшек?).

По поводу интерфейса - с очевидностью, нужна рубрикация и поиск по автору, названию, жанру.
From: [identity profile] cmotrujj.livejournal.com
Странная сумма - 10 уе\месяц. Многовато. Вот 5 в год - еще куда-то как-то.
Похоже на проворкацию, вброс. Не торопиться с выводами, имхо.

Date: 2009-11-26 10:39 pm (UTC)
From: [identity profile] dottedmag.livejournal.com
Главное - чтобы D-Bus-интерфейс был!

Шучу, шучу.

Date: 2009-11-26 10:52 pm (UTC)
From: [identity profile] http://users.livejournal.com/mak_/
посмотрите на торрентс.ру библиотеку траума. у меня под рукой нет, но помнится туда включена база данных для желающих самостоятельно что-то структуризовать.

Date: 2009-11-26 10:52 pm (UTC)
From: [identity profile] tritopora.livejournal.com
О как, Ларин в душу наплевал, значит? Даже не знал. Конвертишь тут, вычитываешь, человечество благодетельствуешь в личное время, а тут такую плюху вываливают.
From: [identity profile] neo-der-tall.livejournal.com
Мы придумали такое http://www.e-uch.ru/ - справа "Библос" юзер и пароль guest

Date: 2009-11-26 10:55 pm (UTC)
From: [identity profile] roman_sharp.livejournal.com
У меня виндовая http://home-lib.net/ стоит. Особо яростно не гонял, но чего-то делала и выдавала. Может ссылка сгодиться на что...

дисклэймер!

Date: 2009-11-26 10:57 pm (UTC)
From: [identity profile] neo-der-tall.livejournal.com
а) это даже не прототип еще толком
б) проект заморожен
в) разрабатывалось под "тыканье пальцем"

Date: 2009-11-26 11:08 pm (UTC)
From: [identity profile] alexkuklin.livejournal.com
lib.rus.ec отступил на очередные заранее заготовленные позиции, как я понял

Date: 2009-11-26 11:21 pm (UTC)
From: [identity profile] permea-kra.livejournal.com
Емнип, fb2-xml-based? распаковать - натравить xqilla с правильным запросом, проверить корректность завершения, запустить вывод xqilla на вход шелла, нет?

Полнотекстовый индекс нужен по полям с метаинформацией, полнотекстовый по книге практически бесполезен.

Date: 2009-11-26 11:22 pm (UTC)
From: [identity profile] amarao-san.livejournal.com
Ну, самые простые вещи, которые бы хотелось видеть - это sondex или что-то подобное для приблизительного поиска (перепутал букву в названии и т.д.) и всё-таки полнотекстовый поиск. Да, делать полный индекс тяжко (кстати, не факт, что он такой уж большой будет - слов в языке много меньше, чем текстов с этими словами).

Date: 2009-11-26 11:31 pm (UTC)
From: [identity profile] painstakinglyyz.livejournal.com
Ya poproboval copy-paste kusok koda, no k stidu svoemu ne znayu do sih por, kak eto sdelat' v ZhZh.

http://code.google.com/p/cutebookshelf/source/browse/trunk/parsers.py

Ostal'naya chast' proekta ne rasschitana osobo na polnuyu biblioteku Lib.rus.ec.

From: [identity profile] sastanin.livejournal.com
У меня есть по этому поводу следующая мысль.

Решать нужно три задачи: сохранение и распространение имеющихся книг, организация удобного произвольного доступа к файлам отдельных книг и развитие и пополнение архива. С последней задачей либрусек пока ещё вроде справляется, поэтому наиболее насущны первые две.

1) Распространение. Эффективно — весь архив полностью торрентом (http://torrent.rus.ec/viewforum.php?f=186), но так неудобно для поиска и для получения отдельной книги. Удобно для чтения — находить по автору, жанру, названию — и скачивать по одной или несколько книг. Однако любой централизованный сайт будет или подавлен, или закрыт, или подкуплен (что и наблюдаем). В принципе, массовое пофайловое распространение возможно в P2P, оно децентрализованно, и может быть при желании и анонимным. Однако для P2P важно обеспечить одинаковые и описателные названия файлов и/или извлечение метаданных.

2) Организация произвольного доступа к файлам книг. Пока P2P не станет работающим и массовым вариантом, нужно работать локально с полным архивом. В большинстве случаев мне лично нужно найти искомого автора и затем уже выбрать из списка его книг. Реже — искать по названию или части названия. Предполагаю доступности полного архива (который в торрентах). В целях минимизации места на диске и удобства, желательно, чтобы программа доступа к книге умела работать с архивом именно в том виде, в котором он раздаётся в торрентах.

В связи с этим, меня привлекает следующее решение: user-space файловая система fuse, которая индексирует набор zip-архивов с fb2 и другими файлами внутри (а именно так распространяется архив). Пусть программа-индексатор извлекает из всех fb2 только метаданные. Используя эти метаданные, файловая система может представить архив в естественном библиографически упорядоченном виде. Для пользователя это будет выглядеть как иерархия каталогов, вроде такой:

/author/первая буква фамилии/фамилия и остальные имена, включая других авторов/название произведения/файлы
/genre/название жанра/author/первая буква фамилии/...
/genre/название жанра/title/первая буква названия/название/автор/файлы
/year/19xx/1950/author/...

Файлы при этом должны быть названы описательно, примерно так:

«Фамилия Имя Отчество. Название (Год) Издание.fb2»

При этом:

* для поиска отдельной книги в большинстве случаев хватит обычных средств работы с файлами (файлового менеджера или командной оболочки)
* основные пути поиска книги будут соответствовать вложенности каталогов
* возможны ортогональные иерархии, и по жанру, и по году, и по ISBN, и вообще по чему угодно; раз индекс метаданных уже раз собран
* ничего с самим архивом (85 ГБ на сегодня) делать не надо, его можно хранить и раздавать как есть, то есть массовое распространение библиотеки будет оставаться эффективным, сидов будет больше
* размер индекса, полагаю, будет невелик, а индекс будет меняться редко (старые zip-файлы не меняются, только добавляются новые)
* представление библиотеки в виде файловой системы никак не ограничивает ни выбор читалки, ни выбор полнотекстовых индексаторов (ежели кому-то они всё же понадобятся)
* представление всей библиотеки с библиографически организованной структурой каталогов и описательными названиями файлов, позволит людям легко выкладывать архив как в веб, так и в P2P (ну и вообще будет способствовать частичному, то есть удобному, человечному распространению книг) — и при этом можно раздавать и обновлять архив через торрент.

Мне кажется вариант почти идеальным. Если даже всего несколько десятков или сотен гиков откроют такую виртуальную ФС с библиотекой в P2P, почти любая книга будет легко находиться и быстро скачиваться вообще без централизованной библиотеки. При этом книги будут доступны не только гикам, но и вполне обыкновенным пользователям. За DDOSить такую систему распространения будет трудно. И всех читателей не подкупишь.

FUSE, пишут, есть и для maemo, так что решение может оказаться и вполне мобильным.

Наконец, отмечу, почему мне не нравятся все программы-каталогизаторы (в виндовом стиле), сама идея таких программ. Вместо нормальных полноценных файлов в них можно получить только элементы интерфейса. Это только если на десктопе с экрана читать. Даже взять и скопировать файл на флэшку или карточку памяти в них не всегда возможно.
Edited Date: 2009-11-26 11:54 pm (UTC)
From: [identity profile] michael.ul.myopenid.com (from livejournal.com)
Либрусек вполне справлялся с указанными вами задачами (как - другой вопрос), но оказался уязвим для копирастов. Организовать подобный сервис на базе p2p практически не реально, p2p плохо подходит для таких задач. Но на p2p свет клином не сошёлся. Есть ещё всякие darknet'ы. Почему бы, например, не организовать зеркало либрусека в anonet'е?
From: [identity profile] amarao-san.livejournal.com
PD очень близок к тому, что нужно.

да-да, близок локоть:

Date: 2009-11-27 01:19 am (UTC)
From: [personal profile] laruldan
Клиент под линукс[/не-x86]?
From: [identity profile] painstakinglyyz.livejournal.com
Indexator -> database -> FUSE?

What about Cyrillic/UTF-8 filenames then?

Is it gonna be read-only? Because if it's not - you need to adjust fb2 metadata on every file copy/move operation then...

> ничего с самим архивом (85 ГБ на сегодня) делать не надо

> Файлы при этом должны быть названы описательно, примерно так:

Nu to est' kak minimum pereindeksirovat' i pereimenovat'.

From: [identity profile] michael.ul.myopenid.com (from livejournal.com)
PD - это что?

Date: 2009-11-27 02:42 am (UTC)
phd_ru: (Default)
From: [personal profile] phd_ru
Правильно. Не нужен Витусу на Maemo никакой wx. Нужен Wine! :-D
Page 1 of 8 << [1] [2] [3] [4] [5] [6] [7] [8] >>

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

July 2025

S M T W T F S
  12345
6789 1011 12
13141516 17 1819
20212223242526
2728293031  

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 22nd, 2025 07:01 am
Powered by Dreamwidth Studios