Қарапайым хэштеу - Rendezvous hashing

Кездесу немесе ең жоғары кездейсоқ салмақ (HRW) хэштеу[1][2] жиынтығы бойынша клиенттерге үлестірілген келісімге қол жеткізуге мүмкіндік беретін алгоритм болып табылады мүмкін болатын жиынтықтың нұсқалары опциялар. Әдеттегі қосымша - бұл клиенттер қай сайттарға (немесе сенім білдірілгендерге) объектілер тағайындау туралы келісуі керек.

Рендезивті хэштеу жалпыға ортақ тұрақты хэштеу, бұл ерекше жағдайға айналады (үшін ) кездесу хэші.

Тарих

Рендезиялық хэштеуді Дэвид Талер мен Чиня Равишанкар ойлап тапты Мичиган университеті 1996 ж.[1] Үнемі хэштеу бір жылдан кейін әдебиетте пайда болды. Кездесуді бұзудың алғашқы қосымшаларының бірі болды мультикаст Интернеттегі клиенттер (сияқты контексттерде MBONE ) үлестірілген тәртіпте көп арналы кездесу нүктелерін анықтау.[3][4] Оны 1998 жылы Microsoft корпорациясы қолданған Кэш массивін бағыттау хаттамасы Таратылған кэшті үйлестіру және бағыттау үшін (CARP).[5][6] Кейбіреулер Тәуелсіз Multicast протоколы маршруттау хаттамаларында кездесу нүктесін таңдау үшін кездесу хэштеу қолданылады.[1]

Қарапайымдылығы мен жалпылығын ескере отырып, кездесуге арналған хэштеу көптеген қосымшаларда, соның ішінде мобильді кэштеуде қолданылған,[7] маршрутизатор дизайны,[8] қауіпсіз кілт құру,[9] және сындыру және таратылған мәліметтер базасы.[10]

Шолу

Алгоритм

Rendezvous хэштеу шешеді таратылған хэш-кесте проблема: Клиенттер жиыны, берілген объект қалай , қай жерде жиынтығы бар екендігі туралы келісу орналастыру үшін сайттар (серверлер, айталық) ? Әрбір клиент сайтты өз бетінше таңдау керек, бірақ барлық клиенттер бір сайтты таңдай алады. Егер біз қосатын болсақ, бұл маңызды емес минималды бұзу шектеу және тек жойылған сайтқа салыстыратын объектілерді басқа сайттарға қайта тағайындауды талап етеді.

Негізгі идея - әр сайтты беру ұпай (а салмағы) әр объект үшін , және объектіні ең көп ұпай жинайтын сайтқа тағайындаңыз. Барлық клиенттер алдымен хэш функциясы туралы келіседі . Нысан үшін , сайт салмағы бар деп анықталған . HRW тағайындайды сайтқа салмағы ең үлкені. Бастап келісілген, әр клиент салмақты өз бетінше есептей алады және ең үлкенін таңдаңыз. Егер мақсат үлестірілсе - келісім бойынша, клиенттер сайттарды өз бетімен таңдай алады ең үлкен хэш мәндері.

Егер сайт болса қосылады немесе жойылады, тек нысандарды бейнелейді жоғарыдағы ең аз бұзушылық шектеулерін қанағаттандыратын әр түрлі сайттарға қайта орналастырылған. HRW тағайындауын кез-келген клиент дербес есептей алады, өйткені бұл тек сайттар жиынтығының идентификаторларына байланысты және тағайындалған объект.

HRW тораптар арасындағы әртүрлі қуаттарды оңай орналастырады. Егер сайт басқа сайттардың сыйымдылығынан екі есе жоғары, біз жай ұсынамыз тізімде екі рет, айталық . Енді екі есе көп объектілер картаға түсетіні анық басқа сайттарға қатысты.

Қасиеттері

Бұл алдымен емдеу үшін жеткілікті болып көрінуі мүмкін n сайттар а хэш-кесте және нысан атауын хэштеу O осы кестеге. Алайда, егер сайттардың кез-келгені істен шықса немесе қол жетімді болмаса, хэш кестесінің өлшемі өзгеріп, барлық нысандарды қайта орналастыруды талап етеді. Мұндай жаппай бұзушылық осындай тікелей хэштеуді қолдануға жарамсыз етеді. Кездесетін хэштеу кезінде клиенттер сайттағы сәтсіздіктерді келесі үлкен салмақты беретін сайтты таңдау арқылы шешеді. Қайта құру сәтсіз сайтқа салыстырылған нысандар үшін ғана қажет, ал бұзу минималды.[1][2]

Рендезивті хэштеу келесі қасиеттерге ие:

  1. Төмен үстеме шығындар: Пайдаланылатын хэш функциясы тиімді, сондықтан клиенттерге шығындар өте төмен.
  2. Жүктемелерді теңдестіру: Хэш функциясы кездейсоқ болғандықтан, әрқайсысы n сайттар бірдей нысанды алуы мүмкін O. Жүктер учаскелер бойынша біркелкі.
    1. Сайттың сыйымдылығы: Сыйымдылығы әр түрлі сайттар сайттар тізімінде сыйымдылыққа пропорционалды түрде ұсынылуы мүмкін. Басқа сайттардың сыйымдылығынан екі есе көп сайт тізімде екі рет, ал қалған сайттар бір рет ұсынылады.
  3. Жоғары соққы жылдамдығы: Барлық клиенттер нысанды орналастыруға келісетіндіктен O сол сайтқа SO , әрбір алу немесе орналастыру O ішіне SO соққы жылдамдығы бойынша максималды утилитаны береді. Нысан O ауыстыру алгоритмімен шығарылмаса, әрдайым табыла береді SO.
  4. Минималды бұзушылық: Сайт сәтсіздікке ұшыраған кезде, тек сол сайтқа салыстырылған нысандарды қайта қалпына келтіру қажет. Бұзылу мүмкін болатын минималды деңгейде, дәлелдегендей.[1][2]
  5. Таратылды к- келісім: Клиенттер үлестірілген келісімге қол жеткізе алады к сайттарды тек жоғарғы жағын таңдау арқылы к тапсырыс беру кезінде сайттар.[9]

Тұрақты хэштермен салыстыру

Тұрақты хэштеу сайттарды жетондар деп аталатын бірлік шеңбердің нүктелеріне біркелкі және кездейсоқ картаға түсіру арқылы жұмыс істейді. Нысандар блок шеңберіне кескінделеді және таңбалауыш объект орналасқан жерден сағат тілінің бағыты бойынша бірінші болып кездесетін сайтқа орналастырылады. Сайтты алып тастағанда, оған тиесілі объектілер сағат тілінің бағытымен қозғалған кезде кездесетін келесі белгіге ие сайтқа беріледі. Егер әрбір сайт таңбалауыштардың үлкен санымен (100-200 дейік) бейнеленген жағдайда, бұл қалған объектілер арасында нысандарды салыстырмалы түрде біркелкі етіп қайта тағайындайды.

Егер сайттар сайт идентификаторының 200 нұсқасын хэштеу арқылы кездейсоқ шеңбер нүктелерімен салыстырылса, айталық, кез-келген объектіні тағайындау әр сайт үшін 200 хэш мәнін сақтауды немесе қайта есептеуді қажет етеді. Дегенмен, берілген сайтпен байланысты таңбалауыштарды алдын-ала есептеуге және сұрыпталған тізімде сақтауға болады, бұл объектіге хэш функциясын бір рет қолдануды және тапсырманы есептеу үшін екілік іздеуді қажет етеді. Бір сайтта көптеген таңбалауыштар болғанымен де, жүйелі хэштеудің негізгі нұсқасы объектілерді сайттар бойынша біркелкі теңестіре алмауы мүмкін, өйткені сайт жойылған кезде оған тағайындалған әрбір объект тек сайт жетондары бар барлық басқа сайттарға таратылады (мысалы, 100) –200).

Үнемі хэштеу нұсқалары (мысалы, Amazon сияқты) Динамо ) белгілерді блок шеңберіне тарату үшін неғұрлым күрделі логиканы қолданған тиімді жүктемені теңдестіру қарапайым дәйекті хэштеуге қарағанда, жаңа сайттар қосудың үстеме ақысын азайтыңыз және метамәліметтердің үстеме ақысын азайтыңыз және басқа да артықшылықтар ұсыныңыз.[11]

Керісінше, кездесуге арналған хэштеу (HRW) тұжырымдамалық және іс жүзінде әлдеқайда қарапайым. Ол сондай-ақ объектілерді бірыңғай хэш функциясы берілгендіктен барлық сайттарға біркелкі таратады. Тұрақты хэштен айырмашылығы, HRW токендерді алдын-ала есептеуді немесе сақтауды қажет етпейді. Нысан біреуіне орналастырылған сайттар есептеу арқылы хэш мәндері және сайтты таңдау бұл ең жоғары хэш мәнін береді. Егер жаңа сайт болса қосылады, жаңа объект орналастырулары немесе сұраныстары есептеледі хэш мәндерін таңдап, олардың ішіндегі ең үлкенін таңдаңыз. Егер жүйеде бұрыннан бар объект осы жаңа сайттың карталары , ол жаңадан әкелінеді және кэштеледі . Бұдан әрі барлық клиенттер оны осы сайттан, ал ескі кэштелген мекен-жайы бойынша алады сайып келгенде жергілікті кэшті басқару алгоритмімен алмастырылады. Егер оффлайн режимінде қабылданады, оның нысандары қалғандарына біркелкі ауыстырылады сайттар.

HRW алгоритмінің нұсқалары, мысалы, онтогенезді пайдалану (төменде қараңыз) объектінің орналасу уақыты , орналастырудың жаһандық біркелкілігі есебінен. Қашан тым үлкен емес, дегенмен негізгі HRW орналастыру құны проблема тудыруы мүмкін емес. HRW әр сайт пен байланысты метадеректер үшін бірнеше таңбалауыштарды дұрыс өңдеумен байланысты барлық үстеме шығындар мен күрделіліктен толықтай аулақ болады.

Рендезивті хэштеудің үлкен артықшылығы бар, ол басқа маңызды мәселелердің қарапайым шешімдерін ұсынады, мысалы, таратылады - келісім.

Үнемі хэштеу - бұл Rendevvous хэштеуінің ерекше жағдайы

Рендезивті хэштеу тұрақты хэштеуге қарағанда қарапайым әрі жалпы болып табылады. Тұрақты хэштеуді HRW-тің ерекше жағдайы ретінде екі орынды хэш функциясын таңдау арқылы көрсетуге болады. Сайт идентификаторынан дәйекті хэштеудің қарапайым нұсқасы таңбалауыш позицияларының тізімін есептейді, мысалы. қайда бірлік шеңберіндегі орындарға мәндерді бөлу. Екі орындық хэш-функцияны анықтаңыз болу қайда бірлік шеңбер бойымен арақашықтықты білдіреді дейін (бері нөлге тең емес минималды мәнге ие, бұл мәнді кейбір шектеулі аралықта бірегей бүтін санға аударуда ешқандай проблема жоқ). Бұл дәйекті хэштеу арқылы жасалған тапсырманы дәл қайталайды.

Бұл мүмкін емес азайту HRW жүйелі түрде хэштеуге дейін (бір сайтқа жетондар саны шектелген деп есептейміз), өйткені HRW жойылған сайттан объектілерді басқа сайттардың шектеусіз санына қайта тағайындай алады.

Өлшенген вариация

Кездесу хэшін стандартты түрде жүзеге асыруда әрбір түйін кілттердің статикалық тең пропорциясын алады. Бұл мінез-құлық, бірақ түйіндер өздерінің тағайындалған кілттерін өңдеуге немесе ұстап тұруға әр түрлі мүмкіндіктерге ие болған кезде қажет емес. Мысалы, егер түйіндердің біреуі басқалардан екі есе көп сыйымдылыққа ие болса, алгоритм осыны ескере отырып, осы қуатты түйін басқалардың әрқайсысымен екі есе кілт санын алуы тиімді болар еді.

Бұл істі қараудың қарапайым механизмі осы түйінге екі виртуалды орынды тағайындау болып табылады, егер сол үлкен түйіннің виртуалды орындарының кез-келгені ең жоғары хэшке ие болса, сол түйін кілтті алады. Бірақ салыстырмалы салмақтар бүтін еселіктер болмаған кезде бұл стратегия жұмыс істемейді. Мысалы, егер бір түйіннің сақтау сыйымдылығы 42% -ға көп болса, оған әр түрлі пропорцияларда көптеген виртуалды түйіндер қосылып, өнімділік айтарлықтай төмендейді. Бұл шектеуден шығу үшін кездесуге арналған хэштеудің бірнеше өзгертулері ұсынылды.

Кэш массивін бағыттау хаттамасы

The Кэш массивін бағыттау хаттамасы (CARP) - есептеу әдісін сипаттайтын 1998 IETF жобасы жүктеме факторлары оны әр түйіннің хэш-балына көбейтуге болады, түйіндерді өлшеу үшін ерікті түрде дәлдік деңгейі әр түрлі болады.[5] Алайда, бұл тәсілдің бір кемшілігі мынада: кез-келген түйіннің салмағы өзгергенде немесе кез-келген түйін қосылғанда немесе жойылған кезде барлық жүктеме факторлары қайта есептеліп, салыстырмалы түрде масштабталуы керек. Жүктеме коэффициенттері бір-біріне қатысты өзгергенде, бұл салмақ өзгермеген, бірақ жүктеме коэффициенті жүйенің басқа түйіндеріне қатысты өзгерген түйіндер арасындағы кілттердің қозғалысын тудырады. Бұл пернелердің артық қозғалысына әкеледі.[12]

Реплика бақыланады

Масштабталған хэштеу немесе CRUSH кезінде бақыланатын реплика[13] - RUSH кеңейтімі[14] бұл ағашты салу арқылы кездесуге арналған хэштеуді жақсартады, онда псевдо-кездейсоқ функция (хэш) ағаштың бойымен жылжу үшін берілген түйін үшін қай түйін жауап беретінін табады. Бұл түйіндерді қосу үшін керемет тұрақтылыққа мүмкіндік береді, бірақ түйіндерді алып тастағанда немесе салмақ өлшегенде ол тұрақты емес, пернелердің артық қозғалысы ағаштың биіктігіне пропорционалды болады.

CRUSH алгоритмін цеф деректер объектілерін оларды сақтауға жауапты түйіндерге бейнелейтін деректерді сақтау жүйесі.[15]

Қаңқаға негізделген нұсқа

HRW іске асыруда қолданылатын қаңқа.

Қашан өте үлкен, қаңқаға негізделген нұсқа жұмыс уақытын жақсарта алады.[16][17][18] Бұл тәсіл виртуалды иерархиялық құрылымды жасайды («қаңқа» деп аталады) және оған қол жеткізеді иерархиядан түсу кезінде әр деңгейде HRW қолдану арқылы жұмыс уақыты. Идея - алдымен бірнеше тұрақты таңдау және сайттар кластерлер Әрі қарай, тұрақты таңдау арқылы виртуалды иерархияны құрыңыз және бұларды елестету ағаш жапырақтарына орналастырылған шоғырлар әрқайсысы желдеткіші бар виртуалды түйіндер .

Ілеспе диаграммада кластердің өлшемі көрсетілген және онтогенезі желдеткіш болып табылады . Ыңғайлы болу үшін 108 сайтты (нақты түйіндерді) алсақ, біз үш деңгейлі виртуалды иерархияны аламыз. Бастап , әрбір виртуалды түйінде сегіздікте табиғи нөмірлеу бар. Осылайша, төменгі деңгейдегі 27 виртуалды түйін нөмірленеді сегіздікте (әрине, әр деңгейдегі желдеткішті өзгерте аламыз - бұл жағдайда әр түйін сәйкес радиустық санмен анықталады).

HRW-ді барлық 108 нақты түйіндерге қолданудың орнына, біз HRW-ді ең төменгі деңгейлі 27 виртуалды түйінге таңдай отырып қолдана аламыз. Содан кейін біз HRW-ді оның кластеріндегі төрт нақты түйінге қолданамыз және жеңімпаз сайтты таңдаймыз. Бізге тек керек Егер бұл әдісті иерархияда бір деңгейден жоғары бастайтын болсақ, бізге қажет болар еді жеңімпаз сайтқа жету үшін хэштер. Суретте қаңқаның тамырынан басталатын болса, виртуалды түйіндерді қалай таңдауға болатындығы көрсетілген , , және , соңында 74-сайтпен аяқталады.

Біз виртуалды иерархияда кез-келген деңгейден бастауға болады, тек тамырдан емес. Иерархияда төменнен бастау көп хэштерді қажет етеді, бірақ сәтсіздік жағдайында жүктеменің таралуын жақсарта алады. Сондай-ақ, виртуалды иерархияны сақтаудың қажеті жоқ, бірақ оны сұраныс бойынша жасауға болады, өйткені виртуалды түйіндердің атаулары жай негіздің префикстері болып табылады (немесе аралас-радикс) көріністер. Қажет болса, біз сандардан тиісті сұрыпталған жолдарды оңай жасай аламыз. Мысалда біз жіптермен жұмыс істейтін болар едік (1 деңгей бойынша), (екінші деңгей бойынша), және (3 деңгей бойынша). Анық, биіктігі бар , бері және екеуі де тұрақты. Әр деңгейде жасалған жұмыс , бері тұрақты болып табылады.

Кез келген берілген объект үшін әдіс әр кластерді, демек, әрқайсысын таңдайтыны анық бірдей ықтималдықпен сайттар. Егер ақырында таңдалған сайт қол жетімді болмаса, біз әдеттегідей бір кластердің ішінен басқа сайтты таңдай аламыз. Сонымен қатар, біз онтогенездегі бір немесе бірнеше деңгейге көтеріліп, сол деңгейдегі бауырлас виртуалды түйіндердің арасынан балама таңдап, иерархияны жоғарыдағыдай нақты түйіндерге тағы бір рет түсіре аламыз.

Мәні күтілетін ақаулық коэффициенті және қажетті жүктеме тепе-теңдігі дәрежесі сияқты факторларды таңдауға болады. Жоғары мәні Іздеу үстеме ақысы есебінен сәтсіздік жағдайында жүктеменің аз қисаюына әкеледі.

Таңдау иерархиялық емес кездесуге арналған хэшке тең. Іс жүзінде хэш функциясы өте арзан, сондықтан қоспағанда, өте жақсы жұмыс істей алады өте жоғары.

Басқа нұсқалар

2005 жылы Кристиан Шиндельхауэр мен Гуннар Шомакер тораптың салмағын өзгерткенде немесе түйіндерді қосқанда немесе алып тастаған кезде жүктеме факторларының салыстырмалы масштабтауын қажет етпейтін тәсілмен хэш-баллдарды қайта өлшеудің логарифмдік әдісін сипаттады.[19] Бұл түйіндерді өлшеу кезінде мінсіз дәлдіктің қосарлы артықшылықтарын, сонымен қатар мінсіз тұрақтылықты қамтамасыз етті, өйткені жаңа түйіндерге пернелердің минималды саны қайта оралуы керек.

Деректерді сақтау түйіндеріне тағайындау үшін ұқсас логарифмге негізделген хэштеу стратегиясы қолданылады Cleversafe деректерді сақтау жүйесі, қазір IBM бұлтты нысанды сақтау.[12]

Іске асыру

Іске асыру тікелей а хэш функциясы таңдалады (HRW әдісі бойынша түпнұсқа жұмыс хэш функциясына ұсыныс жасайды).[1][2] Әрбір клиент тек әрқайсысы үшін хэш мәнін есептеуі керек сайттарды таңдап, содан кейін ең үлкенін таңдаңыз. Бұл алгоритм іске қосылады уақыт. Егер хэш функциясы тиімді болса, егер жұмыс істемейтін болса, мәселе болмайды өте үлкен.

Кездесудің өлшенген хэші

Салмақталған хэшті жүзеге асыратын Python коды:[12]

#! / usr / bin / env python3импорт ммх3импорт математикадеф int_to_float(мәні: int) -> жүзу:    «» «Біркелкі кездейсоқ [[64-биттік есептеу | 64-биттік]] бүтін санды  [0, 1)  аралығында біркелкі кездейсоқ өзгермелі нүкте санына айналдырады.» «»    елу үштен = 0xFFFFFFFFFFFFFFFF >> (64 - 53)    елу_үш үш_нөл = жүзу(1 << 53)    қайту (мәні & елу үштен) / елу_үш үш_нөлсынып Түйін:    «» «Салмақталған кездесу хэші ретінде кілттер тағайындалған түйінді ұсынатын класс.» «»    деф __ішінде__(өзіндік, аты: str, тұқым, салмағы) -> Жоқ:        өзіндік.аты, өзіндік.тұқым, өзіндік.салмағы = аты, тұқым, салмағы    деф __str__(өзіндік):        қайту "[" + өзіндік.аты + " (" + str(өзіндік.тұқым) + ", " + str(өзіндік.салмағы) + ")]"    деф compute_weighted_score(өзіндік, кілт):        hash_1, хэш_2 = ммх3.хэш64(str(кілт), 0xFFFFFFFF & өзіндік.тұқым)        hash_f = int_to_float(хэш_2)        Гол = 1.0 / -математика.журнал(hash_f)        қайту өзіндік.салмағы * Голдеф анықтау_жауапсыз_түйін(түйіндер, кілт):    «» «Әр түрлі салмақтағы түйіндер жиынтығының қай түйіні берілген кілт үшін жауап беретінін анықтайды.» «»    ең жоғары_ұпай, чемпион = -1, Жоқ    үшін түйін жылы түйіндер:        Гол = түйін.compute_weighted_score(кілт)        егер Гол > ең жоғары_ұпай:            чемпион, ең жоғары_ұпай = түйін, Гол    қайту чемпион

WRH мысалдары:

[GCC 4.2.1 үйлесімді Apple LLVM 6.0 (clang-600.0.39)]Қосымша ақпарат алу үшін «анықтама», «авторлық құқық», «несиелер» немесе «лицензия» теріңіз.>>> импорт wrh>>> түйін1 = wrh.Түйін(«түйін1», 123, 100)>>> түйін2 = wrh.Түйін(«түйін2», 567, 200)>>> түйін3 = wrh.Түйін(«түйін3», 789, 300)>>> str(wrh.анықтау_жауапсыз_түйін([түйін1, түйін2, түйін3], «ақымақ»))'[түйін3 (789, 300)]' '>>> str(wrh.анықтау_жауапсыз_түйін([түйін1, түйін2, түйін3], 'бар'))'[түйін3 (789, 300)]' '>>> str(wrh.анықтау_жауапсыз_түйін([түйін1, түйін2, түйін3], 'Сәлеметсіз бе'))'[түйін2 (567, 200)]'

Әдебиеттер тізімі

  1. ^ а б c г. e f Талер, Дэвид; Чиня Равишанкар. «Рендеван үшін картаға түсіруге арналған схема» (PDF). Мичиган университетінің техникалық есебі CSE-TR-316-96. Алынған 2013-09-15.
  2. ^ а б c г. Талер, Дэвид; Чиня Равишанкар (1998 ж. Ақпан). «Хит ставкаларын жоғарылату үшін атауларға негізделген карта схемаларын қолдану». Желідегі IEEE / ACM транзакциялары. 6 (1): 1–14. CiteSeerX  10.1.1.416.8943. дои:10.1109/90.663936.
  3. ^ Блажевич, Любица. «Таратылған Core Multicast (DCM): ұялы IP телефониясына қосымшасы бар көптеген шағын топтар үшін маршруттау хаттамасы». IETF жобасы. IETF. Алынған 17 қыркүйек, 2013.
  4. ^ Феннер, Б. «Хаттаманың тәуелсіз көп арналы таратылымы - сирек режим (PIM-SM): хаттаманың сипаттамасы (қайта қаралған)». IETF RFC. IETF. Алынған 17 қыркүйек, 2013.
  5. ^ а б Валлоппиллил, Винод; Кеннет Росс. «V1.0 кэш массивін бағыттау хаттамасы». Интернет жобасы. Алынған 15 қыркүйек, 2013.
  6. ^ «Кэш массивін бағыттау хаттамасы және Microsoft Proxy Server 2.0» (PDF). Microsoft. Архивтелген түпнұсқа (PDF) 2014 жылғы 18 қыркүйекте. Алынған 15 қыркүйек, 2013.
  7. ^ Майанк, Ануп; Равишанкар, Чиня (2006). «Тарату серверлері болған кезде мобильді құрылғы байланысын қолдау» (PDF). Халықаралық сенсорлық желілер журналы. 2 (1/2): 9–16. дои:10.1504 / IJSNET.2007.012977.
  8. ^ Гуо, Данхуа; Бхуян, Лакси; Лю, Бин (қазан 2012). «Көп ядролы серверлерге арналған тиімді параллельді L7-сүзгі дизайны». Желідегі IEEE / ACM транзакциялары. 20 (5): 1426–1439. дои:10.1109 / TNET.2011.2177858.
  9. ^ а б Ван, Пенг; Равишанкар, Чиня (2015). «Сенсорлық желілердегі кілттерді ұрлау және кілттерді ұрлау'" (PDF). Халықаралық сенсорлық желілер журналы.
  10. ^ Мукерджи, Нилой; т.б. (Тамыз 2015). «Oracle дерекқорының таратылған архитектурасы жадыда». VLDB қорының материалдары. 8 (12): 1630–1641. дои:10.14778/2824032.2824061.
  11. ^ ДеКандия, Г .; Хасторун, Д .; Джампани, М .; Какулапати, Г .; Лакшман, А .; Пилчин, А .; Сивасубраманиан, С .; Восшалл, П .; Vogels, W. (2007). «Динамо: Amazon-дың қол жетімді дүкені» (PDF). Операциялық жүйелер принциптері бойынша 21-ші ACM симпозиумының материалдары. дои:10.1145/1323293.1294281. Алынған 2018-06-07.
  12. ^ а б c Джейсон Реш. «Деректерді сақтаудың жаңа алгоритмдері» (PDF).
  13. ^ Sage A. Weil; т.б. «CRUSH: бақыланатын, масштабталатын, қайталанған деректерді орталықтандырылмаған орналастыру» (PDF).
  14. ^ Хоники, Этан Л. Миллер. «Масштабты хэштеу кезіндегі репликация: орталықтандырылмаған деректерді тарату алгоритмдерінің отбасы» (PDF).
  15. ^ Ceph. «Карталарды кесу».
  16. ^ Яо, Цзычжэнь; Равишанкар, Чиня; Трипати, Сатиш (2001 ж. 13 мамыр). Гибридті мазмұн беру желілеріндегі кэштеуге арналған хэшке негізделген виртуалды иерархиялар (PDF). Риверсайд, Калифорния, Калифорния Университеті, Риверсайд. Алынған 15 қараша 2015.
  17. ^ Ван, Вэй; Чиня Равишанкар (2009 ж. Қаңтар). «Мобильді уақытша желілердегі масштабты орналасу қызметіне арналған хэшке негізделген виртуалды иерархиялар». Мобильді желілер және қосымшалар. 14 (5): 625–637. дои:10.1007 / s11036-008-0144-3.
  18. ^ Майанк, Ануп; Фатак, Тривикрам; Равишанкар, Чиня (2006), Таратылған мультимедиялық кэштерді орталықтандырылмаған хэш негізінде үйлестіру (PDF), Proc. 5 IEEE желілік байланыс жөніндегі халықаралық конференция (ICN'06), Маврикий: IEEE
  19. ^ Кристиан Шиндельхауэр, Гуннар Шомакер (2005). «Салмағы бар таратылған хэш кестелер»: 218. CiteSeerX  10.1.1.414.9353. Журналға сілтеме жасау қажет | журнал = (Көмектесіңдер)


Сыртқы сілтемелер