Բաց տվյալների սկզբունքների վրա հիմնված տեղեկատվական միջավայր

Բաց տվյալների սկզբունքների վրա հիմնված տեղեկատվական միջավայր

Առաջարկվող տեղեկատվական միջավայրը ապակենտրոնացված սոցիալական ցանցի տեսակ է։ Սակայն, ի տարբերություն շատ առկա լուծումների, այս միջավայրը ապակենտրոնացումից բացի ունի մի շարք օգտակար հատկություններ և ստեղծվել է բավականին պարզ և ստանդարտ տեխնիկական լուծումների (էլ. փոստ, json, տեքստային ֆայլեր և մի փոքր բլոկչեյն) հիման վրա։ Սա թույլ է տալիս ծրագրավորման տարրական գիտելիքներ ունեցող յուրաքանչյուրին ստեղծել իր սեփական ծառայությունները այս միջավայրի համար։

Համընդհանուր նույնականացուցիչ

Ցանկացած առցանց միջավայրում օգտատիրոջ և օբյեկտի նույնականացուցիչները համակարգի հիմնական տարրերից մեկն են։

Այս դեպքում օգտատիրոջ նույնականացուցիչը էլեկտրոնային փոստի հասցեն է, որն արդեն դարձել է կայքերում և այլ ծառայություններում (jaber, openId) լիազորման համար ընդհանուր ընդունված նույնականացուցիչ։

Իրականում, այս առցանց միջավայրում օգտատիրոջ ID-ն մուտքանուն+դոմեն զույգ է, որը հարմարության համար գրվում է մեծամասնությանը ծանոթ ձևով։ Միևնույն ժամանակ, ավելի մեծ ապակենտրոնացման համար ցանկալի է, որ յուրաքանչյուր օգտատեր ունենա իր սեփական դոմեյնը։ Սա մոտ է indieweb-ի սկզբունքներին, որտեղ դոմեյնն օգտագործվում է որպես օգտատիրոջ ID։ Մեր դեպքում օգտատերը իր դոմեյնին ավելացնում է մականուն, որը թույլ է տալիս ստեղծել մի քանի հաշիվներ մեկ դոմեյնում (օրինակ՝ ընկերների համար) և հասցեավորման համակարգը դարձնում է ավելի ճկուն։

Այս օգտատիրոջ ID-ի ձևաչափը կապված չէ որևէ ցանցի հետ։ Եթե օգտատերը իր տվյալները տեղադրում է TOR ցանցում, ապա կարող են օգտագործվել .onion գոտու դոմեյններ. եթե դա ցանց է, որի DNS համակարգն ունի բլոկչեյնում, ապա կարող են օգտագործվել .bit գոտու դոմեյններ։ Արդյունքում, օգտատերերի և նրանց տվյալների հասցեագրման ձևաչափը կախված չէ այն ցանցից, որի միջոցով դրանք փոխանցվում են (մուտք + դոմեյն համադրությունը օգտագործվում է ամենուրեք)։ Նրանց համար, ովքեր ցանկանում են օգտագործել bitcoin/ethereum հասցեն որպես նույնականացուցիչ, համակարգը կարող է փոփոխվել՝ օգտագործելու կեղծ էլ․ հասցեներ՝ հետևյալ տիպի։ xaca1b7c8126806f672f9dbee4951527bb0f2c4e4@ethereum.blockchain

Օբյեկտների հասցեագրում

Այս առցանց միջավայրը իրականում օբյեկտների ամբողջություն է, որոնք նկարագրվում են կառուցվածքային մեքենայական ընթերցման ձևով, հղում են կատարում այլ օբյեկտների և կապված են որոշակի օգտատիրոջ (էլ. փոստ) կամ նախագծի/կազմակերպության (տիրույթ) հետ։

Օբյեկտի նույնականացուցիչները urn են urn:opendata անվանատարածքում: Օրինակ, օգտատիրոջ պրոֆիլն ունի այսպիսի հասցե՝

urn:opendata:profile:user@domain.com

Օգտատիրոջ մեկնաբանությունն ունի հետևյալ տեսակի հասցե՝

urn:opendata:comment:user@domain.com:08adbed93413782682fd25da77bd93c99dfd0548

որտեղ 08adbed93413782682fd25da77bd93c99dfd0548-ը պատահական sha-1 հեշ է, որը գործում է որպես օբյեկտի ID, իսկ user@domain.com-ը այս օբյեկտի սեփականատերն է։

Օգտատիրոջ տվյալների հրապարակման սկզբունքը

Դոմեյնը վերահսկողության տակ ունենալով՝ օգտատերը կարող է բավականին հեշտությամբ հրապարակել իր տվյալներն ու բովանդակությունը։ Եվ ի տարբերություն indiebeb-ի, սա չի պահանջում ստեղծել կայք՝ HTML էջերով, որոնցում ներդրված են իմաստային տվյալներ։

Օրինակ, օգտատիրոջ մասին հիմնական տեղեկությունները տեղադրվում են datarobots.txt ֆայլում, որը գտնվում է ձևի հասցեում։

http://55334.ru/konstantin@55334.ru/datarobots.txt

Եվ ունի այս ձևաչափի բովանդակություն՝

Object: user
Services-Enabled: 55334.ru,newethnos.ru
Ethnos: newethnos
Delegate-Tokens: http://55334.ru/konstantin@55334.ru/delegete.txt

Այսինքն, ըստ էության, դա key->value տիպի տվյալներով տողերի հավաքածու է, որի վերլուծումը պարզ խնդիր է ծրագրավորման տարրական գիտելիքներ ունեցող յուրաքանչյուրի համար։ Եվ դուք կարող եք խմբագրել տվյալները, եթե ցանկանում եք, օգտագործելով սովորական նոթատետր։

Ավելի բարդ տվյալները (պրոֆիլ, մեկնաբանություն, գրառում և այլն), որոնք ունեն իրենց սեփական urn-ը, տրամադրվում են որպես JSON օբյեկտ՝ ստանդարտ API-ի միջոցով (http://opendatahub.org/api_1.0?lang=ru), որը կարող է գտնվել կամ օգտատիրոջ դոմեյնում, կամ երրորդ կողմի կայքում, որին օգտատերը հանձնարարել է իր տվյալների պահպանումը, հրապարակումը և խմբագրումը (datarobots.txt ֆայլի Services-Enabled տողում): Նմանատիպ երրորդ կողմի ծառայությունները նկարագրված են ստորև:

Պարզ օնտոլոգիա և JSON

Հաղորդակցման միջավայրի օնտոլոգիան համեմատաբար պարզ է՝ համեմատած արդյունաբերական գիտելիքների բազաների օնտոլոգիաների հետ։ Քանի որ հաղորդակցման միջավայրում կա ստանդարտ օբյեկտների համեմատաբար փոքր հավաքածու (գրառում, մեկնաբանություն, հավանում, պրոֆիլ, ակնարկ)՝ համեմատաբար փոքր հատկությունների հավաքածուով։

Հետևաբար, նման միջավայրում օբյեկտները նկարագրելու համար բավարար է օգտագործել JSON-ը XML-ի փոխարեն, որն ավելի բարդ է կառուցվածքով և վերլուծությամբ (կարևոր է չմոռանալ ցածր մուտքի շեմի և մասշտաբայնության անհրաժեշտության մասին):

Հայտնի սափորով օբյեկտ ստանալու համար մենք պետք է կապվենք օգտատիրոջ տիրույթի կամ երրորդ կողմի ծառայությունների հետ, որոնց օգտատերը հանձնարարել է իր տվյալների կառավարումը։

Այս առցանց միջավայրում, յուրաքանչյուր դոմեյն, որտեղ գոյություն ունի առցանց ծառայություն, ունի նաև իր սեփական datarobots.txt ֆայլը, որը գտնվում է example.com/datarobots.txt հասցեում՝ հետևյալ բովանդակությամբ.

Object: service
Api: http://newethnos.ru/api
Api-Version: http://opendatahub.org/api_1.0

Որից կարող ենք իմանալ, որ օբյեկտի մասին տվյալները կարելի է ստանալ հետևյալ տիպի հասցեով.

http://newethnos.ru/api?urn=urn:opendata:profile:konstantin@55334.ru

JSON օբյեկտն ունի հետևյալ կառուցվածքը՝

{
    "urn": "urn:opendata:profile:expample@55334.ru",
    "status": 1,
    "message": "Ok",
    "timestamp": 1596429631,
    "service": "example.com",
    "data": {
        "name": "John",
        "surname": "Gald",
        "gender": "male",
        "city": "Moscow",
        "img": "http://domain.com/image.jpg",
        "birthtime": 332467200,
        "community_friends": {
            "example1@domain.com": "1",
            "example2@domain.com": "0.5",
            "example3@domain.com": "0.7"
        },
        "interests_tags": "cars,cats,cinema",
        "mental_cards": {
            "no_alcohol@main": 8,
            "data_accumulation@main": 8,
            "open_data@main": 8
        }
    }
}

Ծառայության ճարտարապետություն

Վերջնական օգտատերերի համար տվյալների հրապարակման և որոնման գործընթացը պարզեցնելու համար անհրաժեշտ են երրորդ կողմի ծառայություններ։

Վերևում մենք նշեցինք ծառայությունների տեսակներից մեկը, որոնք օգնում են օգտատիրոջը հրապարակել իր տվյալները ցանցում: Կարող են լինել բազմաթիվ նմանատիպ ծառայություններ, որոնցից յուրաքանչյուրը օգտատիրոջը տրամադրում է հարմար ինտերֆեյս տվյալների տեսակներից մեկը խմբագրելու համար (ֆորում, բլոգ, հարց-պատասխան և այլն): Եթե օգտատերը չի վստահում երրորդ կողմի ծառայություններին, նա կարող է տեղադրել տվյալների ծառայության սկրիպտ իր դոմեյնում կամ մշակել այն ինքնուրույն:

Բացի այն ծառայություններից, որոնք թույլ են տալիս օգտատերերին հրապարակել/խմբագրել տվյալներ, առցանց միջավայրը տրամադրում է մի շարք այլ ծառայություններ, որոնք կատարում են համեմատաբար բարդ առաջադրանքներ, որոնք բավականին խնդրահարույց են վերջնական օգտատիրոջ հանգույցներում իրականացնելու համար։

Այդպիսի ծառայությունների տեսակներից մեկը տվյալների կենտրոններն են ( opendatahub.org/ru — օրինակ), որը գործում է որպես մի տեսակ վեբ արխիվ, որը հավաքում է բոլոր հանրային մեքենայական ընթերցելի օգտատիրոջ տվյալները և հասանելիություն է ապահովում դրանց API-ի միջոցով։

Նման բաց, ապակենտրոնացված առցանց միջավայրում ծառայությունների առկայությունը զգալիորեն նվազեցնում է օգտատերերի մուտքի շեմը, քանի որ անհրաժեշտ չէ տեղադրել և կարգավորել սեփական հանգույցը։ Միևնույն ժամանակ, օգտատերը պահպանում է իր տվյալների նկատմամբ վերահսկողությունը (ցանկացած պահի կարող եք փոխել այն ծառայությունը, որին վստահված է տվյալների հրապարակումը կամ ստեղծել ձեր սեփական հանգույցը)։

Եթե օգտատերը ընդհանրապես չի հետաքրքրված իր տվյալների տիրությամբ և չունի իր սեփական դոմեյնը կամ դոմեյնին ծանոթ որևէ մեկին, ապա լռելյայնորեն նրա տվյալները կառավարվում են opendatahub.org-ի կողմից։

Ու՞մ հաշվին է այս ամենը։

Հնարավոր է՝ գրեթե բոլոր նման ապակենտրոնացված նախագծերի հիմնական խնդիրը դրանց դրամայնացման անհնարինությունն է կայուն զարգացման և աջակցության համար բավարար մակարդակով։

Այս առցանց միջավայրում մշակման և մարքեթինգի ծախսերը հոգալու համար օգտագործվում են donate + tokens:

Բոլոր նվիրատվությունները, որոնք օգտատերերը կատարում են ներքին նախագծերին/ծառայություններին, հրապարակայնորեն մատչելի են, մեքենայական ընթերցման համար նախատեսված և կապված են էլեկտրոնային փոստի հետ։ Սա թույլ է տալիս դրանք հաշվի առնել, օրինակ, ներցանցային սոցիալական վարկանիշը հաշվարկելիս և հրապարակել օգտատերերի էջերում։ Երբ նվիրատվությունները դադարում են անանուն լինել, ապա օգտատերերը իրականում չեն նվիրաբերում, այլ «մասնակցում» են ընդհանուր տեղեկատվական միջավայրին։ Ճիշտ այնպես, ինչպես մարդիկ մասնակացնում են հանրային տարածքները վերանորոգելու համար՝ համապատասխան վերաբերմունք ունենալով այն մարդկանց նկատմամբ, ովքեր հրաժարվել են մասնակացնել։

Նվիրատվություններից բացի, սահմանափակ քանակությամբ (400.000) թողարկված տոկեններն օգտագործվում են միջոցներ ներգրավելու համար, որոնք շնորհվում են հիմնական ֆոնդին (էթնոգենեզ) նվիրատվություններ կատարող բոլոր նրանց։

Տոկենների լրացուցիչ գործառույթներ

Յուրաքանչյուր թոքեն «բանալի» է այս առցանց միջավայրին մուտք գործելու համար։ Այսինքն՝ դուք կարող եք օգտվել ծառայություններից և լինել առցանց միջավայրի մաս միայն այն դեպքում, եթե ունեք առնվազն 1 թոքեն, որը կապված է էլեկտրոնային փոստի հետ։

Թոքենները լավ սպամի ֆիլտր են իրենց սահմանափակ բնույթի պատճառով։ Որքան շատ օգտատերեր կան համակարգում, այնքան ավելի դժվար է թոքեն ստանալը և ավելի թանկ՝ բոտեր ստեղծելը։

Մարդիկ, նրանց տվյալները և սոցիալական կապերը ավելի կարևոր են, քան տեխնոլոգիան

Նկարագրված առցանց միջավայրը տեխնիկապես համեմատաբար պարզունակ լուծում է։ Սակայն դրանում ավելի կարևորը ոչ այնքան տեխնոլոգիան է, որքան մարդիկ, սոցիալական կապերն ու միջավայրում ստեղծված տվյալները (բովանդակությունը)։

Ստեղծվող սոցիալական համայնքը, որի անդամներն ունեն իրենց սեփական ունիվերսալ նույնականացուցիչները (էլ. փոստ և իրենց սեփական դոմեյն) և կառուցվածքային տվյալները (URN հասցեներով, օնտոլոգիայով և JSON օբյեկտներով), կարող է, երբ ի հայտ գա ավելի լավ տեխնիկական լուծում, փոխանցել այս բոլոր տվյալները մեկ այլ առցանց միջավայր՝ պահպանելով ձևավորված կապերը (վարկանիշներ, գնահատականներ) և բովանդակությունը։

Այս գրառումը նկարագրում է ցանցային ինքնակազմակերպվող համայնքի տարրերից մեկը, որը, ապակենտրոնացված առցանց միջավայրից բացի, ներառում է մի շարք օֆլայն տարածքներ, որոնք մեծացնում են առցանց միջավայրի առավելությունները և «հաճախորդներ» են, որոնք մեծապես որոշում են դրա ֆունկցիոնալությունը: Սակայն սրանք թեմաներ են այլ հոդվածների համար, որոնք ուղղակիորեն կապված չեն ՏՏ-ի և տեխնոլոգիաների հետ:

Source: www.habr.com

Գնեք հուսալի հոստինգ DDoS պաշտպանությամբ կայքերի, VPS VDS սերվերների համար 🔥 Գնեք հուսալի կայքերի հոսթինգ՝ DDoS պաշտպանությամբ, VPS VDS սերվերներով | ProHoster