Какой рейтинг вас больше интересует?
|
Главная / Главные темы / Тэг «newsjail»
[Из песочницы] Простая методика построения фильтров товаров с помощью MongoDb и MapReduce 2013-07-14 15:06:18
Впервые столкнувшись с MapReduce, я продолжительное время искал реальные примеры применения. ...
+ развернуть текст сохранённая копия
Впервые столкнувшись с MapReduce, я продолжительное время искал реальные примеры применения. Пресловутый поиск слов в тексте, встречающийся в каждой второй статье о MapReduce, искомым примером считать не будем. Наконец, на двух курсах по Big Data на Coursera, я нашёл не только живые примеры, но теоретическую подоплёку для более глубокого понимания происходящего. Возможность применить полученный багаж знаний не заставила себя долго ждать.
В этой небольшой статье я хочу поделиться опытом реализации классической для большинства Интернет-магазинов системы фильтров товаров по критериям применительно к туристическому порталу, где появилась задача поиска и фильтрации по базе в десятки тысяч отелей, каждый из которых описывается рядом параметров и наличием нескольких десятков предоставляемых сервисов из сотен возможных.
Всех интересующихся MongoDb и MapReduce приглашаю под кат.
Тэги: big, data, map, mongodb, nosql, reduce, веб-разработка
[Из песочницы] Riak-js. Основы использования и трудности поиска 2013-07-01 23:17:45
Meta
Доброго времени суток!
В данный момент я работаю над достаточно ...
+ развернуть текст сохранённая копия
Meta
Доброго времени суток!
В данный момент я работаю над достаточно большим проектом, состоящим из нескольких модулей, и использующий разные технологии. Но сам сайт, а точнее его back-end написан целиком на Node.js, а Riak является основным хранилищем. Ничего не буду писать про сам Riak, на хабре и так есть отличная обзорная статья.
Как и для любой другой NoSQL базы данных, чтобы интегрировать функциональность БД в Node.js вам необходимо использовать драйвер или клиент этой базы данных, кому как нравится называть. Вам это надо для удобства пользования и составления запросов к БД, конечно вы можете это делать и напрямую, используя незатейливую команду curl.
Сразу хочу оговориться, что клиенты или драйвера для различных NoSQL БД называют по-разному, я же буду говорить или как об ORM или как о клиенте конкретной ДБ. Кстати, имено так о себе и пишут в Riak-js репозитории:
Node.js client for Riak.
Вот некоторые, а возможно что и все Node.js клиенты для riak
- riak-js — используемый в нашем проекте
- Simpleriak
- Riak-PB — использует protobuff, может быть немого быстрее
Из-за незначительного опыта работы с последними двумя, сказать мне вообщем-то про них нечего, поэтому дальше речь пойдет только riak-js.
Читать дальше →
Тэги: dynamo, json, map, node.js, nosql, reduce, riak, search, баги, веб-разработка
Современное искусство: Нью-Йорк на других планетах. Фантастический проект от Николая Ламма (Nickolay Lamm) 2013-05-18 18:30:52
+ развернуть текст сохранённая копия
Нью-Йорк – это финансовый и культурный центр мира, город, от событий в котором зависит жизнь миллиардов людей. А художник Николай Ламм (Nickolay Lamm) решил немного пофантазировать и перенести этот мегаполис на другие планеты Солнечной системы.
Подробнее..
URL записи
Тэги: lamm, nickolay, космос, нью-йорк, фантастика
Поддержка Portable Native Client появилась в Chrome 29 developer preview 2013-05-18 10:46:11
Google наконец-то выпустил портативную версию Native Client (PNaCl). Технологию Native Client, ...
+ развернуть текст сохранённая копия
Google наконец-то выпустил портативную версию Native Client (PNaCl). Технологию Native Client, которая позволяет компилировать в машинный код и выполнять в браузере программы на С или С++, достигая практически нативной производительности, часто критиковали за то, что изначально NaCl поддерживал не все платформы, и для каждой из них приходилось компилировать отдельно. PNaCl компилирует исходный код программы в биткод LLVM — низкоуровневой виртуальной машины, которая поддерживает множество аппаратных платформ и гарантирует, что код будет работать практически везде.
Читать дальше →
Тэги: asm.js, chrome, client, google, nacl, native, pnacl, portable, веб-разработка
БД. Справочники. Живые примеры на глобалах 3 2013-05-06 15:00:38
+ развернуть текст сохранённая копия
Часть 1
Часть 2
Слово «Живые», в названии статьи, означает, что механизмы, код и данные, из этих статей, используются в рабочем проекте.
Возможно, вам будет интересно посмотреть на некоторые варианты решений разработки БД (структур, механизмов).
На картинке изображён кусок кода, описывающего глобал правил справочника.
CRUD методы, в процессе своей работы, постоянно обращаются к этим правилам чтобы узнать, какие именно действия необходимо выполнить.
Ранее, мы остановились на том, что у нас есть следующие глобалы:
- ^Dictionary — элементы справочников и их свойства;
- ^NameDictionaryElement — названия элементов справочников на различных языках;
- ^IndexDictionary — основной индекс справочников;
- ^RefsDictionary — глобал обратных ссылок на индекс (его назначение будет описано далее).
Посмотреть глобалы^Dictionary("Vehicle","TransmissionType",1,0,"UpdateTime")="62086,66625"
^Dictionary("Vehicle","TransmissionType",1,0,"uid")=888
^Dictionary("Vehicle","TransmissionType",2,0,"UpdateTime")="62086,66625"
^Dictionary("Vehicle","TransmissionType",2,0,"uid")=888
^NameDictionaryElement(1,"partUri",0)="akp"
^NameDictionaryElement(1,"partUri",0,"UpdateTime")="62086,66625"
^NameDictionaryElement(1,"ru",0)="АКП"
^NameDictionaryElement(1,"ru",0,"UpdateTime")="62086,66625"
^NameDictionaryElement(2,"partUri",0)="meh"
^NameDictionaryElement(2,"partUri",0,"UpdateTime")="62086,66625"
^NameDictionaryElement(2,"ru",0)="МЕХ"
^NameDictionaryElement(2,"ru",0,"UpdateTime")="62086,66625"
^IndexDictionary("Vehicle","TransmissionType","name","partUri","akp",1)=1
^IndexDictionary("Vehicle","TransmissionType","name","partUri","meh",2)=1
^IndexDictionary("Vehicle","TransmissionType","name","ru","акп",1)=1
^IndexDictionary("Vehicle","TransmissionType","name","ru","мех",2)=1
^IndexDictionary("Vehicle","TransmissionType","uid",888,1)=1
^IndexDictionary("Vehicle","TransmissionType","uid",888,2)=1
^RefsDictionary(1,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""partUri"",""akp"",1)")=1
^RefsDictionary(1,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""ru"",""акп"",1)")=1
^RefsDictionary(1,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""uid"",888,1)")=1
^RefsDictionary(2,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""partUri"",""meh"",2)")=1
^RefsDictionary(2,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""ru"",""мех"",2)")=1
^RefsDictionary(2,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""uid"",888,2)")=1
Создать глобалы Ctrl+С/Vset ^Dictionary("Vehicle","TransmissionType",1,0,"UpdateTime")="62086,66625"
set ^Dictionary("Vehicle","TransmissionType",1,0,"uid")=888
set ^Dictionary("Vehicle","TransmissionType",2,0,"UpdateTime")="62086,66625"
set ^Dictionary("Vehicle","TransmissionType",2,0,"uid")=888
set ^NameDictionaryElement(1,"partUri",0)="akp"
set ^NameDictionaryElement(1,"partUri",0,"UpdateTime")="62086,66625"
set ^NameDictionaryElement(1,"ru",0)="АКП"
set ^NameDictionaryElement(1,"ru",0,"UpdateTime")="62086,66625"
set ^NameDictionaryElement(2,"partUri",0)="meh"
set ^NameDictionaryElement(2,"partUri",0,"UpdateTime")="62086,66625"
set ^NameDictionaryElement(2,"ru",0)="МЕХ"
set ^NameDictionaryElement(2,"ru",0,"UpdateTime")="62086,66625"
set ^IndexDictionary("Vehicle","TransmissionType","name","partUri","akp",1)=1
set ^IndexDictionary("Vehicle","TransmissionType","name","partUri","meh",2)=1
set ^IndexDictionary("Vehicle","TransmissionType","name","ru","акп",1)=1
set ^IndexDictionary("Vehicle","TransmissionType","name","ru","мех",2)=1
set ^IndexDictionary("Vehicle","TransmissionType","uid",888,1)=1
set ^IndexDictionary("Vehicle","TransmissionType","uid",888,2)=1
set ^RefsDictionary(1,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""partUri"",""akp"",1)")=1
set ^RefsDictionary(1,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""ru"",""акп"",1)")=1
set ^RefsDictionary(1,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""uid"",888,1)")=1
set ^RefsDictionary(2,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""partUri"",""meh"",2)")=1
set ^RefsDictionary(2,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""name"",""ru"",""мех"",2)")=1
set ^RefsDictionary(2,"^|""MONTOLOGY""|IndexDictionary(""Vehicle"",""TransmissionType"",""uid"",888,2)")=1
Читать дальше →
Тэги: cach'e, mump, nosql, веб-разработка, глобалы, разработка, справочник, структура, субд
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ...
Главная / Главные темы / Тэг «newsjail»
|
Взлеты Топ 5
Падения Топ 5
|