Tải bản đầy đủ (.ppt) (25 trang)

TIỂU LUẬN MÔN CƠ SƠ DỮ LIỆU NÂNG CAO Tìm hiểu Hệ quản trị CSDL Phân Tán và hệ QTCSDLPT Apache Cassandra

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.24 MB, 25 trang )

Đề tài: Tìm hiểu Hệ quản trị
CSDL Phân Tán và hệ QTCSDLPT
Apache Cassandra
Nhóm 11:
Nguyễn Quang Dương
Phạm Ngọc Hải
Hệ QTCSDL Phân tán

Mô hình Tính toán (Dữ liệu) Song Song

Shared Memmory, Disk, Nothing …

Resource Shared

Mô hình Dữ liệu Phân tán:

Tách biệt địa lí, hợp nhất chậm

Độc lập ở từng node,site

Giao dịch cục bộ, Giao dịch toàn thể
Hệ QTCSDL Phân tán

Đâu là Hệ QTCSDL Phân tán?
Mạng + Phân tán DL?
Hệ QTCSDL Phân tán

Hệ phần mềm quản lí CSDL phân tán:

Liên quan logic


Giao diện chung

Trong suốt (Transparency) với người sử
dụng
Kiến trúc Hệ QTCSDL Phân
tán

Client – Server (Khách chủ)

Xử lí tập trung

Chỉ có các Request – Response

Server càng mạnh, xử lí càng nhanh

Peer to Peer (Ngang hàng)

Node: tương đương nhau

Tổ chức dữ liệu có thể khác nhau

Quản lí
Mô hình NoSQL

Non Relational – Not Only

Distributed Storage

Eventually Consistency: ko cần tức thì


Vertical Scalable: nội tại

Horizontal Scalable: mạng

Mục đích: ACID

High Scalability: ko giới hạn mở rộng

High Availability: chấp nhận lỗi
Apache Cassandra

Là mô hình NoSQL – Big Data

Column Oriented

Key-valued với Row key là khóa hàng
duy nhất

Tunable Consistency

Kiến trúc P2P

CQL (giống SQL)
Apache Cassandra
Inbox Search
2008 Open Source Project
2009, top-level Project 2010
Apache Cassandra

Wiki – phần Prominet User

Apache Cassandra
DataModel:

Keyspace

Column Family
(Row key)

(Super) Column

Data
(value – timestamp)
Apache Cassandra

Gossip (per second)

Cluster (partitioner)

Token

Random Partition

Ordered Partition

Seed Node
Apache Cassandra

Replication

Simple


Network Topology
Apache Cassandra

Client Request

Coordinator node

Write

Read

Timestamp
Apache Cassandra

Data Manager:

Write:

Commit log

Memtable

SSTable

Read

SSTable collect

Key cache

Apache Cassandra

Data Manager

Delete

Tombstone

Compaction process

Write hinted handoff

Hint (Location + Data)

Coordinator node : unReadable
Apache Cassandra

Consistency

Tunable: phụ thuộc client app
Mức nhất quán
Mô tả
ANY
Ghi ít nhất vào 1 node. Nếu tất cả các node down thì phải ghi được hinted handoff với mặc định dữ liệu
không đọc được cho đến khi ghi được vào node đúng
ONE
Commit log, memtable và 1 node sao lưu
QUORUM
Commit log, memtable và các node sao lưu được quy định (nhỏ hơn hoặc bằng hơn số node sao lưu tối
đa)

LOCAL_QUORUM
Commit log, memtable và các node sao lưu được quy định trong cùng một Data Center
EACH_QUORUM
Commit log, memtable và các node sao lưu được quy định ở tất cả các Data Center
ALL
Commit log, memtable và tất cả các node sao lưu
Apache Cassandra

Problem Detect:

Sử dụng Gossip

Tính toán ngưỡng cho từng node

Consistency Repair

Read Repair

Hint handoff

Anti-Entropy:

Dữ liệu ít được truy nhập

Nodetool Repair
Apache

Write fast and high availability

Ứng dụng cần đến ghi nhiều hơn đọc


Fault Tolerance: No single point of Failure

Scalability: mở rộng bằng thêm Node vào
Cluster, không hạn chế

Tunable Consistency

Cloud Architecture adapted

Thiết kế cho Hệ thống lớn
Demo
Twissandra.com
Demo
Demo

Về phần Demo cho bài tập của nhóm mình thì có các mục chính sau:
1. Cài đặt cái Apache Cassandra
2. Cài đặt thử 1 ứng dụng kiểu Demo lên trên nó.
3. Cài đặt 1 trình quản lý + monitor cái Apache Cassandra đó.

Phần 1: Cài đặt trên nền CentOS 6.2

Phần 2: Đây là 1 ứng dụng kiểu sample về Tài chính, cụ thể là về Thị trường
chứng khoán.(Portfolio Demo).
- Mỗi Portfolio chứa danh sách của các cổ phiếu, số lượng cổ phiếu đã mua, và
giá tại thời điểm mua đó.
- Mỗi Portfolio sẽ có một thống kê dạng % về tỉ lệ được or mất so với giá cổ
phiếu ở thời điểm mua.
- Dữ liệu (database) của nó tên là : PortfolioDemo. Trong Cassandra thì nó gọi

là Cassandra keyspace (Cũng tương tự như 1 database trong CSDL quan hệ ).
- Để khởi tạo dữ liệu cho ứng này thì nó có 1 tool gọi là : pricer utility.
- Hình Demo sau khi setup xong.

Phần 3: Đây là phần về Monitor cái Cassandra, một application do Apache
Cassandra xây dựng
Demo Cassandra Ops Center
Demo Cassandra Ops Center
Demo Cassandra Ops Center

×