Децентрализираното хранилище LF е преминало на отворена лицензия

Наличен е версия LF 1.1.0, децентрализирано реплицирано хранилище данни в формат ключ/стойност. Проектът се разработва от ZeroTier, която създава виртуален Ethernet комутатор, позволяващ свързването на хостове и виртуални машини, разположени при различни доставчици, в една виртуална локална мрежа, където участниците обменят данни в P2P режим. Кодът на проекта е написан на C. Новият релиз е забележителен с преминаването към свободна лицензия MPL 2.0 (Mozilla Public License).

Преди кодът на LF беше достъпен под лицензия BSL (Business Source License), която не е свободна поради дискриминация на определени категории потребители. Лицензията BSL беше предложена от съоснователите на MySQL като алтернатива на модела Open Core. Същността на BSL е, че кодът с разширена функционалност първоначално е достъпен за промени, но за определен период може да се използва безплатно само при спазване на допълнителни условия, за заобикалянето на които е необходимо закупуването на търговска лицензия.

LF е напълно децентрализирана система, която позволява разгръщането на единично хранилище данни в формат ключ-стойност на произволен брой възли. На всички възли данните се съхраняват в синхронизирано състояние, а всички промени се репликират напълно между всички възли. Всички възли в LF са равнопоставени помежду си. Отсъствието на отделни възли, които координират работата на хранилището, елиминира единичната точка на отказ, а наличието на пълна копия на данните на всеки възел изключва загубата на информация при повреда или изключване на отделни възли.

За свързване с мрежата на новия узел не е необходимо получаване на отделни права — всеки желаещ може да стартира своя узел. Моделът на данни в LF е построен на основата на ориентирован граф без цикли (DAG), който опростява синхронизацията и позволява прилагането на различни стратегии за разрешаване на конфликти и осигуряване на безопасност. В отличие от системите, базирани на разпределени хеш таблици (DHT), архитектурата IF е първоначално проектирана за използване в ненадеждни мрежи, при които постоянната наличност на узли не е гарантирана. В областите на приложение на LF се споменава създаването на максимално устойчиви системи за съхранение, в които се съхраняват относително малки обеми критично важни данни, които рядко се променят. Например, LF е подходящ за хранилища на ключове, сертификати, параметри за идентификация, конфигурационни файлове, хешове и домейни имена.

За защита от претоварване и злоупотреби се прилага ограничение на интензивността на операциите по запис в общото хранилище, реализирано на основата на доказателство за изпълнение на работа (proof of work) — за да получи възможност за запазване на данни, участникът в мрежата за съхранение трябва да извърши определено задание, което лесно се проверява, но изисква значителни ресурси за изчисление (аналогично на организациите за разширение в блокчейн системи и CRDT). Изчислените стойности се използват и като признак при разрешаването на конфликти.

В мрежата може да бъде стартиран удостоверяващ център за издаване на криптографски сертификати на участниците, които дават право на добавяне на записи без необходимост от потвърждение чрез работа и предоставят приоритет при разрешаване на конфликти. По подразбиране хранилището е достъпно без ограничения за свързване на всякакви участници, но опционално могат да се създават отдалечени частни хранилища на база система от сертификати, в участниците на които могат да бъдат само узли, сертифицирани от собственика на мрежата.

Основни характеристики на LF:

  • Лесно разгръщане на собствено хранилище и свързване с съществуващите публични мрежи за съхранение.
  • Липса на единна точка на отказ и възможност за включване в поддържането на хранилището на всички желаещи.
  • Висока скорост на достъп до всички данни и възможност за достъп до данни, оставащи на собственото си възелче, дори след нарушаване на мрежовата свързаност.
  • Универсален модел на сигурност, позволяващ комбиниране на различни механизми за разрешаване на конфликти (локална херистика, тегло на основата на извършената работа, отчитане на нивото на доверие на другите възли, сертификати).
  • Гъвкав API за запити за данни, допускащ посочване на множество вложени ключове или диапазони от стойности. Възможност за асоцииране на множество стойности с един ключ.
  • Всички данни се съхраняват криптирани, включително ключовете, и се проверяват. Системата може да се използва за организиране на съхранение на конфиденциални данни на ненадеждни възли. Записите, ключовете за които не са известни, не могат да бъдат определени чрез метода на подбора (без знание на ключа, не е възможно да се получат свързаните с него данни).

От ограниченията се изтъква ориентацията към съхранение на малки, рядко променящи се данни, липсата на блокировки и гарантирана последователност на данните, високи изисквания към CPU, памет, дисково пространство и пропускна способност, постоянно увеличаване на размера на хранилището с времето.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster