Tag Archives: nosql

RethinkDB

မနေ့က Zite မှာ သတင်းဖတ်ရင်း RethinkDB အကြောင်းရေးထားတာတွေ့မိတယ်။ RethinkDB နဲ့ Mongodb နှိုင်းယှဉ်ထားတာကိုတော့ ဒီမှာ ဖတ်နိုင်တယ်။ FAQ လည်း ပြည့်ပြည့်စုံစုံ ရေးထားတာတွေ့ရတယ်။ အခုတော့ Mac နဲ့ Linux မှာပဲ အသုံးပြုလို့ရသေးတယ်။ Admin Panel ကတော့ တော်တော်လေးကို ကောင်းတယ်ဆိုရမယ်။ သဘောကျတာက query က javascript ကို အသုံးပြုထားတာပဲ။ ၃ နှစ်လောက် develop လုပ်ထားတယ်လို့ဆိုပေမယ့် တော်တော်လေးကို ငယ်သေးတဲ့ nosql database လို့ ဆိုရမယ်။ Weekend မှ ပဲ စမ်းကြည့်လိုက်အုံးမယ်။

redis

Redis

Redis ဆိုတာကတော့ NoSQL Database နောက်တစ်ခုပါပဲ။ သူက Key Value storage ကို အသုံးပြုပါတယ်။ ကျွန်တော် How did I learn ? မှာ ရေးခဲ့သလို NoSQL နဲ့ PHP မဟုတ်တဲ့ အခြား language တစ်ခုကို လေ့လာချင်တာကြောင့် project တစ်ခု ဖန်တီးထားလိုက်တယ်။ Language ကိုတော့ Node နဲ့ သုံးမယ်။ Database ကို ဘာသုံးမလဲ စဉ်းစားတဲ့ အခါမှာ Mogodb နဲ့ Redis ကို သွား တွေ့တယ်။ Mongodb အကြောင်းကိုတော့ ကျွန်တော် ဒီမှာ ရေးဘူးပါတယ်။ နောက်ပြီးတော့ Cassandra ကို လည်း သုံးဖူးတယ်။ သူက setup လုပ်ရတာ နည်းနည်း ခက်တယ်။ နောက်ပြီး java သုံးထားတာကို သဘောမကျတဲ့ အတွက်ကြောင့် cassandra ကို ထပ် မသုံးပါဘူး။ ( java ကို အလိုလို နေရင်း ဘာကြောင့် မကြိုက်မှန်းကို မသိပါဘူး ) ဒါကြောင့် Redis ကို စမ်းကြည့်မယ်ဆိုပြီး ဆုံးဖြတ်လိုက်တာ။ မစမ်းခင် ဘာ အရင် ရှာလဲဆိုတော့ Node.js driver ရှိမရှိပဲ။ မရှိရင်တော့ မလေ့လာဘူးလို့ စဉ်းစားထားပေမယ့် Node.js driver အသင့် ရှိနေတာကို တွေ့ပါတယ်။ အခုနောက်ပိုင်းမှာ Node.js driver က တော်တော် များများ ရှိလာကြတယ်။ Node.js က c နဲ့ module တွေ ရေးလို့ ရတဲ့အတွက် လက်ရှိရှိနေတဲ့ driver ကနေ Node.js ကို ပြောင်းဖို့ လွယ်တာကြောင့်လည်း ပါမှာပါ။
Continue reading

NoSQL — Part 2

အပိုင်း ၁ မှာတော့ Data Stores တွေ အကြောင်းပြောပြီးပါပြီ။

Relational Database မှာ limit less indexing နဲ့ အရမ်းကောင်းမွန်တဲ့ SQL language ရှိပါတယ်။ ဒါကြောင့် Relational Database ဟာ dynamic ဖြစ်ပြီး လူသုံးများနေရတာပါ။ NoSQL မှာတော့ limited ဖြစ်နေတဲ့ query နဲ့ indexing ရှိနေပါတယ်။ နောက်ပြီး JSON လိုမျိုးတွေက SQL language လို Query တွေ ရေးလို့ရမှာ မဟုတ်ပါဘူး။ NoSQL မှာ query ရေးသားတာက Database တစ်ခုနဲ့ တစ်ခုမတူသလို Stores ပေါ်မှာ မူတည်ပြီးတော့လည်း query ရေးသားပုံတွေက မတူညီကြပါဘူး။

Map-Reduce

Map-Reduce ကတော့ NoSQL ကို လွယ်လင့် တကူ အသုံးပြုလို့ရမယ့် design ပါ။ နောက်ပြီး NoSQL တွေမှာ javascript language လိုမျိုး ထည့်သွင်းရေးသားနိုင်ပါတယ်။ Mongodb မှာတော့ ဒီလို မျိုးရေးပါတယ်။

db.things.save({x : 4, j : 100});
for (var i = 1; i <= 20; i++) db.things.save({x : 4, j : i});

things ဆိုတဲ့ collection (tables) မှာ loop ပတ်ပြီးတော့ data သိမ်းလိုက်တာပါ။ .save, .update, .delete လိုမျိုး အရံသင့် function တွေ နဲ့ data သိမ်းတာ ဖျက်တာ update လုပ်တာတွေ လွယ်လွယ်ကူကူ လုပ်နိုင်ပါတယ်။
Continue reading

NoSQL

စမ်းမယ် စမ်းမယ်နဲ့ သေသေချာချာ မစမ်းဖြစ်သေးတဲ့ MongoDB ကို ဒီနေ့မှပဲ စမ်းဖြစ်တော့တယ်။ php အတွက် driver ကိုတော့ စမ်းသွင်းထားတာ ကြာလှပါပြီ။ MongoDB က သွင်းရတာ လွယ်သလို ရေးရတာလည်း လွယ်တယ်။ ပြဿနာ တစ်ခုက PHP Driver သွင်းရတာလေးပဲ။ 32 bit နဲ့ 64 bit ပြဿနာ ကြောင့် driver ကို ကိုယ့်ဘာသာကိုယ် compile ပြန်လုပ်ရတယ်။ အဲဒါကလွဲပြီး ထွေထွေ ထူးထူး ပြဿနာ မရှိပါဘူး။ MongoDB က NoSQL Database တွေထဲက တစ်ခုပါ။
Continue reading