intel-analytics / analytics-zoo

Distributed Tensorflow, Keras and PyTorch on Apache Spark/Flink & Ray
https://analytics-zoo.readthedocs.io/
Apache License 2.0
18 stars 4 forks source link

How to using cluster serving cli to push image data for Kafka? #26

Open GitEasonXu opened 3 years ago

GitEasonXu commented 3 years ago

Analytics Zoo Version: 0.11.0

I have successfully tested Kafka according to the kafka_guide. But now how do I use the zoo.serving.client to push image data for Kafka, zoo.serving.client.InputQueue superclass API don't implement KafkaProducer.

class API:
    """
    base level of API control
    select data pipeline here, Redis/Kafka/...
    interface preserved for API class
    """
    def __init__(self, host=None, port=None, name="serving_stream"):
        self.name = name
        self.host = host if host else "localhost"
        self.port = port if port else "6379"

        self.db = redis.StrictRedis(host=self.host,
                                    port=self.port, db=0)
        try:
            self.db.xgroup_create(name, "serving")
        except Exception:
            print("redis group exist, will not create new one")
Litchilitchy commented 3 years ago

For current Analytics Zoo usage, you could refer to https://github.com/intel-analytics/analytics-zoo/pull/4155, the functions are in this branch.

And the functions of this PR would be merged to BigDL https://github.com/intel-analytics/BigDL

GitEasonXu commented 3 years ago

There are two new files(FlinkKafkaSink.scala FlinkKafkaSource.scala) in https://github.com/intel-analytics/analytics-zoo/pull/4155#issue-929789442. Next, do I need to recompile the source code to replace the original zoo.jar.

Litchilitchy commented 3 years ago

There are two new files(FlinkKafkaSink.scala FlinkKafkaSource.scala) in #4155 (comment). Next, do I need to recompile the source code to replace the original zoo.jar.

Yes, you need to build a jar with these 2 files.

The function is about to merge to BigDL 2.0 in PR https://github.com/intel-analytics/BigDL/pull/3277, you could try it in BigDL, the new dev of code would be at BigDL project