column-oriented-storage

Column Oriented Storage – The hidden thing 1

Từ trước tới nay, làm với với Database là nhắc tới row (dòng), cũng có làm việc với column nhưng lưu trữ theo hướng column (Column Oriented Storage) thì chưa nghe bao giờ.

Đây, bắt đầu ngay xem tại sao ta lại cần biết về cái kiểu này.

Một ngày đẹp trời, sếp đưa cho bạn một table với vài tỷ dòng dữ liệu. Nhắc lại là tỷ (trillion) nha. Sếp bảo lấy ra mấy dòng trong tháng 12 năm 2005. Lúc này, bất cứ thao tác nhỏ nào với DB cũng trở thành vấn đề lớn.

Column Oriented Storage
Không thiếu những câu hỏi thao tác, speeding up các table dữ liêu lớn

Rồi đây, cùng xem cái thằng quỷ Column Oriented Storage có gì khác?

1. Column Oriented Storage là gì?

Ý tưởng vô cùng đơn giản

The idea behind column oriented storage is simple: don’t store all the values from one row together, but store all the values from each column together instead

Ý tưởng phía sau column oriented storage vô cùng đơn giản: đừng lưu trữ tất cả dữ liệu trên một dòng, thay vào đó lưu trữ với nhau trên một cột

Nếu data trong mỗi column được lưu trữ trong một file?. Lúc này, khi cần truy xuất, chỉ cần đọc và parse nội dụng file sẽ có data. Tiết kiệm được rất nhiều thời gian và cải thiện rõ rệt về performance.

Column Oriented Storage
Nguồn ảnh / Source: Designing Data-Intensive Applications

Ở table phía trên, thay vì lưu trữ theo hướng row (hàng) ở phía trên, ta sử dụng column. Cột data_key, product_sk, tất cả chuyển qua lưu trữ theo dòng. Đó là bước đầu tiên trong Column Oriented Storage.

Cũng có thể nhớ dựa vào tên, Oriented: hướng về, thiên về. Nên Column Oriented Storage là lưu trữ theo hướng column (cột).

2. Nhanh hơn chỗ nào?

Column Oriented Storage
Column Oriented Storage
Column Oriented Storage

4. Tham khảo

Đã tìm hiểu về Column Oriented thì ngại ngùng gì mà không xúc luôn Database Clustering ha.

Thanks for read. Have a great day!. Happy coding!

Có gì thắc mắc cứ comment đây nha! - Please feel free to comment here!

Kiên Nguyễn

👋 HEY THERE! 👋. My pleasure when you're here to read the article. Please feel free to comment, send a message or just want to say HELLO. Thank you, from bottom of my heart ❤️❤️❤️. Visit my portfolio: https://kieblog.com

Mời tui ly cà phê

Like page để không bỏ lỡ bài viết mới
Facebook Pagelike Widget
Bài viết mới
Lưu trữ