Базы данных NewSQL

Введение В последнее время нереляционные базы данных приобрели широкую популярность, из-за ряда преимуществ: отсутствие схемы, высокая производительность, возможность линейного масштабирования, уменьшения времени разработки. Но в свою очередь, такие базы данных имеют свои недостатки, например, отсутствие поддержки транзакций в большинстве из них. Возникла проблема: как достичь производительности NoSQL и сохранить поддержку принципов ACID? Еще одним преимуществом … 

 

Масштабирование графовой базы данных Neo4j

Все СУБД которые хотят отвечать современным требованиям должны хорошо масштабироваться. Neo4j поддерживает горизонтальное масштабирование master-slave. Каждый узел разбит на две части, непосредственно база данных и компонент управления кластером. Этот компонент постоянно держит связь с другими узлам и принимает соответствующие решения. Когда необходимо выбрать главный узел, этот компонент проверяет, правильно ли выбран главный узел. Это происходит … 

 

Neo4j как ядро рекомендательной системы

Бурное развитие электронной коммерции годами способствовало развитию рекомендательных систем (РС), поскольку это очень эффективный и дешевый способ увеличения количества продаж. С этим ростом также возросли требования к РС. Все больше и больше компаний сталкиваются с большими объемами данных, требует от них разработки масштабируемых решений. Также в эру социальных сетей важную роль играют связи между пользователями. … 

 

Цикл for vs forEach в JavaScript

Если ты новенький в JavaScript, то тебе может быть не понятна разница между использованием цикла for и метода Array.forEach. В этой статье я сделаю сравнительный анализ этих двух способов итерирование массива. Синтаксис Синтаксис цикла for довольно простой, и мало чем отличается от такого цикла в других языках програмирования. Цикл for принимает 3 выражения. Первое выражение … 

 

Аргументы командной строки в Node.js

Что такое аргументы командной строки (Command Line Arguments)? Аргументы командной строки — это строки которые используются для передачи дополнительной информации перед запуском программы из терминала (CLI) операционной системы. Аргументы командной строки как правило содержат параметры конфигурации приложения, например, адрес порта HTTP сервера. В большинстве случаев аргументы передаются после названия программы. Пример синтаксиса можно увидеть ниже: … 

 

Графовая база данных Neo4j

Хранение данных в реляционных СУБД имеет свои преимущества, но для определенных типов задач не подходит, особенно когда необходимо хранить много связей между данными. Для решения этих проблем можно применить графовую СУБД. Для начала стоит сделаем краткий обзор, Neo4j — графовая база данных с открытым исходным кодом разработана на языке Java, с поддержкой транзакции (ACID). Данные … 

 

Как отправить пуш сообщение в Node.js?

Сначалa нужно установить пакет firebase-admin: Далее импортироем библиотеку: Для отправки пуш сообщения будем использовать метод sendToDevice (). Он принимает параметром массив пуш токенов, вторим параметром данные сообщение.   Также FCM позволяет отправить сообщение группе устройств, для этого используэться механизм pub/sub.  

 

Триггеры onCreate, onUpdate, onDelete в Firebase Cloud Functions

В этой статье рассмотрим новые типы триггеров Firebase, которые были добавлены в firebase-functions 0.5.9 В первой версий Realtime database triggers был доступен только один триггер для всех типов изменений данных, он назывался onWrite(). И вся работа по определению события ложилась на плечи разработчика. Например, представите, вам нужно обрабатывать только создание новой записи, раньше это делалось … 

 

Как обработать push notification если Android приложение свернуто?

Существует два типа пуш-сообщений в сервисе FCM (Firebase Cloud Messaging) 1) Notification message: FCM показывает их автоматически. Такое сообщение вызывает метод onMessageReceived () только если приложение не открыто. 2) Data message: Обработка таких сообщений должна происходит на стороне приложения. Метод onMessageReceived () вызывается даже если приложение скрыто, или не запущено. Для обработки пуш-сообщений нужно реализовать … 

 

Как прочитать файл в Node.js ?

Функции для работы с файлами хранятся в модуле fs. Его можно импортировать следующим образом: Каждый метод в модуле fs имеет синхронную, а также асинхронную реализацию. Асинхронные методы принимают последним параметром в функцую обратного вызова завершения чтения файлв. Рекомендуется использовать асинхронный метод вместо синхронного метода, так как он никогда не блокирует event loop. Пример чтения файла: