All Projects → masumsoft → Express Cassandra

masumsoft / Express Cassandra

Licence: lgpl-3.0
Cassandra ORM/ODM/OGM for Node.js with optional support for Elassandra & JanusGraph

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Express Cassandra

Janusgraph
JanusGraph: an open-source, distributed graph database
Stars: ✭ 4,277 (+2523.93%)
Mutual labels:  elasticsearch, cassandra, gremlin
Orango
ArangoDB Object Modeling for Node.js, Foxx and Modern Web Browsers
Stars: ✭ 103 (-36.81%)
Mutual labels:  orm, odm
Elasticsearch
Use SQL statements to query elasticsearch
Stars: ✭ 98 (-39.88%)
Mutual labels:  orm, elasticsearch
Elassandra
Elassandra = Elasticsearch + Apache Cassandra
Stars: ✭ 1,610 (+887.73%)
Mutual labels:  elasticsearch, cassandra
Ebean
Ebean ORM
Stars: ✭ 1,172 (+619.02%)
Mutual labels:  orm, elasticsearch
Graylog Plugin Metrics Reporter
Graylog Metrics Reporter Plugins
Stars: ✭ 71 (-56.44%)
Mutual labels:  elasticsearch, cassandra
Java Specialagent
Automatic instrumentation for 3rd-party libraries in Java applications with OpenTracing.
Stars: ✭ 156 (-4.29%)
Mutual labels:  elasticsearch, cassandra
Heroic
The Heroic Time Series Database
Stars: ✭ 836 (+412.88%)
Mutual labels:  elasticsearch, cassandra
Js Data
Give your data the treatment it deserves with a framework-agnostic, datastore-agnostic JavaScript ORM built for ease of use and peace of mind. Works in Node.js and in the Browser. Main Site: http://js-data.io, API Reference Docs: http://api.js-data.io/js-data
Stars: ✭ 1,599 (+880.98%)
Mutual labels:  orm, odm
Ferma
An ORM / OGM for the TinkerPop graph stack.
Stars: ✭ 130 (-20.25%)
Mutual labels:  orm, gremlin
Dynamo Easy
DynamoDB client for NodeJS and browser with a fluent api to build requests. We take care of the type mapping between JS and DynamoDB, customizable trough typescript decorators.
Stars: ✭ 133 (-18.4%)
Mutual labels:  orm, odm
Mongo Thingy
🍃 The most idiomatic and friendly-yet-powerful way to use MongoDB with Python
Stars: ✭ 49 (-69.94%)
Mutual labels:  orm, odm
Nagios Plugins
450+ AWS, Hadoop, Cloud, Kafka, Docker, Elasticsearch, RabbitMQ, Redis, HBase, Solr, Cassandra, ZooKeeper, HDFS, Yarn, Hive, Presto, Drill, Impala, Consul, Spark, Jenkins, Travis CI, Git, MySQL, Linux, DNS, Whois, SSL Certs, Yum Security Updates, Kubernetes, Cloudera etc...
Stars: ✭ 1,000 (+513.5%)
Mutual labels:  elasticsearch, cassandra
Logisland
Scalable stream processing platform for advanced realtime analytics on top of Kafka and Spark. LogIsland also supports MQTT and Kafka Streams (Flink being in the roadmap). The platform does complex event processing and is suitable for time series analysis. A large set of valuable ready to use processors, data sources and sinks are available.
Stars: ✭ 97 (-40.49%)
Mutual labels:  elasticsearch, cassandra
Php Es Mapper
An elasticsearch simple mapping ORM for php
Stars: ✭ 25 (-84.66%)
Mutual labels:  orm, elasticsearch
Haproxy Configs
80+ HAProxy Configs for Hadoop, Big Data, NoSQL, Docker, Elasticsearch, SolrCloud, HBase, MySQL, PostgreSQL, Apache Drill, Hive, Presto, Impala, Hue, ZooKeeper, SSH, RabbitMQ, Redis, Riak, Cloudera, OpenTSDB, InfluxDB, Prometheus, Kibana, Graphite, Rancher etc.
Stars: ✭ 106 (-34.97%)
Mutual labels:  elasticsearch, cassandra
Framework
Strongly-typed JavaScript object with support for validation and error handling.
Stars: ✭ 136 (-16.56%)
Mutual labels:  orm, odm
Gocqlx
All-In-One: CQL query builder, ORM and migration tool
Stars: ✭ 512 (+214.11%)
Mutual labels:  orm, cassandra
Stream Reactor
Streaming reference architecture for ETL with Kafka and Kafka-Connect. You can find more on http://lenses.io on how we provide a unified solution to manage your connectors, most advanced SQL engine for Kafka and Kafka Streams, cluster monitoring and alerting, and more.
Stars: ✭ 753 (+361.96%)
Mutual labels:  elasticsearch, cassandra
Awesome Python Models
A curated list of awesome Python libraries, which implement models, schemas, serializers/deserializers, ODM's/ORM's, Active Records or similar patterns.
Stars: ✭ 124 (-23.93%)
Mutual labels:  orm, odm

Build Status Download Stats Npm Version Documentation Status Dependencies Status Mentioned in Awesome Cassandra

Overview

Express-Cassandra is a Cassandra ORM/ODM/OGM for NodeJS with Elassandra & JanusGraph Support.

No more hassling with raw cql queries from your nodejs web frameworks. Express-Cassandra automatically loads your models and provides you with object oriented mapping to your cassandra tables like a standard ORM/ODM. Built in support for Elassandra and JanusGraph allows you to automatically manage synced elasticsearch and janusgraph indexes stored in cassandra.

Express-cassandra enables your nodejs app to manage a highly available distributed data store capable of handling large dataset with powerful query features powered by cassandra, elasticsearch and janusgraph combined. Express-cassandra empowers you to manage and query this truely distributed datastore with search, analytics and graph computing functionality from nodejs like you are just dealing with javascript objects and methods. Models are written as javascript modules and they automatically create the underlying db tables, indexes, materialized views, graphs etc. Afterwards you can save, update, delete and query your data using supported model methods. It's decoupled nature allows you to use it with many popular node frameworks without much hassle.

If you are using elassandra, then saved data in cassandra automatically syncs with elasticsearch indexes defined in your schema. You can then do any query elasticsearch indexes support.

If you are using janusgraph, then you can easily manage your graphs and graph indexes. Creating vertices and edges become simple function calls. You can then do any graph query the tinkerpop3 gremlin query language supports.

Supported Features

  • supports the latest cassandra 3.x releases
  • support for elassandra index management and search queries
  • support for janusgraph graph management and tinkerpop3 gremlin queries
  • compatible with datastax enterprise solr search and dse graph
  • full featured CRUD operations and data type validations
  • full support for collections and other advanced data types
  • support for materialized views, secondary/custom/sasi indexes
  • support for complex queries, streaming and token based pagination
  • support for user defined types/functions/aggregates
  • support for batching ORM operations for atomic updates
  • support for before and after hook functions for save/update/delete
  • promise support with async suffixed functions
  • built-in experimental support for automatic migrations
  • built-in experimental support for fixture data import/export
  • optional support for query debug and progress logs
  • most of the bleeding edge cassandra features are supported

This module uses datastax cassandra-driver by default or uses the dse-driver if already installed.

If you are using apache cassandra, then the module should work just fine. Datastax enterprise users can use this module, but needs to install the dse-driver separately in your app.

Installation

For apache cassandra version 3.x

npm install express-cassandra

For datastax enterprise version 5.x

npm install express-cassandra [email protected]

For elassandra version 5.5.x

npm install express-cassandra elasticsearch

For janusgraph version 0.2.x

npm install express-cassandra [email protected]

For older cassandra 2.x (no longer supported)

npm install [email protected]

Please note that if you use the legacy cassandra 2.x compliant version then please use the corresponding README.md file for that version. The following documentation is for version 3.x and datastax enterprise 5.x only. The materialized view support and several other part of the documentation is strictly applicable for cassandra 3.x / dse 5.x and will not work in earlier versions of cassandra.

Documentation

Read the full usage documentation in the express-cassandra documentation site.

Changelog

A detailed changelog for released versions are available in the changelog section.

Contributing

All contributions, bug reports, bug fixes, documentation improvements, enhancements and ideas are welcome.

A detailed overview on how to contribute can be found in the contributing guide.

Acknowledgement

  • Express-cassandra started off from a highly modified version of apollo-cassandra module. Afterwards major refactoring and new development went on to support missing features of cassandra 3.x and additional functionalities.

  • Apache Cassandra, Apache Lucene, Apache, Lucene, Solr, TinkerPop, and Cassandra are trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries.

  • DataStax, Titan, and TitanDB are registered trademark of DataStax, Inc. and its subsidiaries in the United States and/or other countries.

  • Elasticsearch and Kibana are trademarks of Elasticsearch BV, registered in the U.S. and in other countries.

  • Elassandra is a trademark of Strapdata SAS.

  • JanusGraph is a trademark of The Linux Foundation.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].