YaCy

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
YaCy
YaCy logo.png
Yacy-buscador.png
Стабільний випуск 1.82 (19 січня 2015; 591 день тому)
Написано на Java
Операційна система багатоплатформна
Доступні мови багатомовна
Українська так
Тип пошукова машина, проксі
Ліцензія GPL v2
Веб-сайт www.yacy.net

Commons-logo.svg YaCy у Вікісховищі

YaCy (вимовляється "ya see") вільна пошукова машина та пошукова система, побудована на принципах однорангової (P2P) мережі[1][2]. Пошукова система складається з окремих вузлів — примірників програмного забезпечення, написаного на Java, яке користувачі встановлюють на свої комп'ютери з доступом до Інтернет. Кожен вузол самостійно збирає, аналізує та індексує сторінки Інтернет та обмінюється результатами індексації в мережі, формуючи загальну базу даних (так званий індекс), яка зберігається розподілено та використовується разом з іншими вузлами. За допомогою YaCY також можна створити пошуковий портал для внутрішньої мережі або пошуковий портал для власних веб-сторінок.

У порівнянні з напів-розподіленими пошуковими системами, YaCy-мережа має децентралізовану будову. Усі вузли рівні, а центральний сервер відсутній. Вузол YaCy може бути запущений в режимі індексування сторінок. Окрім того, вузол може працювати в якості локального проксі-сервера для індексації веб-сторінок, відвіданих користувачем, який встановив YaCy на своєму комп'ютері; при цьому передбачено механізми для захисту конфіденційності користувача.

Доступ до функції пошуку здійснюється через веб-сторінку, доступну локально на комп'ютері, де встановлено програму. Введення критеріїв пошуку та отримання результатів відбувається подібно до інших пошукових систем.

Оскільки програма працює в JVM, то її можна встановити на комп'ютерах з різними операційними системами, такими як MS Windows, Unix, GNU/Linux і т.д.

Компоненти системи[ред.ред. код]

Пошукова система YaCy складається з чотирьох елементів:[3]

  • Пошуковий робот переходить з веб-сторінки на веб-сторінку й аналізує їх вміст.
  • Індексатор створює обернений індекс слів, Reverse Word Index (RWI). Кожне слово в RWI має перелік URL адрес, які йому відповідають. Слова зберігаються у формі їх хешей.
  • Пошуковий та адміністративний інтерфейси, доступні через веб-інтерфейс, забезпечений локальним HTTP сервлетом.
  • Банк даних, що зберігає RWI із застосуванням розподіленої хеш-таблиці.

Філософія[ред.ред. код]

Інформаційне суспільство 21-го століття засноване на вільному доступі до публічної інформації. Особлива увага приділяється прозорості, підзвітності та доступності інформації. YaCy прагне забезпечити безкоштовний доступ до інформації ефективно й реалістично. У той час як традиційні пошукові системи міжнародних компаній є закритими системами та їх технології пошуку не є прозорими та зрозумілими, YaCy має відкритий початковий код і є вільною пошуковою машиною. Кожен може пересвідчитися, яким чином отримується інформація для пошукової системи та відображається в результатах пошуку користувачу.[4]

Вільний пошук: відсутні посилання[ред.ред. код]

Існує багато вільного вмісту в Інтернеті, такого як Wikipedia, вільна музика, дані під Creative Commons та іншими вільними ліцензіями, тощо. Однак наявність цих вільних продуктів в Інтернеті не забезпечує їх вільності в повній мірі. У разі використання пропрієтарних пошукових систем у, більшою мірою, монопольній інфраструктурі Інтернету власники цих монополій вирішують, яку інформацію видно. YaCy дотримується позиції, що вільна інформація є дійсно вільної, якщо вона доступна за допомогою вільного програмного забезпечення. YaCy заповнює відсутню ланку між вільною інформацією та користувачем, надаючи вільний пошук.

Децентралізована пошукова система[ред.ред. код]

Інфраструктура Інтернет була побудована на філософії «все для всіх», а не лише на з'єднаннях прийому-передачі. З такої точки зору, кожен споживач вмісту в Інтернеті повинен мати таку ж можливість виробляти вміст, як і споживати. Мета YaCy в тому, щоб допомогти виробникам і споживачам інформації в Інтернеті робити вміст, доступний для всіх людей, незалежно від централізованого пошуку.

Переваги YaCy філософії[ред.ред. код]

Громадянські права та приватність

  • Унеможливлення централізованої оцінки та моніторингу пошукових запитів.
  • Недоступність даних про історію пошукових запитів. Крім захисту приватності, це має значення й для бізнесу з огляду на промислове шпигунство.

Екологічність

  • Не потрібна робота центрів обробки даних з величезним енергоспоживанням (а іноді й їх власними електростанціями) для центрального веб-пошуку. Розподілений пошук вимагає роботи тільки комп'ютерів вузлів пошуку.

Соціологічні

  • Всі учасники мають однакові права, зокрема при додаванні нового вмісту.
  • Вміст пошуку визначається користувачами незалежно від комерційних інтересів оператора веб-порталу.
  • Індивідуалізація релевантності: кожен може оцінити якість і важливість веб-сторінок за їх власними правилами та індивідуально пристосовувати значущість з використанням методів ранжирування (популярних і наукових).

Інші функції[ред.ред. код]

  • YaCy забезпечує всіх користувачів проксі-функцією, яка надає доступ до колег за особливою адресою PEERNAME.yacy (тобто, ім'я цього вузла з розширенням ".yacy") або PEERHASH.yacyh (тобто геш цього вузла з розширенням ".yacyh"). www.PEERNAME.yacy може бути домашньою сторінкою користувача, під share.PEERNAME.yacy знаходиться файлообмінник, а PEERNAME.yacy це звичайна http-оболонка доступу. Інші піддомени можуть бути спеціально створені шляхом створення теки з ім'ям піддомену. Динамічний DNS не підтримується.
  • Вузол доступний для YaCy користувачів, незалежно від того, чи YaCy-домен надає місце для домашньої сторінки та тек, які можуть бути зв'язані з поточною IP-адресою або адресою динамічного DNS.
  • YaCy має вбудовану функцію повідомлень, за допомогою якої можна відправляти текстові повідомлення (з форматуванням вікі), і залежно від настройки приймача також відправляти файли.
  • YaCy має вбудовані wiki і блог.
  • Є керування закладками, які можуть бути загальнодоступними та особистими.
  • Є можливість внесення окремих областей до чорних списків.
  • Є OpenSearch-інтерфейс. Кожен вузол забезпечує доступність цієї адреси http://<адреса-вузла>:<порт-вузла>/opensearchdescription.xml, наприклад http://sciencenet.fzk.de:8080/opensearchdescription.xml

Технологія[ред.ред. код]

Основу програми становить веб-сервер, який також є кешуючим-проксі-сервером. Користувач має доступ до сторінок пошуку та керування своїм вузлом. Проксі має спільний код зі сканером, а це означає, що, якщо проксі задіяний, всі відвідані сторінки, які не є особистими, автоматично записуються в індекс. Крім того, YaCy надає власний домен у YaCy-мережі, який доступний через проксі-сервер.

Розподілений індекс[ред.ред. код]

Пошукові запити здійснюються через P2P-пошук та мають бути доступними негайно. Для цього YaCy використовує розподілену хеш-таблицю. Це означає, що після індексування всі знайдені URL адреси та слова відправляються до вузлів, які найбільше підходять для зберігання відповідних контрольних сум (хешів) слів, вузлів чи посилань. При пошуку все працює навпаки: для пошуку залучаються вузли, які можуть видати хеші URL адрес для слів пошукового запиту. Таким чином, для отримання гарних результатів необхідно задіяти тільки частину вузлів.

Типи вузлів[ред.ред. код]

YaCy розрізняє чотири типи вузлів:

  • Новенький: такі вузли не доступні, оскільки не мають зв'язку з мережею, та бачать лише себе.
  • Молодший вузол знаходиться за файрволом. Інші відносять його до молодших або потенційних вузлів, вони бачать тільки те, коли він був останній раз зареєстрований, і не мають ніякого способу визначити, чи він досі в мережі.
  • Старший доступний ззовні та є повноправним членом мережі YaCy.
  • Головний — старший, який надає список вузлів, який використовується для початкового зв'язку з іншими вузлами.

Протокол[ред.ред. код]

Протокол YaCy складається з текстових сервлетів, які забезпечують вбудований веб-сервер за адресами /yacy/servletname.html. Інші вузли передають дані через GET-властивості і отримують простий уривок тексту, точний формат відрізняється для сервлетів.

Початкове завантаження[ред.ред. код]

При початковому завантаженні вузол намагається зв'язатися з іншими вузлами YaCy-мережі. Спочатку шукаються списки вузлів. Перша адреса в superseed.txt слугує для завантаження стійких YaCy-вузлів. У seeds.txt є також посиланнями на інші вузли, так що таким чином контакт з YaCy-мережею може бути налагоджено. При наступному запуску YaCy, gebootstrapt створює перелік з відомих з попереднього разу вузлів мережі, а списки вузлів необхідні лише тоді, коли багато посилань більше не дійсні.

Джерела[ред.ред. код]

  • Peter Schüler: Web-Erkundung per PC. In: c’t. Eigener Webindex mit YaCy Nr. 21, September 2008, ISSN 0724-8679, S. 180–185.
  • M. Christen: Peer-to-Peer: Eigenes Suchportal mit Yacy einrichten in iX 02/2008, S. 102 ff.
  • M. Schlenker: Gemeinsam gegen Google in OpenSource, 01/2007, November 2006, S. 94-97
  • J. Bager: Europäische Gegenströmung in c't, 2006/10, 2. Mai 2006, S.172-174 (Onlinetext)
  • R. Sietmann: Wider die Monokultur. P2P-Strategien gegen die Suchmaschinen-Monopolisierung. in c't, 2005/16, 25. Juli 2005, S.52-53 (Onlinetext)
  • M. Schwarze: Jedermanns Suchmaschine in: HAZ (Artikel als PDF 107 kB)
  • Michael Christen: YaCy — Peer-to-Peer Web-Suchmaschine in Die Datenschleuder, #86, 2005, S.54-57 (gesamtes Heft als PDF 1,7 MB)

Посилання[ред.ред. код]

Примітки[ред.ред. код]

  1. 00:03, 29 Nov 2011 at; Nsa, Iain Thomson tweet_btn() Iain Thomson Get email alert when this author posts Common Topics. YaCy takes on Google with open source search engine. Процитовано 2016-01-10. 
  2. YaCy: It's About Freedom, Not Beating Google. PCWorld. Процитовано 2016-01-10. 
  3. YaCy.net. YaCy Technology Architecture. 
  4. YaCy - The Peer to Peer Search Engine: Philosophy. yacy.net. Процитовано 2016-01-10. 
  5. YaCy - The Peer to Peer Search Engine: Search Portal. yacy.net. Процитовано 2016-05-07.