Qhov twg yog qhov zoo dua - Oracle lossis Redis lossis Yuav ua li cas kom pom tseeb qhov kev xaiv ntawm lub platform

"Qhov no yog qhov tsim nyog," nws hais nrov nrov, tsis hais rau leej twg. - Qhov no yog qhov tsim nyog! Qhov no yog raws nraim li nws hais: lub luag haujlwm tseem ceeb ntawm lub tuam txhab yog kom tau txais txiaj ntsig ntawm cov tswv lag luam. Zoo, xav txog nws! Lawv tsis ntshai dab tsi!

Yuliy Dubov, "Lesser Evil"

Tau pom cov xov xwm zoo li no, tej zaum koj twb tau txiav txim siab tias tsab xov xwm no yog kev ruam lossis kev npau taws. Tab sis tsis txhob maj mus rau cov lus xaus: cov neeg ua haujlwm ntawm cov tuam txhab loj, tshwj xeeb tshaj yog cov tuam txhab lag luam nrog kev koom tes hauv lub xeev, feem ntau yuav tsum tau sib piv cov platform sib txawv, suav nrog cov sib txawv kiag li - piv txwv li, cov hauv lub npe.

Qhov twg yog qhov zoo dua - Oracle lossis Redis lossis Yuav ua li cas kom pom tseeb qhov kev xaiv ntawm lub platform

Tau kawg, tsis muaj leej twg piv DBMSs hauv txoj kev no, vim tias lawv lub zog thiab qhov tsis muaj zog tau paub zoo. Raws li txoj cai, platforms uas daws qee qhov teeb meem ntawm daim ntawv thov yuav raug muab sib piv. Nyob rau hauv tsab xov xwm kuv yuav qhia cov txheej txheem uas yog siv nyob rau hauv cov ntaub ntawv no, siv cov piv txwv ntawm databases raws li ib tug kev kawm uas paub Habr nyeem ua ntej. Yog li ntawd,

Kev Txhawb

Thaum koj pib qhov kev kawm lossis ib txoj haujlwm nyiam, kev txhawb siab rau kev xaiv lub platform tuaj yeem muaj ntau haiv neeg: "qhov no yog lub platform kuv paub zoo tshaj", "Kuv xav nkag siab txog qhov no", "ntawm no yog cov ntaub ntawv zoo tshaj plaws" ... Nyob rau hauv cov ntaub ntawv ntawm ib lub tuam txhab lag luam, cov txheej txheem xaiv yog tib yam: kuv yuav tau them ntau npaum li cas thiab kuv yuav tau txais dab tsi rau cov nyiaj no.

Lawm, koj xav them tsawg dua thiab tau txais ntau dua. Txawm li cas los xij, koj yuav tsum txiav txim siab seb qhov twg yog qhov tseem ceeb tshaj - them tsawg dua lossis tau txais ntau dua, thiab muab qhov hnyav rau txhua qhov. Cia peb xav tias qhov kev daws teeb meem zoo yog qhov tseem ceeb tshaj rau peb tshaj li qhov pheej yig, thiab peb yuav muab qhov hnyav ntawm 40% rau "Nqi" node, thiab 60% rau "Tshaj Tawm" node.

Qhov twg yog qhov zoo dua - Oracle lossis Redis lossis Yuav ua li cas kom pom tseeb qhov kev xaiv ntawm lub platform

Hauv cov tuam txhab loj, qhov sib txawv feem ntau yog qhov tseeb - tus nqi hnyav tsis poob qis dua 50%, thiab tej zaum ntau dua 60%. Hauv cov qauv piv txwv, txhua qhov tseem ceeb yog qhov hnyav tag nrho ntawm tus menyuam ntawm cov niam txiv ntawm ib qho yuav tsum yog 100%.

Txiav tej yam kev mob

Lub vev xaib ntawm db-engines.com Muaj txog 500 qhov kev tswj hwm database paub. Lawm, yog tias koj xaiv lub hom phiaj platform los ntawm ntau txoj kev xaiv, koj tuaj yeem xaus nrog cov lus tshuaj xyuas, tab sis tsis yog qhov kev lag luam. Txhawm rau txo qhov kev xaiv qhov chaw, cov txheej txheem txiav tawm yog tsim, thiab yog tias lub platform tsis ua raws li cov qauv no, ces nws tsis raug txiav txim siab.

Cov txheej txheem txiav tawm tuaj yeem cuam tshuam nrog cov yam ntxwv thev naus laus zis, piv txwv li:

  • ACID lav;
  • Cov ntaub ntawv sib raug zoo qauv;
  • SQL lus txhawb (nco, qhov no tsis zoo ib yam li "cov qauv kev sib raug zoo");
  • muaj peev xwm ntawm kab rov tav scaling.

Tej zaum yuav muaj cov qauv dav dav:

  • muaj kev txhawb nqa kev lag luam hauv Russia;
  • qhib qhov chaw;
  • muaj lub platform nyob rau hauv Kev Sau Npe ntawm Ministry of Telecom thiab Mass Communications;
  • muaj lub platform hauv qee qhov kev ntsuas (piv txwv li, hauv thawj puas ntawm db-engines.com rating);
  • lub xub ntiag ntawm cov kws tshaj lij hauv kev ua lag luam (piv txwv li, raws li cov txiaj ntsig ntawm kev tshawb nrhiav lub npe ntawm lub platform hauv daim ntawv qhia ua haujlwm ntawm lub vev xaib hh.ru).

Tom qab tag nrho, tej zaum yuav muaj cov txheej txheem kev lag luam tshwj xeeb:

  • muaj cov kws tshaj lij ntawm cov neeg ua haujlwm;
  • compatibility nrog saib xyuas system X los yog backup system Y, uas tag nrho cov kev txhawb nqa yog raws li ...

Qhov tseem ceeb tshaj plaws yog tias muaj cov npe ntawm cov txheej txheem txiav tawm. Txwv tsis pub, yuav muaj qee tus kws tshaj lij (lossis "tus kws tshaj lij") uas nyiam kev ntseeg tshwj xeeb los ntawm kev tswj hwm uas yuav hais tias "vim li cas koj tsis xaiv platform Z, Kuv paub tias nws yog qhov zoo tshaj plaws."

Tus nqi kwv yees

Tus nqi ntawm cov kev daws teeb meem pom tseeb yog cov nqi ntawm cov ntawv tso cai, tus nqi them nyiaj yug thiab tus nqi ntawm cov khoom siv.

Yog tias cov tshuab muaj kwv yees li tib chav kawm (piv txwv li, Microsoft SQL Server thiab PostgreSQL), ces rau qhov yooj yim peb tuaj yeem xav tias cov khoom siv rau ob qho kev daws teeb meem yuav kwv yees li qub. Qhov no yuav tso cai rau koj tsis txhob ntsuas cov khoom siv, yog li txuag ntau lub sijhawm thiab kev siv zog. Yog tias koj yuav tsum sib piv cov tshuab sib txawv kiag li (hais tias, Oracle vs. Redis), ces nws yog qhov pom tseeb tias rau qhov kev ntsuam xyuas kom raug, nws yog ib qho tsim nyog yuav tau ua qhov sizing (xws li cov khoom siv). Sizing ib qhov system uas tsis muaj nyob yog ib txoj hauj lwm ua tsaug ntau, yog li lawv tseem sim zam qhov kev sib piv. Qhov no yog ib qho yooj yim ua: nyob rau hauv qhov kev txiav tawm, xoom cov ntaub ntawv poob thiab cov qauv kev sib raug zoo yog sau, los yog vice versa - ib tug load ntawm 50 txhiab muas ib ob.

Txhawm rau ntsuas cov ntawv tso cai, nws txaus los nug tus neeg muag khoom lossis nws cov neeg koom tes rau tus nqi ntawm daim ntawv tso cai rau tus naj npawb ntawm cov cores thiab kev txhawb nqa rau lub sijhawm ruaj khov. Raws li txoj cai, cov tuam txhab twb muaj kev sib raug zoo nrog cov neeg muag khoom software, thiab yog tias lub chaw ua haujlwm database tsis tuaj yeem teb cov nqe lus nug ntawm nws tus kheej, ces ib tsab ntawv txaus kom tau txais cov ntaub ntawv no.

Cov neeg muag khoom sib txawv tuaj yeem muaj cov ntawv tso cai sib txawv: los ntawm tus lej ntawm cov cores, cov ntaub ntawv ntim lossis tus lej ntawm cov nodes. Lub hauv paus standby tuaj yeem yog dawb, lossis nws tuaj yeem tso cai rau tib txoj kev raws li lub ntsiab. Yog tias muaj qhov sib txawv ntawm qhov ntsuas tau pom, koj yuav tsum tau piav qhia txog tus qauv sawv ntsug hauv kev nthuav dav thiab suav cov nqi ntawm cov ntawv tso cai rau kev muag khoom.

Ib qho tseem ceeb rau kev sib piv kom raug yog tib yam kev txhawb nqa. Piv txwv li, kev txhawb nqa Oracle raug nqi 22% ntawm daim ntawv tso cai tus nqi ib xyoos, tab sis koj tsis tas yuav them rau PostgreSQL kev txhawb nqa. Puas yog qhov piv tau zoo li no? Tsis yog, vim tias qhov kev ua yuam kev uas tsis tuaj yeem kho ntawm koj tus kheej muaj qhov tshwm sim sib txawv kiag li: hauv thawj qhov xwm txheej, cov kws kho mob tshwj xeeb yuav pab koj kho sai sai, tab sis nyob rau hauv rooj plaub thib ob, muaj kev pheej hmoo ntawm kev ncua sijhawm lossis ncua sijhawm ntawm qhov ua tiav. system rau lub sijhawm tsis kawg.

Koj tuaj yeem sib npaug ntawm kev suav hauv peb txoj kev:

  1. Siv Oracle yam tsis muaj kev txhawb nqa (qhov tseeb qhov no tsis tshwm sim).
  2. Yuav kev txhawb nqa rau PostgreSQL - piv txwv li, los ntawm Postgres Professional.
  3. Ua tib zoo saib cov kev pheej hmoo cuam tshuam nrog kev tsis muaj kev txhawb nqa.

Piv txwv li, qhov kev pheej hmoo suav yuav zoo li no: nyob rau hauv qhov kev tshwm sim ntawm kev tuag database tsis ua hauj lwm, lub kaw lus downtime yuav yog 1 hnub ua hauj lwm. Cov txiaj ntsig tau los ntawm kev siv lub kaw lus yog 40 billion MNT ib xyoos twg, tus nqi sib tsoo yog kwv yees li 1/400, yog li qhov kev pheej hmoo ntawm kev tsis muaj kev txhawb nqa yog kwv yees li ntawm 100 lab MNT ib xyoos. Pom tseeb, "npaj nyiaj tau los" thiab "kev kwv yees kev sib tsoo zaus" yog qhov txiaj ntsig virtual, tab sis nws zoo dua kom muaj tus qauv zoo li tsis muaj.

Nyob rau hauv qhov tseeb, lub kaw lus tej zaum yuav tseem ceeb heev rau lub koob npe nrov nqi ntawm lub sij hawm ntev downtime yuav tsis tsim nyog, yog li yuav tsum tau kev txhawb nqa. Yog tias tso cai rau downtime, ces tsis kam them nyiaj yug tej zaum yuav yog ib txoj hauv kev zoo kom txuag tau nyiaj.

Cia peb xav tias tom qab tag nrho cov kev suav, tus nqi ntawm kev khiav hauj lwm platform A rau 5 xyoo hloov mus rau 800 lab MNT, tus nqi ntawm kev khiav hauj lwm platform B yog 650 lab MNT, thiab tus nqi ntawm kev khiav hauj lwm platform C yog 600 lab MNT. Platform C, raws li tus yeej, tau txais tag nrho cov ntsiab lus rau tus nqi, thaum lub platform A thiab B tau txais tsawg dua, nyob rau hauv feem ntau npaum li cas lawv kim dua. Nyob rau hauv cov ntaub ntawv no - 0.75 thiab 0.92 ntsiab lus, ntsig txog.

Kev ntsuam xyuas lub sijhawm

Kev ntsuam xyuas ntawm cov cib fim tau muab faib ua ntau pawg, cov naj npawb ntawm cov kev txwv tsuas yog los ntawm kev xav ntawm tus neeg ua qhov kev ntsuam xyuas. Qhov kev xaiv zoo tshaj plaws yog los faib cov peev txheej rau hauv pab pawg uas yuav siv cov peev txheej no; hauv peb qhov piv txwv, cov no yog cov neeg tsim khoom, cov thawj coj thiab cov neeg saib xyuas kev ruaj ntseg cov ntaub ntawv. Cia peb xav tias qhov hnyav ntawm cov haujlwm no tau faib ua 40:40:20.

Kev txhim kho muaj xws li:

  • yooj yim ntawm cov ntaub ntawv manipulation;
  • scaling;
  • muaj cov indexes theem nrab.

Cov npe ntawm cov txheej txheem, nrog rau lawv qhov hnyav, yog qhov tseem ceeb heev. Txawm tias thaum daws qhov teeb meem tib yam, cov npe no, cov khoom hnyav, thiab cov lus teb yuav txawv heev nyob ntawm seb muaj pes tsawg leeg ntawm koj pab neeg. Piv txwv li, Facebook siv MySQL los khaws cov ntaub ntawv, thiab Instagram yog tsim los ntawm Cassandra. Nws tsis zoo li tias cov neeg tsim khoom ntawm cov ntawv thov no tau sau cov lus zoo li no. Ib tus tsuas tuaj yeem kwv yees tias Mark Zuckerberg xaiv tus qauv kev sib raug zoo tag nrho, them nyiaj rau nws nrog kev xav tau ntawm kev siv sharding, thaum Kevin Systrom tsim scaling siv lub platform, txi yooj yim ntawm kev nkag mus rau cov ntaub ntawv.

Cov haujlwm tswj hwm muaj xws li:

  • backup system peev xwm;
  • yooj yim ntawm kev saib xyuas;
  • yooj yim ntawm kev tswj lub peev xwm - disks thiab nodes;
  • cov ntaub ntawv replication muaj peev xwm.

Thov nco ntsoov tias cov lus nug yuav tsum tau hais kom muaj nuj nqis. Koj muaj peev xwm txawm pom zoo yuav ua li cas los ntsuas ib qho kev ua haujlwm. Cia peb, piv txwv li, sim ntsuas cov cuab yeej thaub qab siv cov piv txwv ntawm cov cuab yeej muab nrog Oracle DBMS:

Tool
saib
ntsuam xyuas

imp/exp
Uploading thiab loading cov ntaub ntawv
0.1

pib / xaus thaub qab
Luam cov ntaub ntawv
0.3

RMAN
Incremental copy muaj peev xwm
0.7

ZDLRA
Tsuas yog incremental luam, ceev tshaj rov qab mus rau taw tes
1.0

Yog tias tsis muaj cov txheej txheem ntsuam xyuas meej, nws ua rau kev txiav txim siab kom nug ntau tus kws tshaj lij los muab kev ntsuam xyuas thiab tom qab ntawd nruab nrab lawv.

Thaum kawg, peb tsuas sau cov ntaub ntawv kev ruaj ntseg ua haujlwm:

  • muaj cov cai tswj tus password;
  • muaj peev xwm txuas cov cuab yeej pov thawj sab nraud (LDAP, Kerberos);
  • tus qauv ntawm kev nkag;
  • audit muaj peev xwm;
  • encryption ntawm cov ntaub ntawv ntawm disk;
  • encryption thaum kis tau tus mob hauv lub network (TLS);
  • cov ntaub ntawv tiv thaiv los ntawm tus thawj tswj hwm.

Kev ntsuas kev ua haujlwm

Cais, kuv xav ceeb toom tawm tsam kev siv cov txiaj ntsig ntawm kev ntsuas kev thauj khoom uas tsis tau ua los ntawm koj li kev sib cav.

Ua ntej, cov qauv ntaub ntawv thiab thauj khoom profile ntawm cov ntawv thov raug kuaj yuav txawv ntawm qhov teeb meem koj yuav daws tau. Kwv yees li 10-15 xyoo dhau los, cov neeg muag khoom hauv chaw muag khoom nyiam tshaj tawm cov txiaj ntsig tau ua tiav hauv TPC kev xeem, tab sis tam sim no, zoo li, tsis muaj leej twg siv cov txiaj ntsig no tiag.

Qhov thib ob, qhov kev ua tau zoo ntawm qhov system nyob ntawm qhov kev ua haujlwm ntawm lub platform uas tau sau thawj zaug rau thiab cov khoom siv twg qhov kev xeem tau ua tiav. Kuv tau pom ntau qhov kev sim uas Oracle tau muab piv nrog PostgreSQL. Cov kev tshwm sim muaj xws li los ntawm unconditional superiority ntawm ib tug system mus rau qhov sib npaug unconditional superiority ntawm lwm tus.

Thiab thaum kawg, thib peb, koj tsis paub dab tsi txog leej twg ua qhov kev xeem. Ob qho kev tsim nyog yog qhov tseem ceeb, cuam tshuam qhov zoo ntawm kev teeb tsa OS thiab lub platform, nrog rau kev txhawb siab, uas cuam tshuam rau qhov kev xeem tau ntau dua li lwm yam ua ke.

Yog tias kev ua tau zoo yog qhov tseem ceeb, ua qhov kev sim koj tus kheej, nyiam dua nrog kev pab los ntawm cov neeg uas yuav teeb tsa thiab tswj cov txheej txheem tsim khoom.

tshwm sim

Thaum kawg, qhov tshwm sim ntawm tag nrho cov haujlwm ua tiav yuav tsum yog daim ntawv nthuav qhia uas txhua qhov kev kwv yees sib xyaw ua ke, sib npaug thiab suav nrog:

Qhov twg yog qhov zoo dua - Oracle lossis Redis lossis Yuav ua li cas kom pom tseeb qhov kev xaiv ntawm lub platform

Raws li koj nkag siab, los ntawm kev hloov cov nplai thiab kho qhov ntsuas koj tuaj yeem ua tiav qhov xav tau, tab sis qhov ntawd yog zaj dab neeg sib txawv kiag li ...

Tau qhov twg los: www.hab.com

Ntxiv ib saib