2011-06-28 39 views
8

tôi sẽ được thankfull nếu người dùng phức tạp có thể kể tên tất cả các giải pháp khả thi (thực hành tốt nhất) làm thế nào để sửa chữa Hector Khách hàng Timeouts như thế này:Thời gian chờ của Cassandra/Hector = Phải làm gì?

Caused by: me.prettyprint.hector.api.exceptions.HTimedOutException: TimedOutException() 


Caused by: TimedOutException() 
    at org.apache.cassandra.thrift.Cassandra$multiget_slice_result.read(Cassandra.java:9628) 
    at org.apache.cassandra.thrift.Cassandra$Client.recv_multiget_slice(Cassandra.java:636) 
    at org.apache.cassandra.thrift.Cassandra$Client.multiget_slice(Cassandra.java:608) 
    at me.prettyprint.cassandra.service.KeyspaceServiceImpl$10.execute(KeyspaceServiceImpl.java:388) 
    ... 21 more 

HECTOR:

Taken từ Documentation Hector: https : //github.com/rantav/hector/wiki/User-Guide

tôi thấy như sau liên quan đến timeout:

1.) cassandraThriftSocketT imeout

Cassandra:

1.) rpc_timeout_in_ms: 10000 (trong cassandra.yaml)

gì Cài đặt khác có sẵn liên quan đến timeout cả trên Hector và Cassandra dụng phụ không? Tôi có thời gian! Vì vậy, tôi chỉ muốn chờ lâu hơn! Nhưng tôi đã không tìm thấy các cài đặt để chờ lâu hơn.

Cảm ơn Markus

+0

Để tham khảo trong tương lai, bạn có đang sử dụng Phân vùng được sắp xếp theo thứ tự hoặc ngẫu nhiên không? Vì tôi thấy bạn đang sử dụng multiget_slice, sau đó tôi giả sử không sử dụng chỉ mục phụ quá? – HeyWatchThis

Trả lời

5

Từ API cassandra.thrift trong cây nguồn Apache Cassandra về TimeoutException:.

"timeout RPC được vượt quá hoặc là một nút thất bại giữa hoạt động, hoặc tải quá cao, hoặc op được yêu cầu quá lớn. "

Tóm lại, bạn đã yêu cầu quá nhiều dữ liệu. Bạn đã gửi loại truy vấn nào? Bạn có thể đăng một đoạn mã như vậy không?

+0

hello zznate. Cảm ơn rất nhiều vì câu trả lời của bạn !!! Những gì tôi đang cố gắng làm là truy vấn và gửi các lô 100 Bản ghi/Hàng: Mỗi bản ghi có khoảng 15 Cột và tổng kích thước trong bộ nhớ của mỗi bản ghi là khoảng 1KB. Đây là một dữ liệu thiếu dữ dội. Điều duy nhất là, nó chạy trên Windows Dev Môi trường của tôi và Windows hiện rất nhiều phân trang, vì vậy có vẻ như sau đó, Cassandra chỉ là bận rộn. Nhưng nhìn vào Cassandra "bản ghi" (cửa sổ giao diện điều khiển), Bộ sưu tập rác nằm trong phạm vi của millisecons ... Tôi đã không nhìn thấy bất kỳ thông tin về compactions trong các bản ghi (?) ... Tôi sẽ cố gắng hơn nữa ... – Markus

+1

Giữ một mắt trên IO và sử dụng bộ nhớ kết hợp với 'nodetool cfstats' (đặc biệt chú ý đến "Read Latency" và "Write Latency") và điều đó sẽ cung cấp cho bạn một số thông tin thêm về nơi để tìm cổ chai. Nếu nó có vẻ như phân trang quá mức, hãy thử giảm kích thước heap và ngưỡng memtable là tốt. – zznate

Các vấn đề liên quan