Tôi đang xây dựng một ứng dụng liên tục bổ sung vào bộ đệm trong khi nhiều độc giả sử dụng bộ đệm này một cách độc lập (write-once-read-many/WORM). Lúc đầu, tôi nghĩ đến việc sử dụng Apache Kafka, nhưng khi tôi thích một tùy chọn dịch vụ, tôi bắt đầu điều tra AWS Kinesis Streams + KCL và có vẻ như tôi có thể hoàn thành nhiệm vụ này với họ. Về cơ bản tôi cần 2 tính năng: đặt hàng (các sự kiện phải được đọc theo thứ tự của tất cả người đọc) và khả năng chọn độ lệch trong bộ đệm từ nơi người đọc bắt đầu tiêu thụ trở đi.Tương đương với luồng Kafka/AWS Kinesis trên Google Cloud Platform
Bây giờ tôi cũng đang đánh giá Google Cloud Platform. Khi tôi đọc tài liệu, có vẻ như Google Pub/Sub được đề xuất là tương đương với AWS Kinesis Stream, nhưng ở mức độ chi tiết hơn, các sản phẩm này có vẻ khác nhau rất nhiều:
- Kinesis đảm bảo đặt hàng bên trong phân đoạn, trong khi về đặt hàng Pub/Sub là trên cơ sở tốt nhất;
- Kinesis có tất cả bộ đệm (giới hạn tối đa 7 ngày) có sẵn cho người đọc, có thể sử dụng bù để chọn vị trí bắt đầu đọc, trong khi trên PubSub chỉ các tin nhắn sau khi đăng ký có sẵn để tham gia.
Nếu tôi hiểu đúng, PubSub không thể được coi là tương đương Kinesis. Có lẽ nếu được sử dụng cùng với Google Dataflow? Tôi phải thú nhận rằng tôi vẫn không thể thấy như thế nào.
Vì vậy, PubSub có phải là giải pháp thay thế cho Kinesis không? Nếu không, có một Sản phẩm Google Cloud nào có thể đáp ứng các yêu cầu của tôi không?
Cảm ơn!
Đó cũng là những gì tôi có thể thấy. PubSub + DataFlow (xấp xỉ) không tương đương với Kinesis. Trong khi tôi đã sử dụng Kinesis rộng rãi, tôi không thấy tài liệu hoặc chức năng như vậy xung quanh pubsub và Dataflow. Chúng có thể hơi xa. – Kannaiyan
Bài đăng tại https://cloud.google.com/blog/big-data/2016/09/apache-kafka-for-gcp-users-connectors-for-pubsub-dataflow-and-bigquery vừa giúp tôi một chút bối rối hơn. Nó ngụ ý (tinh tế) rằng PubSub là một thay thế cho Kafka, nhưng tôi vẫn không thấy khả năng tương tự. – Renan
Với Pub/Sub, bạn cần thêm thông tin đặt hàng vào tải trọng của tin nhắn. Điều này có thể hoặc không có thể là một vấn đề với ứng dụng của bạn. – gdahlm