Веб-панель аналитики в реальном времени: какие технологии следует использовать? (узел / джанго, кассандра / монгодб ...) - PullRequest
0 голосов
/ 08 марта 2019

мы хотим разработать приборную панель для анализа геопространственных данных. Это небольшой и близкий подход к тому, что мы хотим сделать: http://adilmoujahid.com/images/data-viz-talkingdata.gif

Наше основное беспокойство связано с используемыми технологиями. (фронт будет D3.js, DC.js, leaflet.js ...)

Между Django и node.js мы думаем, что будем использовать node.js, потому что мы читали его быстрее, чем Django для задач такого рода. Но мы не уверены, и мы открыты для идей.

Но насчет Монго или Кассандры, мы так растеряны. Наши данные в основном структурированы, поэтому храните их в таких таблицах, как Cassandra, чтобы с ними было легко работать, а также Cassandra, кажется, имеет лучшую производительность. Тем не менее, у нас также есть данные устройств IoT с большим количеством местоположений GPS в реальном времени ...

Какие предложения вы можете дать нам для достижения нашей цели?

TL; DR Summary;

  • Панель инструментов с сотнями одновременных пользователей.
  • Сохраненные данные будут в основном структурированными текстом / числами, но будут также включать изображения, GPS-массивы, датчики IoT, географические данные (векторные многоугольники и растры)
  • Базы данных получат высокую нагрузку записи от датчиков.
  • Производительность панели очень важна. Чтение данных в реальном времени важнее, чем сохранение их без повреждений / безопасности.
  • Большая часть исчисления / математики будет рассчитана в браузере клиента, сервер попытается избежать математических операций.

Ответы [ 3 ]

2 голосов
/ 09 марта 2019

Отказ от ответственности: я сотрудник DataStax, поэтому я прокомментирую кусок Cassandra.

Cassandra - хороший выбор для этого, если ваша панель управления может быть спланирована на основе набора известных запросов.Если эти пользователи будут выполнять специальные запросы непосредственно в базу данных с панели мониторинга, вам понадобится что-то с немного большей гибкостью, например ElasticSearch или (бесстыдный плагин) DataStax Search.Особенно, если вы ожидаете, что запросы / база данных будут обрабатывать некоторую геопространственную логику.

1 голос
/ 09 марта 2019

JaguarDB имеет очень сильную поддержку геопространственных данных (2D и 3D). Это позволяет хранить несколько измерений для каждой точки, в то время как другие базы данных поддерживают только одно измерение (точка). Многие сложные запросы, такие как многоугольник Вороного, выпуклая оболочка также поддерживаются. Это открытый исходный код, распределенный и распределенный, несколько столбцов индексов и т. Д.

0 голосов
/ 13 марта 2019

Относительно Postgresql и Cassandra, есть ли большая разница в использовании RAM / CPU / DISK между ними?

Наш вариант использования не требует транзакций, он будет в одном узле, и у нас будет запись устройств IoTданные до 500 раз в секунду.Однако я читал, что географические данные, которые лучше работают с Potstgis, чем cassandra ...

В соответствии с этим вариантом использования, вы рекомендуете Cassandra или Postgis?

...