Днес ще говорим за това каква е репликацията на данните. Как се използва? Какви видове има? Въпреки, че този термин може да се срещне най-често в компютърната сфера, той също така обозначава някои процеси, които протичат дори в противоположни области на науката. Да видим репликацията - какво е това?
Самият термин идва от латински, от думата replicatio - обновяване, повторение. Така можем да заключим, че съвременната концепция за репликация означава приблизително едно и също нещо - увеличаване на броя, копиране. Репликацията е процес, който ви позволява да създадете копие на обект.
Да започнем с по-прости концепции. Процесът на възпроизвеждане на компактдискове всъщност е репликиране и разпространение поради увеличаване на производството, а оттам и количеството на щамповане, произвеждано от централата.
В медицината и биологията репликацията е процесът, който е в основата клетъчно делене, което води до удвояване ДНК молекули. Поради това съществува пълно копиране на генетичния материал за предаване от поколение на поколение.
В компютърна среда репликацията е една от причините системните администратори да спят спокойно. Този процес е много подобен на архивирането на сървърни данни, но всъщност той е само част от него. Различават се два вида репликация - синхронни и асинхронни. Каква е същността на този процес?
Репликацията е техника за мащабиране на бази данни. Тя се състои в това, че данните от главния сървър ("master") непрекъснато се копират в един или няколко вторични ("slave"). В резултат на това клиентските приложения могат да използват данни не от един мрежов възел, а от няколко, което от своя страна значително намалява натоварването.
Практикува се два вида репликация. Първият е репликация като главен роб. Тази схема използва принципа, че всички промени се случват само на един сървър - "капитана". И тогава те се копират в репликиращи сървъри - роби. По този начин всеки от тях изпълнява функцията си.
Тази схема е доста удобна. В случаите на проблеми на "master", всички операции по писане трябва да се превключват на "slave", обратното също е вярно. Сървърите са напълно взаимозаменяеми. Когато използвате този тип репликация, можете да хоствате до 20 "подчинени" сървъра. Често този тип се използва за архивиране на данни.
Вторият тип репликация е "майстор-майстор". Това означава, че потребителят влиза в произволен сървър и след това обменят данни помежду си. Тази схема е много непривлекателна от гледна точка на сигурността, тъй като ако някой от сървърите се провали, в повечето случаи всички данни се губят.
Въпреки всички предимства на тази техника, репликацията на SQL има няколко недостатъка. Една от тях е асинхронни операции. Това означава, че има закъснение при прехвърлянето от главния сървър към "slave". Трудно е да се определи колко бързо ще се появят новите данни на "роба", защото забавянето може да е доста незначително и може би много голямо. Ако трябва да работите непрекъснато с данни, трябва да използвате обаждане до същия "главен" сървър, а не да четете данните от "slave".
За да избегнете това, можете да използвате синхронен режим. Принципът му е, че всички заявки идват на главния сървър, а отговорите идват от "роб". По този начин се гарантира пълно копиране на данни във вторичния възел. Естествено, това води до голяма загуба на скорост, но опростява цялата система.
Тъй като репликацията е сложен и многостранен процес, е много трудно да се вземат предвид всички аспекти на тази методология. В допълнение, това не е специфична технология, а по-скоро набор от конкретни инструкции и действия. Освен това някои компютърни технологии по принцип не могат да работят с репликация.
За такива ситуации има специална техника. Когато разработвате приложение, можете да добавите само-репликация. Вашето приложение трябва да изпраща заявки до няколко сървъра едновременно, за да избегнете проблеми, свързани с репликацията, и да заобиколите отсъствието му между сървърите, като получите всички необходими данни.
В случай на неизправност на един от сървърите е необходимо да се деактивира неработещият сървър и да се разреши репликация от типа - "master slave". Това ще ви позволи да синхронизирате всички копия и да организирате данните. След като поправите повредения сървър и синхронизацията, можете да го включите отново в системата и да върнете всичко на нормално ниво.
Използването на репликация в системите за бази данни не винаги е оправдано. Сложните механизми за четене на запис или намаляват скоростта на обработка на заявките, или намаляват надеждността на системата. обработка на информация. По този начин, ако трябва да създадете резервно копие на вашия работещ сървър, редовно го прави по-добре и спи спокойно.