Zgjidhjet më të mira për drejtimin e një baze të dhënash në AWS


AWS ka një kategori të tërë për shërbimet e tyre të menaxhuara të bazës së të dhënave, të cilat e bëjnë shumë të lehtë krijimin dhe drejtimin e një baze të dhënash në platformën AWS. Çfarë ofrojnë ata dhe a është më mirë sesa ta përdorni vetë në EC2?

Mund të përdorni gjithmonë EC2

Shumë nga bazat e të dhënave në këtë listë thjesht përdorin EC2 nën kapuç për të bërë të gjitha ngarkesat e rënda. Nëse jeni mirë me trajtimin e të gjithë konfigurimit, menaxhimit, kopjeve rezervë, riprodhimit dhe shkallëzimit vetë, atëherë mund të përdorni EC2 dhe të instaloni manualisht softuerin e bazës së të dhënave. Ky është një opsion plotësisht i zbatueshëm, edhe për bazat e të dhënave të mëdha.

Përfitimi i një shërbimi si RDS është se i gjithë procesi menaxhohet për ju, por kjo kushton para shtesë. Çdo bazë e të dhënave-si-shërbim në këtë listë do të ketë një çmim të lartë në krahasim me shembullin themelor EC2 (përveç DynamoDB, i cili nuk përdor serverë).

Përdorimi në EC2 funksionon veçanërisht mirë nëse jeni duke drejtuar një bazë të dhënash të vogël dhe dëshironi të ulni kostot, pasi çmimi për instancat më të vogla EC2 është mjaft i lirë. Gjithashtu, nëse keni tashmë një shembull EC2 dhe nuk po e maksimizoni atë, mund të ekzekutoni një bazë të dhënash së bashku me programet tuaja të tjera në vend që të merrni një shembull të veçantë për bazën e të dhënave.

AWS RDS pret shumicën e bazave të të dhënave relacionale

AWS RDS është shërbimi i tyre i bazës së të dhënave të menaxhuara me qëllim të përgjithshëm. Ai funksionon në EC2, por krijimi, leximi i kopjeve dhe kopjet rezervë shtesë menaxhohen plotësisht për ju. Ju thjesht paguani për shembullin themelor EC2 (me një çmim të vogël), plus kostot e ruajtjes së EBS.

Krijimi i një baze të dhënash është i thjeshtë; nga tastiera RDS, klikoni Krijo bazën e të dhënave dhe specifikoni llojin e shembullit që dëshironi. Do të paguani për këtë shembull, plus hapësirën ruajtëse të ofruar. Në përgjithësi, RDS është pak më e shtrenjtë sesa thjesht përdorimi i shembullit themelor EC2 dhe konfigurimi i gjithçkaje vetë. Por, me të gjitha përfitimet e të pasurit një bazë të dhënash si shërbim, RDS do të jetë ende e dobishme për disa njerëz.

AWS Aurora

Aurora është baza e të dhënave relacionale e pronarit të AWS. Është i pajtueshëm me MySQL ose PostgreSQL, por përdor një motor tjetër themelor. Është i zgjidhshëm si opsion kur vendosni një bazë të dhënash në RDS.

AWS pretendon se Aurora është tre herë më e shpejtë se PostgreSQL dhe MySQL, gjë që është mjaft një përmirësim, por nuk është aq bie në sy sa mund të duket. Është më i shpejtë vetëm me IOPS të lartë të parashikuar (shpejtësia e diskut) në raste të mëdha të bazës së të dhënave, dhe është shumë më e shtrenjtë nëse vërtet synoni shpejtësinë.

Si një bazë të dhënash të përgjithshme, Aurora funksionon mirë, por është pak më e shtrenjtë se ofertat e tjera RDS si MySQL. Sidoqoftë, ekziston një opsion pa server për Aurora, i cili duket se ul mjaft kostot dhe lejon që databaza juaj të shkallëzohet automatikisht lart e poshtë.

AWS DocumentDB: MongoDB Compatible

DocumentDB është zëvendësimi i AWS për Mongo. Nuk është në të vërtetë Mongo nën kapuç, por vepron si i tillë dhe është plotësisht i pajtueshëm me drejtuesit ekzistues Mongo. Është e lehtë për t'u nisur nga DocumentDB Console dhe mund të shkallëzohet në miliona kërkesa në sekondë me deri në 15 kopje të lexuara.

DocumentDB funksionon në mënyrë të ngjashme me RDS në atë që ju paguani për shembullin themelor EC2, megjithëse duhet të theksohet se zgjedhja e shembullit është e kufizuar në instancat R5 të optimizuara me memorie, të cilat nuk janë të lira. Shembulli më i lirë R5 është shembulli db.r5.large i cili kushton 0,277$ në orë, ose rreth 200 dollarë në muaj. Kjo është gjithashtu një rritje e lehtë e kostos në krahasim me MySQL në RDS, kështu që padyshim që vjen me një premium në krahasim me MongoDB tradicionale në EC2.

AWS DynamoDB: Baza e të dhënave NoSQL pa server

DynamoDB është i veçantë në atë që është e vetmja bazë e të dhënave në këtë listë që është tërësisht pa server. Ofrohet si një shërbim si S3, dhe nuk ka raste që ju të menaxhoni. Të gjitha llogaritjet trajtohen nga AWS.

DynamoDB është një bazë të dhënash me vlerë kyçe dhe dokumentesh, e ngjashme me MongoDB. Sidoqoftë, është pak më ndryshe, por AWS ofron mjete migrimi për kalimin në DynamoDB nga MongoDB dhe MySQL.

Ju tarifoheni në bazë të kërkesave dhe hapësirës ruajtëse, megjithëse lista e taksave është pak e gjatë:

  • 1,25 dollarë për milion shkruan
  • 1,875 dollarë për milion shkrime kopjohen në një tabelë globale
  • 0,25 dollarë për milion lexim
  • 0,25 dollarë për GB pas 25 GB
  • 0,09 dollarë për GB të dhëna të transferuara
  • Opsionale, 0,20 $për GB të dhëna rezervë dhe 0,15 $për GB nëse duhet të rivendosësh një tabelë

Në përgjithësi, DynamoDB ka një çmim mjaft të ngjashëm me shërbimet e tjera AWS, dhe duke qenë se gjithçka është aq e matur sa është, mund të jeni i sigurt që nuk po paguani shumë duke ekzekutuar instanca të panevojshme të mëdha EC2. Ju gjithashtu mund të siguroni kapacitet paraprakisht, i cili është pak më i lirë.

ElastiCache: Dyqani në Memory

Nëse dëshironi të ekzekutoni Redis ose Memcached si shërbim, AWS e ofron atë gjithashtu me ElastiCache.

Redis dhe Memcached janë baza të të dhënave jashtëzakonisht të shpejta që funksionojnë tërësisht brenda memorjes. Ato zakonisht përdoren për të ruajtur pjesë të shkurtra të të dhënave si vargje dhe bajt që duhet të aksesohen shumë shpejt dhe me vonesë shumë të ulët.

Redis zakonisht ekzekutohet në të njëjtin server së bashku me aplikacione të tjera për të ulur vonesën sa më të ulët të jetë e mundur (në këtë rast, ju nuk do të përdorni ElastiCache), por mund të përdoret gjithashtu si shërbim i veçantë për bazat e të dhënave të mëdha, ku ElastiCache fillon të bëhen të dobishme. Krahasuar me EC2, ElastiCache është ende një premium, megjithëse jo shumë. Ju ndoshta do të dëshironi të përdorni rastet Memory Optimized të AWS nëse jeni duke ekzekutuar një bazë të dhënash veçanërisht të madhe.

Neptuni: Baza e të dhënave të grafikut

Bazat e të dhënave grafike ruajnë të dhënat në një strukturë krejtësisht unike. Në vend që të ruajnë të dhënat si rreshta dhe kolona ose çifte çelës-vlerë, bazat e të dhënave grafike përdoren për të përfaqësuar lidhjet midis objekteve dhe përdoren për të kuptuar marrëdhëniet komplekse midis tyre.

Shembulli më i zakonshëm janë rrjetet sociale. Gjetja e miqve të një personi është e lehtë, ndoshta ju po e ruani atë si një grup në objektin e përdoruesit, kështu që thjesht do t'ju duhet të kërkoni të dhënat për secilin mik. Por nëse dëshironi të shikoni miqtë e miqve, apo edhe më thellë, bazat e të dhënave relacionale do të ndalen plotësisht:

Megjithatë, për një bazë të dhënash grafike, ky proces është i parëndësishëm dhe shkallëzohet në mënyrë kuadratike me numrin e rekordeve të kthyera, dhe jo në mënyrë faktoriale.

Neptuni është baza e të dhënave e grafikëve të pronarit të AWS. Çmimi është i ngjashëm me RDS - paguani për shembullin EC2 dhe ruajtjen. Megjithatë, ju nuk jeni në gjendje të drejtoni vetë Neptun, pasi nuk është me burim të hapur. Mund të ekzekutoni gjithmonë një bazë të dhënash të ndryshme grafikësh si neo4j nëse nuk dëshironi të përdorni një shërbim të menaxhuar.