Introduction to Cassandra - PrismoSkills



Introduction to Cassandra - PrismoSkills

Introduction to Cassandra



Cassandra

  1. Massively scalable
  2. Linearly scalable (If 2 nodes handle x traffic, then 4 nodes handle 2x!)
  3. NoSQL Database
  4. Failed nodes can be replaced with no downtime.
  5. Integrates with Hadoop and has MapReduce support. Also supports Apache Pig and Hive.
  6. Can store structured and unstructured data alike.



Architecture

  1. Masterless architecture - meaning all nodes are the same.
  2. Data automatically distributed among all nodes in the ring.
  3. Replication factor is configurable.
  4. Replication can be configured to work across data-centers also.
  5. Failed nodes' data is automatically replicated to maintain replication factor.
  6. Cassandra emphasizes denormalization.



Language Features (CQL 3.0)

  1. CQL has drivers available in Java, Python and Node.JS
  2. Does not support joins or subqueries, except for batch analysis through Hive.
  3. Lightweight transactions using the IF keyword in INSERT and UPDATE statements.
  4. Initial support for triggers.



Data Model

  1. Cassandra is essentially a hybrid between a key-value and a column-oriented (or tabular) database.
  2. Cassandra's column-family resembles a Table in RDBMS.
  3. Column families contain rows and columns.
  4. Each row has multiple columns, each of which has a name, value, and a timestamp.
  5. Different rows in the same column family do not have to share the same set of columns.
  6. Columns may be added to one or multiple rows at any time.
  7. Each key in Cassandra identifies one row with multiple columns (like a Primary Key).

Read full article from Introduction to Cassandra - PrismoSkills


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts