Lokijs-это база данных в памяти, которая ставит на первое место соображения производительности.
Lokijs поддерживает индексацию и более быстрый доступ к документам, с очень хорошей производительностью выполнения (почти 500 000 OPS/SEC). Его встроенный класс DynamicView может использоваться для индекса подмножествам данных и даже более высокой производительности.
*Прочитайте эту статью, чтобы увидеть исполнение Lokijs.
Lokijs поддерживает коллекции (наборы данных), что очень похоже на MongoDB и сохраняет данные на диск в формате JSON, поэтому ваши данные портативны.
Lokijs может работать на Node.js и браузерной стороне.
JavaScript - это простой и легкий в изучении и универсальный язык, поэтому очень легко разработать базу данных JavaScript и очень эффективен. Если ваш MongoDB не вышел на пенсию, вы можете найти Lokijs более идеальным решением в этих ситуациях:
1. Мобильные приложения - особенно HTML -приложения. (Cordova, Phonegap)
2.node.js встроенный хранение данных, предназначенное для приложений для небольших и средних размеров.
3. Встроенные приложения в рабочем столе (Node Webkit)
Lokijs поддерживает автономные серверы и может быть доступен с помощью клиента HTTP/TCP.
Выберите свою любимую парадигму
Функциональность Lokijs полностью использует силу JavaScript.
Если функциональное программирование является вашим предпочтительным стилем, вы обязательно хотели бы использовать представления для запроса данных.
Вы также можете использовать предпочтительную оболочку MongoDB для запроса текстовых объектов.
Быстрый старт
Установить
Lokijs могут быть установлены в NPM и Bower. Бегать:
Кода -копия выглядит следующим образом:
NPM Установить Lokijs
или
Кода -копия выглядит следующим образом:
Bower установить Lokijs
использовать
Создайте базу данных:
Кода -копия выглядит следующим образом:
var db = new loki ('loki.json')
Передайте в файле JSON, вам нужно сохранить данные
Создайте набор данных:
Кода -копия выглядит следующим образом:
var Children = db.addcollection («Дети»)
Вставьте документ:
Кода -копия выглядит следующим образом:
Children.insert ({name: 'sleipnir', ноги: 8})
Children.insert ({name: 'Jormungandr', ноги: 0})
Children.insert ({name: 'hel', ноги: 2})
Получите документацию:
Кода -копия выглядит следующим образом:
Дети.get (1); // возвращает Sleipnir
Children.find ({'name': 'sleipnir'})
Children.find ({ноги: {'$ gt': 2}})
Создайте динамический вид:
Кода -копия выглядит следующим образом:
var legs = kids.adddynamicview ('ноги');
legs.applyfind ({{{'$ gt': 2})
Legs.applySimplesort ('ноги');
Legs.data ();
MapReduce (агрегация данных):
Кода -копия выглядит следующим образом:
дети. MAPREDUCE (
function (obj) {return obj.legs; },
функция (массив) {
var sum = 0;
for (var i = 0; i <array.length; i ++) {
sum += массив [i];
}
return (sum / array.length) .tofixed (2);
});