Энэ нийтлэлээс та NoSQL өгөгдлийн сан гэж юу болох, яагаад (мөн хэзээ!) ашиглах, хэрхэн эхлүүлэх талаар сурах болно.
NoSQL нь “Not only SQL” гэсэн үгийн товчлол бөгөөд, тэрээр SQL хэлний релэйшн дэхь (таблын жагсаалтын байдлыг дагаж, хадгалж болох) төрлийн хадгаламж, шинж чанар, холбоо барих механизмуудын альтернатив юм. SQL (Structured Query Language) нь эх хэлээр SQL серверүүдийг хэрэглэхдээ ашигладаг хэл бөгөөд, таблууд, жагсаалтууд, бичлэгүүд, зургууд болон аль нэгийгээр хадгалсан мэдээлэлд хандах, өөрчлөх, шинэчлэх зэргийг зохицуулахын тулд дизайн хийж өгөх шаардлагатай.
NoSQL системүүд нь релэйшн дэхь мэдээллийн сангуудаас давтагдана. Одоогоор олон дэх NoSQL систем байдаг ба мэдээллийг эрх мэдэлд суурилсан, зарим үед JSON, XML, BSON гэх мэт форматуудыг ашигладаг.
NoSQL системүүдийн нэг зорилго нь хэрэглэгчдэд баримталсан олон хүчин зүйлсийг хангах, мэдээллийг батлах, хурдан холбогдол үүсгэх, үл хөдлөх хувилбарийг олж мэдээллийн агуулга нь том амьдралтай болж, хадгалалтын агуулгыг хурдан уншиж, өөрчлөх, засварлах, алгаслах, үл хөдлөхийг олон төрлийн аргуудын тулд дизайн хийж өгөх юм.
NoSQL системүүд нь хэрэглэгчдэд биднийх нь чиглэлийг хангах, хурдан холбогдол, том амьдрал, хамгийн бага шаардлагатай аргуудыг
SQL vs No SQL
SQL (Structured Query Language) бол релэйшн дэхь мэдээллийн санд мэдээллийн холбоос, шүүгч, засварлагч үйлдлүүдийг хийхэд ашигладаг хэл бөгөөд энэ нь таблууд, жагсаалтууд, бичлэгүүд, зургууд гэх мэтээр хадгалагдсан мэдээллийг зохицуулах, өөрчлөх, шинэчлэх, хайж олох зэргээр хэрэгжүүлдэг. SQL хэлний системүүд нь олон аргуудыг поддэрсэн бөгөөд MySQL, Oracle, PostgreSQL, Microsoft SQL Server гэх мэт хамгийн их ашиглагддаг системүүд байдаг.
NoSQL систем нь мэдээллийг эрх мэдэлд суурилсан, төрлийн хадгаламж, шинж чанар, холбоо барих механизмуудын альтернатив байдаг. NoSQL системүүд нь мэдээллийг таблууд, жагсаалтууд гэх мэтээр бөгөөд таблуудыг бүрэнээс нь хадгалж болохгүй, харгалзах мэдээллийг холбогдох шинж чанаруудыг ашигладаг. NoSQL системүүдийн хамгийн анхны ашиглалт нь вэб, мобайл аппликейшн, мэдээллийн хувилбарууд болон бусад санхүүжилтийн аппликейшнуудыг хэрэгжүүлэхэд байдаг. NoSQL системүүдийн төрлүүдэд хамгийн танил хэлбэрүүд MongoDB, Cassandra, Redis, Couchbase, Amazon DynamoDB гэх мэт байдаг.
SQL илүү комплекс, хэрэглээнийхээ туршлага, зохицуулалттай байдаг бөгөөд анхаарах, дурын мэдлэгтэй хэрэглэж болох боломжтой. NoSQL систем нь хөгжүүлэгчдийн хурдан холбогдол, хэрэглээнийхээ хэмжээний өсөлт, гүйцэтгэлээр хэрэгжүүлэхэд нэмэлт туршилтыг олгодог. Ингээд SQL-ээс шилжихдээ хэрэглэх эсвэл SQL болон NoSQL системүүдийг нийлүүлэх механизмуудыг ашиглахад арга хэмжээ бий болох боломжтой.
MongoDB
MongoDB нь NoSQL (Not only SQL) төрлийн мэдээллийн сан систем юм. Энэ нь дотоод хадгалалтын аргуудаас шалтгаалж байгаа бөгөөд JSON (JavaScript Object Notation) форматын дүрсэл, тэмдэгт мөр, хүснэгт гэх мэтээр мэдээллийг хадгалж, уншиж, өөрчлөх, засварлах зэргийг дэмжинэ.
MongoDB нь хэрэглэгчдэд хурдан хариу үйлдлүүдийг үзүүлэхэд зориулагдсан. Энэ систем нь хэдий ч анхааралтайгаар харилцах шаардлагатай тохиолдолд зөвхөн одоогийн үйлдлийг гүйцэтгэхдээгүй, өөрчлөлтийг амарч болох технологийг ашигладаг.
MongoDB нь өөрийн тодорхой аргуудыг бүрэн хэрэгжүүлэх боломжийг олгодог:
Гаралтын болон хэрэглэгчийн харилцаа: MongoDB нь хэрэглэгчийн гаралтын мэдээллийг амархан хадгалж, хурдан хайж олох боломжийг олгодог. Хэрэв хэрэглэгчийн мэдээлэл өөрчлөгдөх боломжтой бол, энэ хувилбар нь хялбарчлага хэрэглэх боломжтой.
Газарт байршил, географик мэдээлэл: MongoDB нь газрын байршил, географик мэдээллийг хурдан хадгалж, хайж олоход ашигладаг. Газарт байршил, хугацааны тэмдэгтүүдийг ашиглахад алдаагүй, хурдан үр дүнтэй.
Холбогдсон мэдээлэл, шинэчлэлт: MongoDB нь тодорхой харилцах, холбогдох мэдээллийг хурдан хадгалж, шинэчлэх боломжийг олгодог. Тэгвэл өөрчлөлтийг амархан хийж, шинэчлэхдээ зориулагдсан.
Хадгаламжийн хурдан засварлах: MongoDB нь бага зэрэг хурдан засварлах шаардлагатай мэдээллийг хадгалдаг. Гаралтын болон бусад үйлдлийг хийхдээ хурдан уншиж, бичихэд зориулагдсан.
MongoDB нь вэб аппликейшн, гүйцэтгэлийн аппликейшн, гүйлгээний бүтээгдэхүүнүүдийг хэрэгжүүлэхэд хамгийн их ашигладаг систем юм. Түүнийг энгийн, тодорхойлолтынгүй, хурдан үүрэгтэй мэдээллийн сан гэж ойлгоно.
const MongoClient = require(‘mongodb’).MongoClient;
// MongoDB-тай холбогдох URL
const url = ‘mongodb://localhost:27017’;
// MongoDB дээр сангуудыг нээх
MongoClient.connect(url, function(err, client) {
if (err) {
console.error(‘MongoDB-тай холбогдож чадсангүй:’, err);
return;
}
console.log(‘MongoDB-тай амжилттай холбогдлоо’);
// MongoDB-г ашиглана
const db = client.db(‘mydatabase’);
// Доорхи үйлдлүүдийг хийнэ
// db.collection(‘mycollection’).find({}).toArray(function(err, result) {
// if (err) throw err;
// console.log(result);
// });
// MongoDB-тай холболт хаах
client.close();
});
Хайлт
Категори
Категори
- 1 минутын уншлага (280)
- 2 минутын уншлага (135)
- Богино прожектууд (9)
- боловсрол (75)
- Зөвлөгөө (21)
- Зөвлөгөө (60)
- Код (35)
- Хөндлөнгийн (14)