Apache Cassandra 個案研究

NoSQL 概念

Miriam Antona

Software engineer

Apache Cassandra-總覽

Apache Cassandra 標誌

  • 受歡迎的欄家族資料庫
  • 最初由 Facebook 開發
  • 開放原始碼
  • 最終成為 Apache 基金會 專案
NoSQL 概念

Apache Cassandra-特色

  • 分散式
    • 資料分散在叢集各節點
    • 每個節點角色相同
    • 無主節點
  • 高可用
  • 無單一故障點
  • 透過新增節點水平擴充
  • Cassandra 用戶端驅動程式:C#、Java、Python、Scala 等
NoSQL 概念

Apache Cassandra-特色

  • Cassandra Query Language(亦稱 CQL
    • 查詢資料
    • 語法類似 SQL
    • 資料表(對應欄家族)、列、欄
    • CQL 與 SQL 的差異:
      • 不支援 join
      • 不支援外鍵
      • 不支援子查詢等
      • 每列可有不同欄數
SELECT * FROM users WHERE user_id IN (212, 213, 214);
NoSQL 概念

Apache Cassandra-生態系

  • 第三方 Cassandra 專案、工具、產品與服務
    • 雲端方案
    • 安裝工具
    • 開發框架
    • 連接器
    • 等等
NoSQL 概念

Apache Cassandra-客戶

部分 Apache Cassandra 客戶的標誌

NoSQL 概念

Bigmate 個案研究-總覽

  • 位置追蹤
  • 產業感測
  • 生產力

Bigmate 標誌

NoSQL 概念

Bigmate 個案研究-問題與解方

  • IoT 平台:
    • 擷取並處理大量多元的資料
    • 整合 IoT 感測器、裝置與其他平台
    • 即時處理資料
    • 多個地點擴充與部署
    • 應用範例:
      • Thermy -> 擷取人員皮膚溫度
      • Warny -> 偵測可能的碰撞
  • 測試過 MySQL、MongoDB、Apache Cassandra 等
    • 最後選擇 Apache Cassandra
    • 可擴充性更佳
NoSQL 概念

Bigmate 個案研究-成果

  • 數百萬次操作同時使用者
  • 對單一客戶顯示 20,000 個即時資料點
  • 容錯(資料複寫)
NoSQL 概念

Bigmate 個案研究-成果

  • 數百萬次操作同時使用者
  • 對單一客戶顯示 20,000 個即時資料點
  • 容錯(資料複寫)
1 https://cassandra.apache.org/case-studies/
NoSQL 概念

一起來練習吧!

NoSQL 概念

Preparing Video For Download...