Yahoo Sherpa - Yahoo Sherpa - Wikipedia

Шерпа
ӘзірлеушілерYahoo!
ЖазылғанC ++, PHP
Операциялық жүйеLinux
Түрікілттер қоймасы

Шерпа болып табылады Yahoo! кейінгі буын бұлтты сақтау платформа. Бұл орналастырылған, таратылған және географиялық репликаланған кілт мәні деректер дүкені. Бұл NoSQL Yahoo! жасаған, жүйені масштабтылық, қол жетімділік және кешігу Yahoo! қажеттіліктері веб-сайттар. Шерпа серпімді өсу, көп пәтерлі тұрғын үй, жергілікті төмен кідірісті қол жетімділіктің ғаламдық ізі, асинхронды көбейту, өкілді мемлекеттік трансферт (REST) ​​негізделген веб-сервис API, жазбаға сәйкес келетін жаңа тұтқалар, қол жетімділік, қысу, қайталама индекстер және жазбалар деңгейіндегі реплика.

Сәулет

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

Мәліметтер моделі

Шерпаның деректер моделі - бұл деректер сақталатын негізгі құндылықтар дүкені JSON блоктар. Деректер негізгі кілттердің бірегейлігі орындалуы мүмкін кестелерде ұйымдастырылған, бірақ одан басқа тұрақты схемалар жоқ. Ол предикаттары бар бір үстелді сканерлеуді қолдайды. Клиенттер әр түрлі үстел түрлерін таңдай алады: таратылған хэш-кесте, тапсырыс кестесін үлестірді және кестелерді игерді және біріктірді. Қолданбаның арнайы қол жеткізу үлгілері әр кесте түрінің жарамдылығын анықтайды. Сұрау үлгілері кілт анықтамасына әсер етеді.

Ерекшеліктер

Масштабтылық

Шерпа масштабы деректерді бөлу бойынша: мәліметтер бөлімдері деп аталады таблеткалар. Тұтынушы анықтаған әрбір кесте планшеттерге бөлінеді. Осылайша, планшеттер - бұл жұмыс тағайындаудың және жалдаудың бірлігі. Әр планшетте бірқатар жазбалар бар. Sherpa кестелердің, планшеттердің және жазбалардың көп мөлшеріне дейін масштабтауы мүмкін.

Серпімділік

Жүйе көлденең масштабта, жаңа машиналар қосылады, қосымшалардың тоқтауы болмайды. Басқа икемділік операцияларына мәліметтер бөлімдерін тағайындау, қайта тағайындау және бөлу кіреді.

Ақаулыққа төзімділік

Деректер автоматты түрде бірнеше түйіндерге көшіріледі ақаулыққа төзімділік. Репликация бірнеше деректер орталықтарында қолдау көрсетіледі. Бір түйінді сәтсіздік қосымшалар үшін ашық. Sherpa сенімді транзакциялық хабарламаға сүйенеді автобус транзакцияларды көшіруге арналған. Бұл хабарламалық автобус транзакциялық хабарламаларды бір реттен кем емес жеткізуге кепілдік береді.

Реттелетін консистенция

Шерпа барлық жазбалар серияланған негізгі көшірмеге дейінгі уақыт шкаласының дәйектілігінен бастап әр түрлі дәйектілік деңгейлерін қолдайды түпкілікті дәйектілік.

Жазбаның таңдамалы көшірмесі

Репликация түйіршіктілік жазбалар мен кестелер деңгейлерінде кездеседі.

Сақтық көшірме

Сақтық көшірме жасау мүмкіндігі кестенің бірнеше ескі көшірмелерін сақтауға мүмкіндік береді желіден тыс сақтау. Бұл оффлайн жадтан клиенттер жеке жазбалардың ескі нұсқаларын ала алады.

Екінші индекстер

Көптеген қосымшалар деректерге негізгі емес өрістер арқылы қол жеткізуі керек. Шерпа асинхронды қайталама индекстерді қолдайды.

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

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

  • «PNUTS архитектурасы». CiteSeerX  10.1.1.141.68. Журналға сілтеме жасау қажет | журнал = (Көмектесіңдер)
  • Sherpa жаңарту
  • Yahoo Developer Network
  • Шерпаның өсуі және ауқымы