Үндсэн ялгаа – NoSQL ба MongoDB
Харилцан өгөгдлийн сангийн удирдлагын системийг (RDBMS) олон байгууллага ашигладаг. Structed Query Language (SQL) нь харилцаа холбооны мэдээллийн сан дахь өгөгдлийг хадгалах, сэргээх, өөрчлөхөд ашиглагддаг. Тэд асар их хэмжээний өгөгдлийг хадгалахад үр ашиггүй бөгөөд хэвтээ масштабыг хийхэд хэцүү байдаг. Тиймээс NoSQL-ийг нэвтрүүлсэн. NoSQL нь "Зөвхөн SQL биш" эсвэл "SQL байхгүй" гэсэн утгатай. Документ, түлхүүр-утга, график гэх мэт олон төрлийн NoSQL мэдээллийн сан байдаг. MongoDB нь NoSQL-ийн төрөл юм. Энэ нь ашиглахад хялбар, C++ хэл дээр бичигдсэн, хурдан бөгөөд уян хатан нээлттэй эхийн программ юм. NoSQL болон MongoDB хоёрын гол ялгаа нь NoSQL нь харилцаа холбоогүй мэдээллийн санд өгөгдлийг хадгалах, авах механизм бөгөөд MongoDB нь NoSQL-д хамаарах баримт бичигт чиглэсэн мэдээллийн сан юм.
NoSQL гэж юу вэ?
MySQL, Oracle гэх мэт олон мэдээллийн сан байдаг. Эдгээр өгөгдлийн сангуудыг Relational Database гэж нэрлэдэг. Харилцааны мэдээллийн сан нь хүснэгтүүдээс бүрдэх ба тэдгээр нь үндсэн түлхүүр, гадаад түлхүүр гэх мэт хязгаарлалтуудыг ашиглан өөр хоорондоо холбоотой байдаг. Харилцааны мэдээллийн сан нь Big Data / Big Data хадгалахад үр дүнтэй байдаггүй. Том өгөгдөл нь уламжлалт хадгалах төхөөрөмж эсвэл харилцааны мэдээллийн сан ашиглан хадгалахад хэцүү их хэмжээний өгөгдөл юм.
NoSQL нь Non-relational өгөгдлийн сангийн товчлол бөгөөд Big Data-г удирдах боломжтой. Мөн NoSQL мэдээллийн санг удирдахад хялбар байдаг. Өгөгдлийг томруулж эсвэл машинд нэгтгэж болно. Кластер хийх нь өгөгдлийг хадгалах зардлыг бууруулдаг. NoSQL өгөгдлийн сангийн хэд хэдэн төрөл байдаг. Баримт бичгийн өгөгдлийн санг динамик өгөгдөлд ашигладаг. Ийм мэдээллийн сан нь MongoDB болон Couch DB юм. Эдгээр мэдээллийн санд өгөгдлийг JavaScript Object Notation (JSON) форматаар хадгалдаг.
Өөр төрөл бол баганын мэдээллийн сан юм. Жишээ нь Апачи Кассандра байж болно. Харилцан хамаарлын өгөгдлийн санд өгөгдлийг унших, бичих зэрэгт мөр зэрэгцэн ажилладаг. Гэхдээ баганын мэдээллийн санд өгөгдөл унших, бичих ажлыг баганын дагуу хийдэг. Энэ нь өгөгдлийн аналитикт хэрэгтэй.
Зураг – NoSQL мэдээллийн сан
Энгийн NoSQL өгөгдлийн сангийн төрөл нь Couchbase Sever, Redis зэрэг Түлхүүр-Үнэ цэнээр хадгалагдсан мэдээллийн сан юм. Тэд хурдан боловч тийм ч их өөрчлөгддөггүй. Кэш мэдээллийн сан нь өгөгдлийг диск эсвэл кэш рүү хадгалах боломжтой. Кэш мэдээллийн сангийн нэг жишээ бол Memcache юм. График мэдээллийн сан нь зангилаанаас бүрдэх ба харилцаа холбоог ирмэг ашиглан үүсгэдэг. Neo4J болон Oracle NoSQL нь график мэдээллийн сан юм.
MongoDB гэж юу вэ?
MongoDB нь баримт бичигт суурилсан мэдээллийн сан юм. Энэ нь нээлттэй эхийн програм хангамж юм. Харилцааны мэдээллийн сан нь хүснэгтүүдтэй, хүснэгтүүд нь мөр, баганатай байдаг. Үүний нэгэн адил MongoDB нь цуглуулга, баримт бичигтэй. Баримт бичиг нь MongoDB цуглуулгын бичлэг юм. Цуглуулга нь MongoDB баримт бичгийн багц юм. Ер нь бүх баримт бичиг ижил зорилготой байдаг. Нэг MongoDB сервер нь олон мэдээллийн сантай. ‘mongod.exe’ нь мэдээллийн сангийн сервер, ‘mongo.exe’ нь интерактив бүрхүүл юм.
Програмист нь JSON форматаар баримт бичдэг. MongoDB нь дотооддоо JSON объектуудыг BSON болгон хөрвүүлдэг. BSON нь хоёртын объект бөгөөд түлхүүр болон утгын аль алинд нь хашилттай байна. MongoDB нь их хэмжээний өгөгдөл болгон хувиргах боломжтой тул Agile суурилсан програм хангамжийг хөгжүүлэхэд хэрэгтэй. Одоо байгаа баримтуудыг амархан нэмж, устгаснаар баримт бичгийг өөрчлөхөд хялбар байдаг. MongoDB нь мөр, дугаар, огноо, массив, Boolean гэх мэт өөр төрлийн өгөгдлийн төрлийг хадгалах боломжтой. Мөн видео, зураг, аудио хадгалах буфер өгөгдлийн төрөлтэй. Холимог өгөгдлийн төрөл нь өөр өөр төрлийн өгөгдлийг нэгтгэж чаддаг. MongoDB нь хялбар синтакстай тул асуулга бичихэд хялбар байдаг. Энэ нь мөн тархсан архитектурт газрын зургийг багасгах программуудыг өгөх боломжтой.
NoSQL болон MongoDB хоёрын ижил төстэй талууд юу вэ?
- Хоёулаа том өгөгдлийг удирдах боломжтой.
- Үнэтэй техник хангамжгүйгээр хэвтээ өргөтгөлийг дэмждэг.
- Түгээмэл архитектурыг дэмждэг.
- Хоёулаа нэгдэхийг дэмждэггүй.
- Хоёулаа нарийн төвөгтэй гүйлгээг хийх боломжгүй.
- Схем нь динамик.
- Уян хатан, хэрэглэхэд хялбар.
NoSQL болон MongoDB хоёрын ялгаа юу вэ?
NoSQL vs MongoDB |
|
NoSQL нь хамааралгүй өгөгдлийн санд өгөгдөл хадгалах, сэргээхэд ашиглагддаг. | MongoDB нь өргөтгөх боломжтой, өндөр гүйцэтгэлтэй, баримт бичигт чиглэсэн мэдээллийн сан бөгөөд харилцаа холбоогүй мэдээллийн сангийн удирдлагын систем юм. |
Төрөл | |
NoSQL нь баримт бичгийн суурь, түлхүүр-утга хадгалах, график мэдээллийн сан гэх мэт өөр өөр төрөл байж болно. | MongoDB нь баримт бичигт суурилсан мэдээллийн сан юм. |
Хураангуй – NoSQL vs MongoDB
NoSQL мэдээллийн сан нь тархсан архитектуртай бөгөөд өгөгдлийн тогтвортой байдлыг нэмэгдүүлэх боломжтой. MongoDB нь нээлттэй эхийн NoSQL мэдээллийн сан юм. Энэ нь өргөтгөх чадвар, өндөр гүйцэтгэлийг хангадаг. Agile хөгжүүлэлтийн хувьд шаардлага өөрчлөгдөж болох ба MongoDB нь схемийг өөрчлөх боломжийг олгодог. NoSQL болон MongoDB хоёрын ялгаа нь NoSQL нь харилцаа холбоогүй мэдээллийн санд өгөгдөл хадгалах, авах механизм бөгөөд MongoDB нь NoSQL-д хамаарах баримт бичигт чиглэсэн мэдээллийн сан юм.
NoSQL болон MongoDB-н PDF хувилбарыг татаж авах
Та энэ нийтлэлийн PDF хувилбарыг татаж аваад офлайн зорилгоор ашиглах боломжтой. PDF хувилбарыг эндээс татаж авна уу NoSQL болон MongoDB хоорондын ялгаа