Câu chuyện khái niệm: Throughput, latency và IOPS
TIL
500
disk
1
storage
1
Male avatar

manhdung viết ngày 03/08/2016

Đây là ba tham số quan trọng trong các hệ thống storage. Để dễ hiểu ba khái niệm này có thể map với hoạt động ship hàng từ điểm A đến B.

số lượng chuyến đi thưc hiện trong một khoảng thời gian là IOPS
số hàng chuyển được trong một khoảng thời gian chính là throughput
latency là độ trễ trung bình trong tất cả các chuyến đi trong một khoảng thời gian đã thực hiện

Khoảng thời gian này giả sử là một ngày đi.

Ba tham số này, đặc biệt là hai tham số IOPS và latency phản ánh chất lượng phục vụ nhưng ko phải lúc nào cũng song hành với nhau kiểu một chỉ số tốt thì các chỉ số còn lại cũng tốt theo:

Có thể một ngày có nhiều chuyến hàng nhưng có những chuyến hàng chuyển nhanh, có chuyến hàng chuyển chậm, IOPS cao nhưng latency trung bình cũng lại cao.

Có thể một ngày có ít chuyến hàng nhưng mỗi chuyến lại chở full tải thì throughput lại cao dù IOPS thấp vì Throughput = IOPS * IO Average size (IO average size cao thì throughput cao)

Có thể latency trung bình thấp nhưng số hàng chuyển cũng không vì thế mà cao được do ít đơn hàng (application ít request vào storage)

Nhưng không phải vì thế mà các tham số này không có ảnh hưởng lên nhau:
khi IOPS quá cao, chạm đến giới hạn vật lý của hệ thống thì sẽ gây high latency
high latency không xử lý ngay sẽ làm giảm throughput vì data không thực sự được chuyển đến đúng nơi cần đến mà bị nghẽn lại ( busy cũng cao theo )

Có thể xem ba tham số này qua công cụ atop:
alt text

chỗ dòng DSK sda, busy 1%, read 0, write 339 do đó IOPS = 339, MBread/s = 0, MBWrite/s = 0.27, throughput write là 0.27MB/s, còn avio là latency trung bình là 0.40ms.

Mình đang tìm hiểu về storage. Việc hiểu khái niệm có gì không chính xác các bạn comment sửa giúp nhé.

manhdung 03-08-2016

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

Male avatar

manhdung

44 bài viết.
240 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
Male avatar
67 11
Giới thiệu RabbitMQ là một message broker ( messageoriented middleware) sử dụng giao thức AMQP Advanced Message Queue Protocol (Đây là giao thức ph...
manhdung viết hơn 2 năm trước
67 11
Male avatar
45 4
Giả định bạn tiếp nhận một server mới toanh, bạn cần tìm một số thông tin về nó như loại CPU, loại main, loại memory, memory dùng của hãng nào... c...
manhdung viết hơn 1 năm trước
45 4
Male avatar
38 7
Giới thiệu MongoDB là một giải pháp nosql database. Data được lưu ở dạng các bson document. Hỗ trợ vertical scaling và horizontal scaling, dynamic...
manhdung viết hơn 2 năm trước
38 7
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


Male avatar
{{userFollowed ? 'Following' : 'Follow'}}
44 bài viết.
240 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!