Всичко, което не знаехте за Amazon Aurora

Традиционните системи за бази данни имат много ограничения в производителността, достъпността и мащабируемостта. Amazon Aurora е решението на тези ограничения.

Базите данни са необходими за захранване на приложенията, които управляват бизнеса. Те трябва да бъдат по-големи, по-надеждни и по-бързи, за да предоставят по-добри услуги. Уеб услугите на Amazon улесняват фирмите да управляват данни и подобряват удовлетвореността на клиентите.

Уеб услугата AWS Aurora на Amazon е пример за такава услуга. Той използва клъстерен обем, за да управлява своите данни и да ги разпределя за аварийно архивиране.

Какво е Amazon Aurora?

Amazon Aurora, базирана в облак база данни, е напълно съвместима с MySQL с отворен код и PostgreSQL. Aurora поддържа цялата MySQL функционалност с отворен код. Той също така позволява съвместимост с приложения, които работят на тези бази данни.

Aurora е проектирана за клиенти, които се нуждаят от напълно управлявана услуга за база данни с рентабилността и простотата на базите данни с отворен код, но същата производителност като комерсиалната база данни.

Aurora осигурява производителност пет пъти по-бърза от традиционния MySQL и три пъти по-добра от PostgreSQL. Amazon RDS се справя със задачи като осигуряване, архивиране и възстановяване. Няма предварителни разходи и плащате само месечна такса.

Aurora е уникална с това, че предлага опит за оперативни съвършенства и корпоративни функции на малка част от цената на комерсиалните бази данни.

Aurora осигурява несравнима производителност, достъпност, сигурност и надеждност в световен мащаб. Aurora е най-бързо развиващата се услуга в портфолиото на AWS от създаването си през 2014 г.

За какво се използва Amazon Aurora?

Забележителният растеж на Aurora се дължи на силен интерес от страна на много индустрии. През последните дванадесет месеца наблюдаваме силен интерес към финансови услуги, софтуер и интернет, както и вертикали за развлечения и игри и търговия на дребно.

Клиентите мигрират към Aurora MySQL и Aurora PostgreSQL, за да консолидират своите MySQL и PostgreSQL бази данни. Също така виждаме много клиенти да мигрират от наследени бази данни като Oracle или Microsoft SQL Server към Aurora PostgreSQL.

Тези клиенти, които са „без прекъсване“, са се уморили да плащат високи лицензионни такси и да се затварят в наследени бази данни. Клиентите с висок растеж искат бързо и безпроблемно мащабиране във всички региони. Те също така искат да могат да се интегрират в услугите на AWS.

Предимства на Amazon Aurora

По-долу са посочени предимствата от използването на Amazon Aurora:

Мащабируемост

Можете да активирате автоматичното мащабиране. Това ще увеличи капацитета за съхранение, когато имате повече място за съхранение. Това също ще намали размера на вашата база данни, ако има намаление на пространството за съхранение.

Рентабилен

Плащайте само за мощността на обработка и пространството за съхранение, което използвате. Няма предварителни такси или други такси. Лесно е да правите месечни плащания.

Сигурност

Amazon VPC ви позволява да изолирате мрежата, от която работи вашата база данни.

Използвайте услугата за управление на ключове на AWS, за да създадете ключове за криптиране, които защитават вашите данни.

Висока наличност и издръжливост

Можете да създавате реплики на Аврора в много зони на достъпност.

Това е глобална база данни, която може лесно да бъде разпределена в множество региони на AWS, което може да намали локалната скорост на четене/запис.

Поддръжка за миграция

За да мигрирате вашата локална база данни към Aurora, можете да използвате командите pg-dump или MySQL dump.

Напълно управляван

Aurora е много лесен за използване. Лесно е да настроите екземпляр с помощта на AWS RDS конзолата. Aurora предлага наблюдение с Amazon Cloudwatch без допълнителни разходи.

Няма нужда да се притеснявате за осигуряване, актуализиране или надграждане. Amazon има пълен контрол върху всички аспекти на вашия софтуер и ще извърши всички необходими корекции.

Най-добрите характеристики на Amazon Aurora

По-долу са най-добрите характеристики на Amazon Aurora:

Мащабируемост: Това е най-добрата характеристика на Amazon Aurora. Базата данни автоматично се увеличава по размер според изискванията за съхранение. Обемът може да нараства на стъпки до 10 GB и може да достигне максимум 128TB. Това позволява безпроблемно съхранение.

  Как да смените батериите в Oculus Controller

Висока производителност: Сравнителните тестове на SysBench показват 5 пъти увеличение на производителността. Amazon Aurora използва различни софтуерни и хардуерни техники, за да увеличи максимално наличната памет, изчисленията и работата в мрежа. За подобряване на последователността на производителността, входните и изходните операции се използват техники на разпределена система, като кворуми.

Мониторинг и поправка на екземпляри: Amazon RDS непрекъснато следи изправността и производителността на базата данни Amazon Aurora, както и основните екземпляри EC2. Amazon RDS автоматично рестартира базата данни в случай на повреда в базата данни и всички свързани процеси.

Шифроване: Amazon Aurora осигурява висока сигурност, като ви позволява да шифровате базата данни с помощта на ключове, които контролирате и създавате чрез AWS Key Management Service. Amazon Aurora използва SSL криптиране за защита на данните по време на пренос.

Лесен за използване: Лесен е за използване Amazon Aurora. Amazon RDS Management Console се използва за създаване на новия екземпляр на Amazon Aurora DB. Това API извикване или CLI приема само едно API извикване. Amazon Aurora DB инстанции идват предварително конфигурирани с подходящите параметри и настройки за всеки тип DB инстанция.

Рентабилно: Плащайте само за това, което използвате. Няма предварителни разходи или други такси. Лесно е да правите месечни плащания.

Поддръжка за миграция: За да мигрирате вашата локална база данни от Aurora към Aurora, можете да използвате командите pg-dump или MySQL dump.

Aurora се управлява напълно: можете да започнете да я използвате веднага. Всичко, което трябва да направите, е да създадете екземпляр с помощта на AWS RDS конзолата или да извикате API от вашия код. Няма нужда да се притеснявате за осигуряване, актуализиране или надграждане.

Архитектура на Amazon Aurora

Цялата архитектура на базата данни на Aurora е изградена върху традиционна СУБД. Той използва повторно повечето компоненти на СУБД, като мениджър на транзакции, механизъм за изпълнение на заявки и мениджър за възстановяване.

Amazon Aurora е нова СУБД, която надхвърля традиционната игра. Той прави много подобрения на съществуващите СУБД, за да увеличи тяхната наличност, надеждност и мащабируемост.

Тези промени са:

  • Използва се настройка на първична реплика
  • Отдалеченото съхранение на данните може да бъде репликирано
  • На отдалечения диск трябва да се записват само журнали за промени

Архитектурата на Amazon Aurora може да мащабира слоевете за съхранение на традиционните релационни бази данни.

Екземплярът на първичната база данни на Amazon Aurora предава журнала за повторение на своя слой за съхранение за обработка. Регистрационните файлове се обработват от слоя за съхранение, който създава и съхранява нови версии на страници и архивира всичко до S3.

Кредит за изображение: AWS

Amazon Aurora трябва само да създаде допълнителни екземпляри на машината за база данни и да ги свърже със съществуващия слой за съхранение по време на мащабиране. Това елиминира пречките при репликацията на данни чрез делегиране на тези задачи за паралелна обработка на слоя за съхранение.

Това позволява създаването на много нови функции, като например:

  • Незабавно възстановяване при срив: Не е необходимо да възпроизвеждате регистрационни файлове от последната контролна точка
  • Бързи откази: Няма нужда да се притеснявате коя реплика на база данни има най-новия запис в журнала за повторение. Слоят за съхранение се справя с това.
  • Обратно проследяване: Тъй като слоят за съхранение има поточно предаване на журнали за повторение, той може да „пренавива“ данните до конкретни точки в миналото, без да се налага да възстановява контролна точка от резервното копие на S3

Настройване на Amazon Aurora

По-долу са описани стъпките за успешна настройка на Amazon Aurora.

#1. Влезте в конзолата за управление на AWS и отворете RDS.

#2. Кликнете върху създаване на база данни.

#3. Изберете опцията Engine като Amazon Aurora.

#4. Изберете версията на Aurora MySQL, от която се нуждаете.

#5. Създайте идентификатор на DB клъстер и задайте потребителско име и парола за настройките на идентификационните данни.

#6. Изберете конфигурацията на екземпляра от падащото меню и изберете опция за създаване на реплика или не.

#7. Изберете опциите за свързване, както е показано по-долу.

#8. Изберете от съществуваща VPC група за сигурност или създайте нова.

#9. Активирайте подобреното наблюдение, изберете опцията за детайлност и роля за наблюдение.

#10. Накрая щракнете върху създаване на база данни.

#11. Успешно създадохте база данни на Amazon Aurora.

Ценови модел: Amazon Aurora

Aurora Serverless ACUs v2 струва $0,12 на час, два пъти повече от цената на осигурените Aurora ACU. Това означава:

  • Минимални текущи текущи разходи: 4 ACU, $0,48 на час или $350 на месец
  • За работни натоварвания, които патологично задействат функцията за автоматично мащабиране, има минимално увеличение на скалируемостта от 30 секунди или $0,0005 за половин ACU.
  Как да инсталирам Node.js на Ubuntu, CentOS?

Месечната цена за Aurora Serverless V2 е $350. Всяко събитие с автоматично мащабиране ще бъде таксувано поне $0,0005. Въпреки че еквивалентният капацитет на Aurora е $175 на месец, той няма да има бързо автоматично мащабиране без сървър.

Случаи на употреба: Amazon Aurora

#1. Софтуер като услуга (SaaS)

Той използва многофункционални архитектури, които могат да бъдат гъвкави при съхранение и мащабиране на инстанции. В резултат на това Amazon Aurora позволява на компаниите да се съсредоточат върху разработването на висококачествени приложения и да не се тревожат за базата данни.

#2. Игрова цел

AWS Aurora функционира по същия начин като Relational Database. Той осигурява висока пропускателна способност, огромен капацитет за съхранение, висока наличност и висока наличност.

#3. Корпоративно приложение

Amazon Aurora е съвместима с всяка фирма, която вече е по-филмова от Relational Database. Aurora е рентабилна, тъй като намалява цената с до 90% в сравнение с други опции.

Съвместимост на Aurora с MySQL и PostgreSQL

Amazon Aurora е създадена за висока производителност, глобална наличност и пълна съвместимост с MySQL/PostgreSQL. Стандартните инструменти улесняват мигрирането на MySQL и PostgreSQL бази данни от Aurora. Можете също така да изпълнявате наследени приложения на SQL Server с Babelfish за Aurora PostgreSQL, изисквайки минимални промени в кода.

Amazon Aurora работи със стандартни инструменти за импорт/експорт на PostgreSQL, като pg_dump или pg_restore. Можете също така да създадете нова таблица на Amazon Aurora, като използвате моментна снимка на Amazon RDS или MySQL DB.

Снимките на DB обикновено се изпълняват бързо, но ще зависи от това колко и какъв формат на данните се мигрират.

Amazon Aurora срещу Amazon RDS

Архитектурен дизайн

Архитектурата на RDS е подобна по това, че ви позволява да инсталирате машина за база данни на Amazon EC2 ръчно, но оставя осигуряването и поддръжката на AWS. RDS предоставя много функции като автоматичен отказ, архивиране и т.н. RDS използва Amazon EBS томове за съхраняване на регистрационни данни и данни от бази данни.

Системата за съхранение на бази данни Aurora е надеждна и устойчива на грешки. Съхранението на базата данни за Aurora е независимо от екземплярите. Aurora съхранява данни в шест копия, всяко с 10GB парчета. Тези копия се разпространяват в три зони на достъпност. Дори ако имате само един екземпляр на Aurora, пак ще има шест копия на вашите данни.

производителност

RDS използва SSD за съхранение за подобрена I/O пропускателна производителност. Има две налични опции за съхранение, поддържано от SSD. Единият е за високопроизводителни OLTP приложения, докато другият е за общо предназначение, рентабилна употреба.

Aurora предлага два пъти по-висока производителност от PostgreSQL и пет пъти по-висока от стандартната MySQL на сравним хардуер. Представянето на Aurora е постоянно по-високо и по-последователно.

Поддръжка на Database Engine

RDS е съвместим с MySQL, PostgreSQL и MariaDB, както и с Microsoft SQL Server и Oracle.

Aurora е съвместим както с PostgreSQL, така и с MySQL. Това означава, че можете да използвате вашите съществуващи инструменти и приложения за бази данни както в PostgreSQL, така и в MySQL, без да правите промени.

Издръжливост и наличност

Aurora има уникален модел за съхранение, който позволява непрекъснато архивиране и възстановяване с много нисък RPO (обективни точки за възстановяване). Това го прави по-надежден и издръжлив от RDS.

Данните са издръжливи по дизайн в Aurora. Винаги има множество копия на вашите данни. Всеки клъстер Aurora има шест възела за съхранение, разпределени в три AZ. Дори ако имате само един изчислителен възел, все още има множество копия на вашите данни.

Устойчивост

Поради своя архитектурен дизайн, Aurora е по-издръжлива от RDS. Бързо се възстановява от неуспехи. Ако изчислителен възел се срине, Aurora може да се възстанови бързо.

Съхранение

Автоматичното мащабиране на RDS съхранение мащабира капацитета за съхранение до 64 TiB (с изключение на 16 TiB на SQL Server), за да поеме нарастващите натоварвания на базата данни. Няма престой.

Aurora автоматично увеличава съхранението, като го увеличава от минимум 10 GB до максимум 128 TiB. Съхранението се увеличава на стъпки от 10 GB без никакъв ефект върху производителността на базата данни.

Мащабируемост

Вертикално мащабиране: RDS и Aurora ви позволяват да мащабирате паметта и изчислителните ресурси до максимум 244 GiB RAM и 32 виртуални процесора. За няколко секунди можете да мащабирате операциите.

  Как да използвате инструмента за избор на цвят на Google Chrome?

Динамично автоматично мащабиране на Aurora: Автоматичното мащабиране на Aurora динамично настройва колко реплики на Aurora са налични за Aurora DB клъстер чрез използване на репликация с един главен. RDS НЕ поддържа такова автоматично мащабиране.

Репликация

RDS може да се използва за предоставяне на до пет реплики. Процесът на репликация също е по-бавен от Aurora.

Aurora може да осигури до 15 реплики, като репликацията отнема само няколко секунди. Aurora мащабира по-бързо, защото може бързо да добавя нови реплики за четене.

Срив

В RDS преходът при отказ за четене на репликата се извършва ръчно. Това може да причини загуба на данни. Multi-AZ (Standby Instance) може да се използва за автоматизиране на отказ и предотвратяване на загуба на данни.

За да предотврати загуба на данни, Aurora използва преход при срив, за да чете репликите автоматично. Aurora има по-бързо време за преход при отказ.

Крайни точки на клъстера

RDS има крайна точка на клъстер, която можете да използвате, за да изпълнявате вашите заявки за запис. Това е DNS указателят към текущия екземпляр на главната база данни. RDS насочва крайната точка към новия главен чрез проста промяна на DNS по време на отказ.

Крайната точка на клъстера все още е налична в Aurora за писане на заявки. Тази крайна точка също действа като балансьор на натоварването за вашите репликации за четене. Тази крайна точка може да се използва за отговор на вашите запитвания за четене.

Архивиране

RDS автоматично създава и записва резервни копия на вашите DB екземпляри по време на прозореца за архивиране на вашия DB екземпляр. RDS прави моментна снимка на вашето копие на DB като обем за съхранение, като архивира всички бази данни, а не само избраните от вас.

Aurora автоматично архивира клъстерни томове и продължава да възстановява данни за продължителността на периода на съхранение на архива. Архивирането на Aurora е непрекъснато и постепенно, така че можете бързо да възстановите всяка точка в рамките на периода на съхранение на архива.

По-долу е обобщената таблица за Amazon Aurora срещу Amazon RDS:

Amazon Aurora Amazon RDS Можете да разширите хранилището от 10 GB до 64 GBRDS позволява 64 GBS за всички машини, но само 16 GB за SQL сървър Можете да мащабирате паметта и да изчислявате до максимум 32 vCPU и 244 GiB RAM Същото като Aurora Поддържа MySQL и PostgreSQL Поддържа Microsoft SQL Server, MariaDB, Oracle Database, MySQL, PostgreSQL и Amazon Aurora Поддържа петнадесет реплики Поддържа пет реплики Цената зависи от I/O операциите Можете да я изпробвате безплатно без минимална такса за използване

Amazon Aurora срещу DynamoDB

Устойчивост и наличност

Всяка част от данните на DynamoDB се копира в множество физически възли. Amazon е поставил тези физически възли в множество зони (известни още като зони за наличност), за да осигури висока издръжливост и достъпност в случай на бедствие като пожар или голямо прекъсване на захранването. Операцията ще продължи дори ако едно копие падне. SSD също са много надеждни и издръжливи.

Архивиране и възстановяване

DynamoDB предлага архивиране при поискване, както и PITR (архивиране в момента във времето), което ви позволява да получите достъп до всяко състояние на база данни. DynamoDB може да архивира произволно количество данни. Производителността и наличността няма да бъдат засегнати. Архивирането отнема много малко време и потребителите не трябва да се тревожат за графици за архивиране или фонови процеси. AWS позволява възстановяване на резервно копие само с едно извикване на API.

Процесът на архивиране на Amazon Aurora е подобен на DynamoDB. Създаден е без никакви прекъсвания на производителността или прекъсвания на услугата база данни. Резервните копия на Amazon се записват в кофа S3. Aurora автоматично ще създаде резервно копие от 30 минути, ако не посочим прозорец за архивиране.

Контрол на достъпа

DynamoDB поддържа потребители и роли на IAM с фини политики, които ограничават създаването на база данни и привилегиите за заявки. Amazon Aurora също има подобна схема на разрешения.

Въпреки това, Aurora също така предоставя MySQL и PostgreSQL-съвместими интерфейси за свързване към базата данни.

DynamoDB, регионална услуга, не е предмет на границата на VPC. Клъстерите на Aurora DB обаче трябва да бъдат установени във VPC, който ясно дефинира своята мрежова граница. Можете също да използвате групите за сигурност на VPC, за да контролирате кои устройства или екземпляри на Amazon EC2 имат право да се свързват с екземпляра на базата данни.

По-долу е обобщената таблица за Amazon Aurora срещу DynamoDB:

Amazon AuroraDynamoDBРелационната база данни, поддържаща MySQL и PostgreSQLNoSQL база данни Мултирегион, Единичен главенМногорегионален, Мултиглавен реплика може да бъде повишена до основна за минута Висока наличност Латентността на репликацията е по-малка от 1 секунда Латентността на репликацията е под милисекунди

Заключение

Това беше. Всички навлизаме в нова ера в релационните бази данни и Aurora е само началото. Клиентите реагираха с огромно съгласие. Лидерите във всяка индустрия – като Capital One, Dow Jones, Netflix и Verizon – мигрират работните си натоварвания на релационни бази данни към Aurora, включително издания, съвместими с MySQL и PostgreSQL.