Ако не сте запознати с MongoDB, това е документно-ориентиран NoSQL модел на данни, който използва документи, а не таблици и редове, каквито бихте намерили с релационни таблици.
Като такъв, поради уникалния начин, по който е изграден, MongoDB е един от най-добрите модели на данни за високопроизводително базиране на данни с голяма мащабируемост. Разбира се, това не означава, че няма конкуренция и MongoDB често се сравнява с Firebase или Cassandra.
Разбира се, тогава проблемът се състои в това, че всяка заявка за заявка в такова голямо хранилище за данни може да бъде проблематична и изисква определено ниво да бъдете гуру на заявките.
За щастие, MongoDB въведе изцяло нова функция, която не само премахва заявките за код, но също така я прави толкова проста, колкото няколко щраквания. Това означава, че не е нужно да харчите много време и караница, за да правите същия тип заявки и присъединяване, както обикновено.
Традиционни заявки в MongoDB
Докато документно-ориентираните бази данни вече са невероятно гъвкави, вероятно все още има ситуации, в които може да се нуждаете от живи данни в множество колекции. Например, една колекция може да съдържа потребителски данни, а друга може да съдържа потребителска активност. Това дори може да бъде разширено, за да има няколко колекции от данни за различни приложения, уебсайтове и т.н.
Ето защо е роден MongoDB Query Language (MQL) и предоставя начин на програмистите да създават сложни заявки. Всъщност MongoDB има цяла страница за документи за заявка и как да ги стартирате. Ако не сте запознати с него, ето бърз процес стъпка по стъпка за това как работи, за да можете да сравните с новите диаграми за търсене по-късно:
Първо, трябва да свържете своя екземпляр на MongoDB, като предадете URI към обвивката на Mongo и след това използвате --password
mongo.exe mongodb://$[hostlist]/$[database]?authSource=$[authSource] --username $[username]
Второ, превключете към базата данни, в този случай ще използваме хипотетична „тестова“ база данни
use test
В този момент бихте заредили повече данни в MongoDB, ако е необходимо. Можете да направите това с метода insertMany():
db.inventory.insertMany( [
{ "item": "journal", "qty": 25, "size": { "h": 14, "w": 21, "uom": "cm" }, "status": "A" },
{ "item": "notebook", "qty": 50, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "A" },
{ "item": "paper", "qty": 100, "size": { "h": 8.5, "w": 11, "uom": "in" }, "status": "D" },
{ "item": "planner", "qty": 75, "size": { "h": 22.85, "w": 30, "uom": "cm" }, "status": "D" },
{ "item": "postcard", "qty": 45, "size": { "h": 10, "w": 15.25, "uom": "cm" }, "status": "A" }
]);
След това идва действителната заявка чрез извличане на документи в конкретна колекция:
myCursor = db.inventory.find( { status: "D" } )
Обикновено това ще покаже 20 документа и ще върне курсор, но ако искате. Ако вашият набор от резултати обаче е по-голям, ще искате да повторите резултатите:
while (myCursor.hasNext()) {
print(tojson(myCursor.next()));
}
Накрая ще проверите резултатите, за да се уверите, че всичко е правилно. Имайте предвид в примера по-долу, вашите стойности на ObjectID ще се различават:
{
item: "paper",
qty: 100,
size: {
h: 8.5,
w: 11,
uom: "in"
},
status: "D"
},
{
item: "planner",
qty: 75,
size: {
h: 22.85,
w: 30,
uom: "cm"
},
status: "D"
}
Предимства на справочните диаграми
Както можете да видите, процесът е доста сложен с много стъпки и затова има смисъл MongoDB да иска да направи процеса малко по-рационализиран. Разбира се, това надхвърля просто улесняването на нещата и има много предимства на LookUp Charts.
Например, можете да съберете по-добра информация чрез формата за единичен изглед, като се присъедините към няколко колекции. По-важното е, че визуална и лесна за анализиране диаграма, актуализирана на живо според вашите спецификации, е безценна. Това често ви позволява да извличате информация почти веднага само от визуална проверка, особено ако разделите информацията на допълнителни категории.
Накрая, най-голямото предимство е, че няма нужда от изучаване и овладяване на MQL само за една база данни, което намалява бариерата за влизане за много програмисти.
Как да използвате справочни диаграми
Добре, така че разгледахме как обикновено работи запитването в MongoDB и имаме добра представа как справочните диаграми могат да ни помогнат да получим по-важна информация по-бързо, но как всъщност работи?
Е, стъпките са сравнително прости:
- Първо, трябва да изберете източника на данни, като го изберете от падащото меню горе вляво.
- След това кликнете върху „. . .“ от полето между вашите колекции и кликнете върху „Поле за търсене“
- Когато се появи новият прозорец, изберете „Отдалечен източник на данни“, откъдето ще изтеглите данните.
- След това трябва да изберете „Отдалечено поле“ и това би било полето, което е общо между двата ви източника на данни.
- Накрая можете да запишете конкретно име за полето за резултат и ако не, просто кликнете върху „Запазване“
И това е почти всичко! Вече можете да плъзнете и пуснете от новите полета в конструктора на диаграми. Не забравяйте да изберете и метод за намаляване на масива, в противен случай може да не видите диаграма, която да се показва за вас.
Запознаване с MongoDB Charts
Разбира се, в този момент е уместно да споменем, че новата функция LookUp е част от MongoDB Charts, а самите MongoDB имат няколко интересни статии, които да ви помогнат да се ориентирате в софтуера:
- Нови начини за персонализиране на вашите диаграми
- Визуализация на данните за поръчка
- Добавяне на поле за справка (което е различно от справочните диаграми)
Заключение
Както можете да видите, новите LookUp Charts са невероятно мощен инструмент, който значително намалява техническите познания за заявките в MongoDB. Само с няколко прости стъпки можете да разгледате диаграма с информация, обединена от няколко колекции, и да разберете новата информация почти веднага.
Сравнете това със стария метод за правене, който изисква няколко стъпки на кодиране, както и разбиране на кода, и ще започнете да виждате колко брилянтна е тази нова версия.