Dažos vārdos par jaunumiem MongoDB 3.2

mongodbŠodien tika izlaista MongoDB 3.2.1-rc0 versija. Tas man atgādināja, ka aizmirsu uzrakstīt par jaunumiem, kuri pieejami MongoDB lietotājiem sākot ar 3.2 versiju. Pirms pievērsties jaunumiem, gribu uzsvērt, ka, lai gan MongoDB jau tapina 3.2.1 versiju, stipri iesaku pagaidīt pirms sākt izmantot 3.2 zaru. Iemesls pavisam vienkāršs. Pieredze rāda, ka var nākties gaidīt vēl 4-5 mazās versijas, līdz lietas kļūs stabilas. Līdzīgi bija ar 3.0 zaru, kuru sāku izmantot jau no pašas pirmās versijas, bet pat pie 3.0.4 piedzīvoju gan servera nobrukšanas, gan segfaultus utt. 3.2.1, piemēram, labos kritisku kļūdu, kuras rezultātā replikām rodas problēmas ar datu konsistenci. Tātad – izmantot vēl par agru. Bet ir īstais laiks, lai sāktu testēt labumus, kurus sniedz MongoDB 3.2.

Tālāk daži no jaunumiem, kuri mani uzrunāja visvairāk:

  • WiredTiger ir kļuvis par noklusēto datu uzglabāšanas dzinēju. Es WiredTiger izmantoju kopš MongoDB 3.0.0 versijas un jāsaka, ka tas ir ļoti labs. Ja joprojām dzīvo ar MMAPv1, pamēģini WiredTiger.
  • Jauna master servera ievēlēšana notiek ātrāk.
  • Ieviesti Partial Indexes. Šis ir interesanti un gan jau vairākās situācijās var izrādīties noderīgi. Ar Partial Index palīdzību ir iespējams uzstādīt speciālu filtru, kurš tiks izmantots dokumentu indeksācijas laikā. Indeksam tiks pievienoti tikai tie dokumenti, kuri kvalificējas filtram. Filtra rezultātā indekss kļūst mazāks, patērē mazāk RAM.
  • Ieviesta dokumentu validācija. T.i. tagad ir iespējams nodefinēt, kādai jābūt dokumenta struktūrai. Ņemot vērā, ka pēc noklusējuma ar datiem MongoDB var darīt visu, kas ienāk prātā, kaut kādi rāmji un noteikumi noteikti var nākt par labu.
  • Aggregation Framework saņēmis vairākus uzlabojumus. Piemēram, ieviesti jauni agregācijas soļi ($sample – atgriež N nejaušus dokumentus, $indexStats – atgriež statistiku par indeksu izmantošanu, $lookup – iespējams veikt left outer join ar citām kolekcijām). Ieviesta sauja ar jauniem aritmētikas operatoriem, kā arī jauni operatori darbam ar masīviem. Un vēl vairāki uzlabojumi.
  • Text search saņēmis vairākus būtiskus uzlabojumus.
  • Jauns datu uzglabāšanas dzinējs – inMemory. Tātad, datu glabāšana operatīvajā atmiņā. Diemžēl šis dzinējs ir pieejams tikai Enterprise versijā. Tātad lielākajai daļai MongoDB lietotāju šobrīd nebūs pieejams. Vēl gan jāmin, ka inMemory storage engine ir beta stadijā.
  • Ģeotelpiskie (geospatial) indeksi saņēmuši uzlabojumus un tie kļuvuši ātrāki.

MongoDB 3.2 noteikti nav revolūcija, bet loģisks turpinājums tam, ko aizsāka 3.0 un WiredTiger parādīšanās. Jānogaida pāris mēnešus un tad būs laiks atjaunoties.

Atbildēt

Jūsu e-pasta adrese netiks publicēta.

This site uses Akismet to reduce spam. Learn how your comment data is processed.