Cassandra trên máy chủ Dell PowerEdge một trận đấu được thực hiện trên thiên đường

Cassandra là một cơ sở dữ liệu NoSQL phổ biến trong một lĩnh vực có lẽ có hơn 225 cơ sở dữ liệu NoSQL khác nhau . Sao lưu một chút, có một phân loại cho NoSQL có bốn loại:

  • Giá trị chính như với Redis, Rocksdb & Aerospike
  • Cột rộng được minh họa bởi Hbase và Cassandra
  • Tài liệu chứa MongoDB, Couchbase và Marklogic ( được Progress mua lại gần đây )
  • Biểu đồ với TigerGraph, Neo4j, ArangoDB, AllegroGraph và hàng tá thứ khác

Cassandra là sự thay thế tuyệt vời cho Hbase khi di chuyển khỏi Hadoop sang một giải pháp nào đó giống như giải pháp Data Lakehouse của chúng tôi tại đây và tại đây . Thông tin thêm trong một bài viết trong tương lai về giải pháp này. Cột rộng thực sự có nghĩa là gì? Đó là một cặp khóa-giá trị đơn giản với một tải trọng (giá trị) vô định hình, thường lớn. Một trong những điều thú vị mà tôi học được khi thiết kế db Hbase đầu tiên của mình khoảng chín năm trước là tải trọng có thể thay đổi tùy theo bản ghi, điều này khiến tôi rất ngạc nhiên vào thời điểm đó. Tất cả những gì tôi có thể nghĩ đến là dữ liệu rác, dữ liệu chất lượng thấp, không có lược đồ, …. Thật là một mớ hỗn độn. Nhưng vì một lý do kỳ lạ nào đó, mọi người dường như không quan tâm nhiều đến những mặt hàng đó mà quan tâm nhiều hơn đến việc xử lý sự tăng trưởng, mở rộng quy mô và hiệu suất.

Cassandra có hai phiên bản. Đầu tiên là cộng đồng và thứ hai là phiên bản DataStax, DSE. DataStax cung cấp hỗ trợ cho cả hai và có khả năng dịch vụ tuyệt vời sau khi họ mua Last Pickle. Từ kinh nghiệm của tôi trong cơ sở khách hàng của mình, tôi thấy khoảng 50% trong số đó. Tôi nghĩ DSE rất xứng đáng với chi phí mà hầu hết khách hàng phải trả nhưng một lần nữa đó là một sự lựa chọn và những tiếng nói phản đối việc trả tiền cho nó dường như mạnh mẽ hơn.

Các cụm Cassandra nên có một số nút chia đều cho ba. Bản thân tôi thích bắt đầu với sáu. Về phần lưu trữ, người ta có thể có được bằng SSD vSAS RI. Nhiều ổ SSD dung lượng nhỏ hơn sẽ cung cấp cho bạn nhiều IOPS hơn. NIC 10GbE là đủ nhưng ngày nay tôi thích 25GbE hơn do tính kinh tế, giá trị và khả năng kiểm chứng trong tương lai. Người ta có thể nhận được thông lượng cao hơn 150% với mức tăng khoảng 25%. Xin lỗi Cisco nhưng 40GbE đã chết và sẽ đi theo con đường của loài chim dodo. Số lõi bạn cần có thể khác nhau nhưng có xu hướng nằm trong phạm vi 12-16 lõi trên mỗi ổ cắm. Hầu hết thời gian tôi đang tìm kiếm giá trị ở đây. Tôi tránh các bộ xử lý cao cấp nhất do chi phí và nhìn chung chúng không cần thiết. Nếu tôi cần nhiều lõi, tôi sẽ xem xét một số máy chủ AMD của chúng tôi. Đối với bài tập này, chúng ta sẽ xem xét Intel vì nó phổ biến hơn nhiều. Đối với chúng tôi tại Dell, điều này có nghĩa là máy chủ R650 Ice Lake nơi chúng tôi có thể nén rất nhiều thứ trong 1U.

Thông số kỹ thuật cho cụm sáu nút có thể trông như thế này trên mỗi nút:

  • RAM 256GB với DIMM 16 x 16GB trong cấu hình cân bằng hoàn toàn.
  • Bộ xử lý kép 16c với tốc độ xung nhịp nhanh hơn một chút. Vì vậy, 6346 sẽ phù hợp với yêu cầu @3.1GHz
  • NIC kép 25GbE
  • HBA355E – Điều này giả định không có RAID cho db của bạn
    1. Nếu bạn dự định sử dụng RAID cho Cassandra db của mình thì hãy chọn H755 PERC có bộ nhớ đệm 8GB.
  • 6 x 960GB vSAS RI SSD
    1. 99% thời gian đọc ổ đĩa chuyên sâu sẽ đủ
    2. Nếu thời gian lưu giữ của bạn là một ngày hoặc ít hơn mức sử dụng hỗn hợp thì sẽ phù hợp, nhưng tôi chưa thấy điều đó
  • Cặp SSD M.2 BOSS 480GB RI – cặp RAID1 có thể hoán đổi nóng hoàn toàn
    1. Đây là nơi hệ điều hành của bạn và có thể cả phần mềm DSE hoặc Apache Cassandra sẽ hoạt động