wZD 1.0.0-ի առաջին թողարկումը՝ փոքր ֆայլերի կոմպակտ պահպանման սերվեր

Հասանելի է առաջին հրատարակությունը wZD 1.0.0 - մեծ թվով ֆայլեր կոմպակտ ձևով արդյունավետ պահելու սերվեր, որն արտաքինից սովորական WebDAV սերվերի տեսք ունի: Պահպանման համար օգտագործվում է փոփոխված տարբերակը BoltDB. Ծրագրի կոդը գրված է Go and տարածվում է BSD լիցենզիայի ներքո:

Սերվեր թույլ է տալիս Զգալիորեն կրճատեք փոքր ֆայլերի քանակը սովորական կամ կլաստերային ֆայլային համակարգերում՝ ամբողջական կողպման աջակցությամբ: wZD մշակողների կողմից աջակցվող կլաստերը պահում է մոտ 250 միլիոն փոքր ֆայլեր, որոնք բաշխված են կլաստերի ֆայլային համակարգում 15 միլիոն գրացուցակներում: MooseFS.

wZD-ն հնարավորություն է տալիս դիրեկտորիաների բովանդակությունը տեղափոխել (արխիվացնել) արխիվներ BoltDB ձևաչափով և այնուհետև բաշխել այդ ֆայլերը այս արխիվներից (կամ տեղադրել ֆայլերը արխիվներում PUT մեթոդով)՝ զգալիորեն նվազեցնելով ֆայլերի քանակը ֆայլային համակարգում և նվազեցնելով մետատվյալների պահպանման ծախսերը: Մեծ ֆայլերի մշակման արդյունավետությունը բարձրացնելու համար նման ֆայլերը կարող են պահպանվել Bolt-ի արխիվներից առանձին: Այս մոտեցումը թույլ է տալիս կազմակերպել հսկայական քանակությամբ փոքր ֆայլերի պահեստավորում՝ չսահմանափակվելով ֆայլային համակարգում ինոդների քանակի սահմանափակումով:

wZD 1.0.0-ի առաջին թողարկումը՝ փոքր ֆայլերի կոմպակտ պահպանման սերվեր

Սերվերը կարող է օգտագործվել նաև որպես NoSQL տվյալների բազա բանալի/արժեքի ձևաչափով տվյալների համար (գրացուցակի կառուցվածքի վրա հիմնված փոխանակմամբ) կամ տվյալների բազայից նախապես ստեղծված html կամ json փաստաթղթերը բաշխելու համար։ Ինչ վերաբերում է կատարողականությանը, Bolt-ի արխիվների միջոցով տվյալների ուղարկելն ու գրելը հանգեցնում է մոտավորապես 20-25%-ով հետաձգման աճի՝ կարդալիս և 40-50%-ով՝ գրելիս: Որքան փոքր է ֆայլի չափը, այնքան փոքր է ուշացման տարբերությունը:

wZD 1.0.0-ի առաջին թողարկումը՝ փոքր ֆայլերի կոմպակտ պահպանման սերվեր

Հիմնական հնարավորություններ:

  • Multithreading;
  • Մուլտիսերվեր, որն ապահովում է սխալների հանդուրժողականություն և բեռի հավասարակշռում;
  • Օգտագործողի կամ մշակողի համար առավելագույն թափանցիկություն;
  • Աջակցվող HTTP մեթոդներ՝ GET, HEAD, PUT և DELETE;
  • Հաճախորդի վերնագրերի միջոցով կարդալու և գրելու վարքագծի վերահսկում;
  • Աջակցություն ճկուն վիրտուալ հյուրընկալողներին;
  • Աջակցություն CRC տվյալների ամբողջականությանը գրելու/կարդալու ժամանակ;
  • Կիսադինամիկ բուֆերներ հիշողության նվազագույն սպառման և ցանցի աշխատանքի օպտիմալ թյունինգի համար;
  • Հետաձգված տվյալների փաթեթավորում;
  • Բացի այդ, առաջարկվում է բազմաշերտ արխիվատոր wZA ֆայլերը Bolt-ի արխիվներ տեղափոխելու համար՝ առանց ծառայությունը դադարեցնելու:

Ընթացիկ թողարկման որոշ սահմանափակումներ. չկա աջակցություն Multipart-ին, POST մեթոդին, HTTPS արձանագրությանը, ծրագրավորման լեզուների կապակցումներին, դիրեկտորիաների ռեկուրսիվ ջնջմանը, WebDAV-ի կամ FUSE-ի միջոցով կառուցվածքը ֆայլային համակարգին մոնտաժելու աջակցություն չկա: պահվում են մեկ համակարգի օգտագործողի տակ: Պահպանման ձևաչափը հատուկ է ճարտարապետությանը և շարժական չէ Little Endian և Big Endian համակարգերի միջև: Չնայած այն հանգամանքին, որ wZD սերվերը ապահովում է HTTP արձանագրության աջակցությունը, այն պետք է գործարկվի միայն հակադարձ վստահված անձանց քողի ներքո, ինչպիսիք են nginx-ը և haproxy-ը:

Source: opennet.ru

Добавить комментарий