Re: AVRO Schema with optional field ("type": "record")
How can I do the same thing in the .avro format? On Friday, October 19, 2018, Jacob Sheck wrote: > Can you use a union with null? This would be the IDL exmple. > > record RecordConfig { > ... > } > > union {null, RecordConfig} record = null; > > On Fri, Oct 19, 2018 at 2:44 PM Mina Aslani wrote: > > > Hi, > > > > I am adding AVRO schema to the kafka messages, however, I would like to > > know how I can make a field of "type": "record" optional. > > *Note*: "default":null does not help. > > > > Any idea? Can you elaborate the solution/workaround with an example > please? > > > > Best regards, > > Mina > > >
AVRO Schema with optional field ("type": "record")
Hi, I am adding AVRO schema to the kafka messages, however, I would like to know how I can make a field of "type": "record" optional. *Note*: "default":null does not help. Any idea? Can you elaborate the solution/workaround with an example please? Best regards, Mina
Re: org.apache.kafka.clients.consumer.OffsetOutOfRangeException
Hi Matthias, Are you referring to https://issues.apache.org/jira/browse/SPARK-19976? Look like that the jira was not fixed. (e.g. Resolution: "Not a Problem"). So, is there any suggested workaround? Regards, Mina On Mon, Feb 12, 2018 at 3:03 PM, Matthias J. Sax <matth...@confluent.io> wrote: > AFAIK, Spark does not pass this config to the consumer on purpose... > It's not a Kafka issues -- IIRC, there is Spark JIRA ticket for this. > > -Matthias > > On 2/12/18 11:04 AM, Mina Aslani wrote: > > Hi, > > > > I am getting below error > > Caused by: org.apache.kafka.clients.consumer.OffsetOutOfRangeException: > > Offsets out of range with no configured reset policy for partitions: > > {topic1-0=304337} > > as soon as I submit a spark app to my cluster. > > > > I am using below dependency > > name: 'spark-streaming-kafka-0-10_2.11', version: '2.2.0' And setting > the > > consumer's reset config(e.g. AUTO_OFFSET_RESET_CONFIG) to "earliest". > > As per https://kafka.apache.org/0110/documentation.html the exception > > should be thrown only when the consumer's reset config has not been set > > (e.g. default=none). > > Wondering what is the cause and how to fix. > > > > Best regards, > > Mina > > > >
Re: org.apache.kafka.clients.consumer.OffsetOutOfRangeException
Hi Matthias, Are you referring to https://issues.apache.org/jira/browse/SPARK-19976? Doesn't look like that the jira was not fixed. (e.g. Resolution: "Not a Problem"). So, is there any suggested workaround? Regards, Mina On Mon, Feb 12, 2018 at 3:03 PM, Matthias J. Sax <matth...@confluent.io> wrote: > AFAIK, Spark does not pass this config to the consumer on purpose... > It's not a Kafka issues -- IIRC, there is Spark JIRA ticket for this. > > -Matthias > > On 2/12/18 11:04 AM, Mina Aslani wrote: > > Hi, > > > > I am getting below error > > Caused by: org.apache.kafka.clients.consumer.OffsetOutOfRangeException: > > Offsets out of range with no configured reset policy for partitions: > > {topic1-0=304337} > > as soon as I submit a spark app to my cluster. > > > > I am using below dependency > > name: 'spark-streaming-kafka-0-10_2.11', version: '2.2.0' And setting > the > > consumer's reset config(e.g. AUTO_OFFSET_RESET_CONFIG) to "earliest". > > As per https://kafka.apache.org/0110/documentation.html the exception > > should be thrown only when the consumer's reset config has not been set > > (e.g. default=none). > > Wondering what is the cause and how to fix. > > > > Best regards, > > Mina > > > >
org.apache.kafka.clients.consumer.OffsetOutOfRangeException
Hi, I am getting below error Caused by: org.apache.kafka.clients.consumer.OffsetOutOfRangeException: Offsets out of range with no configured reset policy for partitions: {topic1-0=304337} as soon as I submit a spark app to my cluster. I am using below dependency name: 'spark-streaming-kafka-0-10_2.11', version: '2.2.0' And setting the consumer's reset config(e.g. AUTO_OFFSET_RESET_CONFIG) to "earliest". As per https://kafka.apache.org/0110/documentation.html the exception should be thrown only when the consumer's reset config has not been set (e.g. default=none). Wondering what is the cause and how to fix. Best regards, Mina
Re: Data in kafka topic in Json format
Hi Hans, Thank you for your quick response, appreciate it. In *kafka-connect* docker, I see below settings in *kafka-connect.properties* file in *kafka-connect *directory: key.converter.schemas.enable=false key.converter.schema.registry.url=http://kafka-schema-registry: value.converter.schema.registry.url=http://kafka-schema-registry: key.converter=org.apache.kafka.connect.json.JsonConverter value.converter=org.apache.kafka.connect.json.JsonConverter internal.value.converter.schemas.enable=false rest.advertised.host.name=kafka-connect internal.value.converter=org.apache.kafka.connect.json.JsonConverter internal.key.converter=org.apache.kafka.connect.json.JsonConverter And the settings in *schema-registry *directory of *kafka-connect *docker are as https://github.com/confluentinc/schema-registry/tree/master/config Should I consider any other settings for *kafka-connect* or *schema-registry* to get the real json object NOT string formatted/stringified json which has extra "\" and is not json any more? Best regards, Mina On Fri, Jun 2, 2017 at 11:18 AM, Hans Jespersen <h...@confluent.io> wrote: > > My earlier comment still applies but in Kafka Connect the equivalent of a > serializer/deserializer (serdes) is called a “converter”. > Check which converter you have configured for your source connector and if > it is overriding whatever the default converter is configured for the > connect worker it is running in. > > -hans > > > > > > On Jun 2, 2017, at 8:12 AM, Mina Aslani <aslanim...@gmail.com> wrote: > > > > Hi, > > > > I would like to add that I use kafka-connect and schema-registery > version ` > > 3.2.1-6`. > > > > Best regards, > > Mina > > > > On Fri, Jun 2, 2017 at 10:59 AM, Mina Aslani <aslanim...@gmail.com> > wrote: > > > >> Hi. > >> > >> Is there any way that I get the data into a Kafka topic in Json format? > >> The source that I ingest the data from have the data in Json format, > >> however when I look that data in the kafka topic, schema and payload > fields > >> are added and data is not in json format. > >> > >> I want to avoid implementing a transformer to get the data from the > topic > >> and publishes Json in another one. > >> > >> Your input is appreciated. > >> > >> Best regards, > >> Mina > >> > >
Re: Data in kafka topic in Json format
Hi, I would like to add that I use kafka-connect and schema-registery version ` 3.2.1-6`. Best regards, Mina On Fri, Jun 2, 2017 at 10:59 AM, Mina Aslani <aslanim...@gmail.com> wrote: > Hi. > > Is there any way that I get the data into a Kafka topic in Json format? > The source that I ingest the data from have the data in Json format, > however when I look that data in the kafka topic, schema and payload fields > are added and data is not in json format. > > I want to avoid implementing a transformer to get the data from the topic > and publishes Json in another one. > > Your input is appreciated. > > Best regards, > Mina >
Data in kafka topic in Json format
Hi. Is there any way that I get the data into a Kafka topic in Json format? The source that I ingest the data from have the data in Json format, however when I look that data in the kafka topic, schema and payload fields are added and data is not in json format. I want to avoid implementing a transformer to get the data from the topic and publishes Json in another one. Your input is appreciated. Best regards, Mina
Deployment of Kafka Stream app
I understand that for dev env creating containers might not be needed, and as you said "start up an application and go"! However, I would like to know to have HA in my env and make it scalable; what is the proper setup I need to have. - Would every Kafka streaming job/app require a new docker image and deployment of the container/service? (e.g. 10 containers for 10 instances of the same app) - How should I structure things differently if I had more than one (e.g. different) Kafka streaming apps/jobs? - What are the advantages of using Kafka streaming over Spark streaming? I'm asking b/c with Spark streaming I don't need to create and deploy a new docker image every time I added a new app or changed the same app. Best regards, Mina On Thu, Apr 27, 2017 at 12:03 PM, David Garcia <dav...@spiceworks.com> wrote: > Unlike spark, you don’t need an entire framework to deploy your job. With > Kstreams, you just start up an application and go. You don’t need docker > either…although containerizing your stuff is probably a good strategy for > the purposes of deployment management (something you get with Yarn or a > spark Cluster)…but you’re not tied to any one framework (e.g. you can use > kubernetes, mesos, Yarn, or anything else) > > On 4/27/17, 10:52 AM, "Mina Aslani" <aslanim...@gmail.com> wrote: > > Hi, > > I created a kafka stream app and as I was informed I created a docker > image > with the app and launched it as a container. However, I have couple of > questions: > > - Would every Kafka streaming job require a new docker image and > deployment > of the container/service? > - How should I structure things differently if I had more than one > Kafka > streaming app/job? > - What are the advantages of using Kafka streaming over Spark > streaming? > I'm asking b/c with Spark streaming I don't need to create and deploy > a new > docker image every time I added or changed an/a app/job. > > Best regards, > Mina > > >
Kafka Stream vs Spark
Hi, I created a kafka stream app and as I was informed I created a docker image with the app and launched it as a container. However, I have couple of questions: - Would every Kafka streaming job require a new docker image and deployment of the container/service? - How should I structure things differently if I had more than one Kafka streaming app/job? - What are the advantages of using Kafka streaming over Spark streaming? I'm asking b/c with Spark streaming I don't need to create and deploy a new docker image every time I added or changed an/a app/job. Best regards, Mina
Re: Using Kafka Stream in the cluster of kafka on one or multiple docker-machine/s
Thank you Michael for the prompt response, really appreciate it! Best regards, Mina On Thu, Mar 30, 2017 at 4:50 AM, Michael Noll <mich...@confluent.io> wrote: > If you want to deploy a Kafka Streams application, then essentially you > only need the (fat) jar of your application and a JRE in your container. > In other words, it's the same setup you'd use to deploy *any* kind of Java > application. > > You do not need to containerize "Kafka", which I assume you meant as > containerizing "a Kafka cluster or broker". > > > And after I have the container running, in my container should I run Java > -cp ... same as > > https://github.com/confluentinc/examples/blob/3. > 2.x/kafka-streams/src/main/java/io/confluent/examples/streams/ > WordCountLambdaExample.java#L55-L62? > > Yes. > > > -Michael > > > > On Thu, Mar 30, 2017 at 4:23 AM, Mina Aslani <aslanim...@gmail.com> wrote: > > > Hi, > > > > Do we have an example of a container with an instance of the jar file by > > any chance? I am wondering if I should have a container of headless java > or > > should I have a container of Kafka? > > > > And after I have the container running, in my container should I run Java > > -cp ... same as https://github.com/confluentinc/examples/blob/3. > > 2.x/kafka-streams/src/main/java/io/confluent/examples/streams/ > > WordCountLambdaExample.java#L55-L62? > > > > Regards, > > Mina > > > > On Tue, Mar 21, 2017 at 4:49 PM, Mina Aslani <aslanim...@gmail.com> > wrote: > > > > > Hi Michael, > > > > > > Thank you very much for the prompt response, really appreciate it! > > > > > > From https://github.com/confluentinc/examples/blob/3.2.x/ > > > kafka-streams/src/main/java/io/confluent/examples/streams/ > > > WordCountLambdaExample.java#L55-L62 and > > > https://github.com/confluentinc/examples/tree/3.2.x/kafka- > > > streams#packaging-and-running I missed the fact that the jar should be > > > run in a separate container. > > > > > > Best regards, > > > Mina > > > > > > On Tue, Mar 21, 2017 at 4:34 PM, Michael Noll <mich...@confluent.io> > > > wrote: > > > > > >> Typically you'd containerize your app and then launch e.g. 10 > containers > > >> if > > >> you need to run 10 instances of your app. > > >> > > >> Also, what do you mean by "in a cluster of Kafka containers" and "in > the > > >> cluster of Kafkas"? > > >> > > >> On Tue, Mar 21, 2017 at 9:08 PM, Mina Aslani <aslanim...@gmail.com> > > >> wrote: > > >> > > >> > Hi, > > >> > > > >> > I am trying to understand how I can use a kafka stream app(jar file) > > in > > >> a > > >> > cluster of kafka containers. > > >> > > > >> > Kafka does not have master/slave concept (unlike spark), how I > should > > >> run > > >> > my app in the cluster of kafkas (e.g. on one or multiple > > >> docker-machine/s)? > > >> > > > >> > I use below command line when having one VM/node with one kafka > > >> container > > >> > https://github.com/confluentinc/examples/blob/3. > > >> > 2.x/kafka-streams/src/main/ > > >> > java/io/confluent/examples/streams/WordCountLambdaExample.java# > > L55-L62 > > >> > > > >> > Best regards, > > >> > Mina > > >> > > > >> > > > > > > > > >
Re: Using Kafka Stream in the cluster of kafka on one or multiple docker-machine/s
Hi, Do we have an example of a container with an instance of the jar file by any chance? I am wondering if I should have a container of headless java or should I have a container of Kafka? And after I have the container running, in my container should I run Java -cp ... same as https://github.com/confluentinc/examples/blob/3. 2.x/kafka-streams/src/main/java/io/confluent/examples/streams/ WordCountLambdaExample.java#L55-L62? Regards, Mina On Tue, Mar 21, 2017 at 4:49 PM, Mina Aslani <aslanim...@gmail.com> wrote: > Hi Michael, > > Thank you very much for the prompt response, really appreciate it! > > From https://github.com/confluentinc/examples/blob/3.2.x/ > kafka-streams/src/main/java/io/confluent/examples/streams/ > WordCountLambdaExample.java#L55-L62 and > https://github.com/confluentinc/examples/tree/3.2.x/kafka- > streams#packaging-and-running I missed the fact that the jar should be > run in a separate container. > > Best regards, > Mina > > On Tue, Mar 21, 2017 at 4:34 PM, Michael Noll <mich...@confluent.io> > wrote: > >> Typically you'd containerize your app and then launch e.g. 10 containers >> if >> you need to run 10 instances of your app. >> >> Also, what do you mean by "in a cluster of Kafka containers" and "in the >> cluster of Kafkas"? >> >> On Tue, Mar 21, 2017 at 9:08 PM, Mina Aslani <aslanim...@gmail.com> >> wrote: >> >> > Hi, >> > >> > I am trying to understand how I can use a kafka stream app(jar file) in >> a >> > cluster of kafka containers. >> > >> > Kafka does not have master/slave concept (unlike spark), how I should >> run >> > my app in the cluster of kafkas (e.g. on one or multiple >> docker-machine/s)? >> > >> > I use below command line when having one VM/node with one kafka >> container >> > https://github.com/confluentinc/examples/blob/3. >> > 2.x/kafka-streams/src/main/ >> > java/io/confluent/examples/streams/WordCountLambdaExample.java#L55-L62 >> > >> > Best regards, >> > Mina >> > >> > >
Re: Using Kafka Stream in the cluster of kafka on one or multiple docker-machine/s
Hi Michael, Thank you very much for the prompt response, really appreciate it! >From https://github.com/confluentinc/examples/blob/3.2.x/kafka- streams/src/main/java/io/confluent/examples/streams/Wor dCountLambdaExample.java#L55-L62 and https://github.com/confluentinc/examples/tree/3.2.x/kafka-streams#packaging-and-running I missed the fact that the jar should be run in a separate container. Best regards, Mina On Tue, Mar 21, 2017 at 4:34 PM, Michael Noll <mich...@confluent.io> wrote: > Typically you'd containerize your app and then launch e.g. 10 containers if > you need to run 10 instances of your app. > > Also, what do you mean by "in a cluster of Kafka containers" and "in the > cluster of Kafkas"? > > On Tue, Mar 21, 2017 at 9:08 PM, Mina Aslani <aslanim...@gmail.com> wrote: > > > Hi, > > > > I am trying to understand how I can use a kafka stream app(jar file) in a > > cluster of kafka containers. > > > > Kafka does not have master/slave concept (unlike spark), how I should run > > my app in the cluster of kafkas (e.g. on one or multiple > docker-machine/s)? > > > > I use below command line when having one VM/node with one kafka container > > https://github.com/confluentinc/examples/blob/3. > > 2.x/kafka-streams/src/main/ > > java/io/confluent/examples/streams/WordCountLambdaExample.java#L55-L62 > > > > Best regards, > > Mina > > >
Using Kafka Stream in the cluster of kafka on one or multiple docker-machine/s
Hi, I am trying to understand how I can use a kafka stream app(jar file) in a cluster of kafka containers. Kafka does not have master/slave concept (unlike spark), how I should run my app in the cluster of kafkas (e.g. on one or multiple docker-machine/s)? I use below command line when having one VM/node with one kafka container https://github.com/confluentinc/examples/blob/3.2.x/kafka-streams/src/main/ java/io/confluent/examples/streams/WordCountLambdaExample.java#L55-L62 Best regards, Mina
org.apache.kafka.common.errors.TimeoutException
Hi, I get ERROR Error when sending message to topic my-topic with key: null, value: ... bytes with error: (org.apache.kafka.clients.producer.internals. ErrorLoggingCallback) org.apache.kafka.common.errors.TimeoutException: Expiring 11 record(s) for my-topic-0: 1732 ms has passed since last append Any idea? Best regards, Mina
Re: Trying to use Kafka Stream
Hi Eno, Great finding! You were right! I had to change KAFKA_ADVERTISED_LISTENERS to be PLAINTEXT://$(docker-machine ip ): to make it work from IDE. Step 2 (pointing to : in my stream app) was already done. Later, I'll try using CLI as mentioned here https://github.com/ confluentinc/examples/blob/3.2.x/kafka-streams/src/main/ java/io/confluent/examples/streams/WordCountLambdaExample.java#L55-L62 and pointed out by Michael. Thank you very much for your time and your prompt responses, really appreciate it! Have a wonderful day. Best regards, Mina On Wed, Mar 15, 2017 at 4:38 AM, Eno Thereska <eno.there...@gmail.com> wrote: > Hi Mina, > > It might be that you need to set this property on the Kafka broker config > file (server.properties): > advertised.listeners=PLAINTEXT://your.host.name:9092 <plaintext:// > your.host.name:9092> > > > The problem might be this: within docker you run Kafka and Kafka’s address > is localhost:9092. Great. Then say you have another container or are > running the streams app on your local laptop. If you point streams to > localhost:9092 that is “not” where Kafka is running. So you need to point > your streams app at the address of the container. That’s the second step. > The first step is to have Kafka advertise that address to the streams app > and that you do by setting the address above. Example: > > advertised.listeners=PLAINTEXT://123.45.67:9092 > > > Then when you run the streams app you pass in 123.45.67:9092 > . > > Thanks > Eno > > > On Mar 15, 2017, at 5:14 AM, Mina Aslani <aslanim...@gmail.com> wrote: > > > > Hi, > > I just checked streams-wordcount-output topic using below command > > > > docker run \ > > > > --net=host \ > > > > --rm \ > > > > confluentinc/cp-kafka:3.2.0 \ > > > > kafka-console-consumer --bootstrap-server localhost:9092 \ > > > > --topic streams-wordcount-output \ > > > > --from-beginning \ > > > > --formatter kafka.tools.DefaultMessageFormatter \ > > > > --property print.key=true \ > > > > --property key.deserializer=org.apache.ka > > fka.common.serialization.StringDeserializer \ > > > > --property value.deserializer=org.apache. > > kafka.common.serialization.LongDeserializer > > > > > > and it returns > > > > all 1 > > lead 1 > > to 1 > > hello 1 > > streams 2 > > join 1 > > kafka 3 > > summit 1 > > > > Please note above result is when I tried http://docs.confluent.i > > o/3.2.0/streams/quickstart.html#goal-of-this-quickstart and in > > docker-machine ran /usr/bin/kafka-run-class > org.apache.kafka.streams.examp > > les.wordcount.WordCountDemo. > > > > How come running same program out of docker-machine does not output to > the > > output topic? > > Should I make the program as jar and deploy to docker-machine and run it > > using ./bin/kafka-run-class? > > > > Best regards, > > Mina > > > > > > > > On Tue, Mar 14, 2017 at 11:11 PM, Mina Aslani <aslanim...@gmail.com> > wrote: > > > >> I even tried http://docs.confluent.io/3.2.0/streams/quickstart.html# > goal- > >> of-this-quickstart > >> > >> and in docker-machine ran /usr/bin/kafka-run-class > >> org.apache.kafka.streams.examples.wordcount.WordCountDemo > >> > >> Running > >> > >> docker run --net=host --rm confluentinc/cp-kafka:3.2.0 > >> kafka-console-consumer --bootstrap-server localhost:9092 --topic > >> streams-wordcount-output --new-consumer --from-beginning > >> > >> shows 8 blank messages > >> > >> Is there any setting/configuration should be done as running the class > in > >> the docker-machine and running program outside the docker-machine does > not > >> return expected result! > >> > >> On Tue, Mar 14, 2017 at 9:56 PM, Mina Aslani <aslanim...@gmail.com> > wrote: > >> > >>> And the port for kafka is 29092 and for zookeeper 32181. > >>> > >>> On Tue, Mar 14, 2017 at 9:06 PM, Mina Aslani <aslanim...@gmail.com> > >>> wrote: > >>> > >>>> Hi, > >>>> > >>>> I forgot to add in my previous email 2 questions. > >>>> > >>>> To setup my env, shall I use https://raw.githubusercont > >>>> ent.com/confluentinc/cp-docker-images/master/examples/kafka- > >>>> single-node/docker-compose.yml instead or is there any other &g
Re: Trying to use Kafka Stream
Hi Michael, I was aware that the output should be written in a kafka topic not the console. To understand if streams can reach the kafka as Eno asked in earlier email I found http://docs.confluent.io/3.2.0/streams/quickstart.html #goal-of-this-quickstart and went through the steps mentioned and ran /usr/bin/kafka-run-class org.apache.kafka.streams.examples.wordcount.WordCountDemo which works. However, running the program (e.g. https://github.com/ confluentinc/examples/blob/3.2.x/kafka-streams/src/main/ java/io/confluent/examples/streams/WordCountLambdaExample.java#L178-L181) in my IDE was not and still is not working. Best regards, Mina On Wed, Mar 15, 2017 at 4:43 AM, Michael Noll <mich...@confluent.io> wrote: > Mina, > > in your original question you wrote: > > > However, I do not see the word count when I try to run below example. > Looks like that it does not connect to Kafka. > > The WordCount demo example writes its output to Kafka only -- it *does > not* write any results to the console/STDOUT. > > From what I can tell the WordCount example ran correctly because, in your > latest email, you showed the output of the console consumer (which *does* > write to the console), and that output is a list of words and counts: > > > all 1 > > lead 1 > > to 1 > > hello 1 > > streams 2 > > join 1 > > kafka 3 > > summit 1 > > In other words, I think everything you did was correct, and Kafka too was > working correctly. You were simply unaware that the WordCount example does > not write its output to the console. > > Best, > Michael > > > > > > On Wed, Mar 15, 2017 at 6:14 AM, Mina Aslani <aslanim...@gmail.com> wrote: > > > Hi, > > I just checked streams-wordcount-output topic using below command > > > > docker run \ > > > > --net=host \ > > > > --rm \ > > > > confluentinc/cp-kafka:3.2.0 \ > > > > kafka-console-consumer --bootstrap-server localhost:9092 \ > > > > --topic streams-wordcount-output \ > > > > --from-beginning \ > > > > --formatter kafka.tools.DefaultMessageFormatter \ > > > > --property print.key=true \ > > > > --property key.deserializer=org.apache.ka > > fka.common.serialization.StringDeserializer \ > > > > --property value.deserializer=org.apache. > > kafka.common.serialization.LongDeserializer > > > > > > and it returns > > > > all 1 > > lead 1 > > to 1 > > hello 1 > > streams 2 > > join 1 > > kafka 3 > > summit 1 > > > > Please note above result is when I tried http://docs.confluent.i > > o/3.2.0/streams/quickstart.html#goal-of-this-quickstart and in > > docker-machine ran /usr/bin/kafka-run-class > org.apache.kafka.streams.examp > > les.wordcount.WordCountDemo. > > > > How come running same program out of docker-machine does not output to > the > > output topic? > > Should I make the program as jar and deploy to docker-machine and run it > > using ./bin/kafka-run-class? > > > > Best regards, > > Mina > > > > > > > > On Tue, Mar 14, 2017 at 11:11 PM, Mina Aslani <aslanim...@gmail.com> > > wrote: > > > > > I even tried http://docs.confluent.io/3.2.0/streams/quickstart.html# > > goal- > > > of-this-quickstart > > > > > > and in docker-machine ran /usr/bin/kafka-run-class > > > org.apache.kafka.streams.examples.wordcount.WordCountDemo > > > > > > Running > > > > > > docker run --net=host --rm confluentinc/cp-kafka:3.2.0 > > > kafka-console-consumer --bootstrap-server localhost:9092 --topic > > > streams-wordcount-output --new-consumer --from-beginning > > > > > > shows 8 blank messages > > > > > > Is there any setting/configuration should be done as running the class > in > > > the docker-machine and running program outside the docker-machine does > > not > > > return expected result! > > > > > > On Tue, Mar 14, 2017 at 9:56 PM, Mina Aslani <aslanim...@gmail.com> > > wrote: > > > > > >> And the port for kafka is 29092 and for zookeeper 32181. > > >> > > >> On Tue, Mar 14, 2017 at 9:06 PM, Mina Aslani <aslanim...@gmail.com> > > >> wrote: > > >> > > >>> Hi, > > >>> > > >>> I forgot to add in my previous email 2 questions. > > >>> > > >>> To setup my env, shall I use https://raw.githubuserc
Re: Trying to use Kafka Stream
Hi, I just checked streams-wordcount-output topic using below command docker run \ --net=host \ --rm \ confluentinc/cp-kafka:3.2.0 \ kafka-console-consumer --bootstrap-server localhost:9092 \ --topic streams-wordcount-output \ --from-beginning \ --formatter kafka.tools.DefaultMessageFormatter \ --property print.key=true \ --property key.deserializer=org.apache.ka fka.common.serialization.StringDeserializer \ --property value.deserializer=org.apache. kafka.common.serialization.LongDeserializer and it returns all 1 lead 1 to 1 hello 1 streams 2 join 1 kafka 3 summit 1 Please note above result is when I tried http://docs.confluent.i o/3.2.0/streams/quickstart.html#goal-of-this-quickstart and in docker-machine ran /usr/bin/kafka-run-class org.apache.kafka.streams.examp les.wordcount.WordCountDemo. How come running same program out of docker-machine does not output to the output topic? Should I make the program as jar and deploy to docker-machine and run it using ./bin/kafka-run-class? Best regards, Mina On Tue, Mar 14, 2017 at 11:11 PM, Mina Aslani <aslanim...@gmail.com> wrote: > I even tried http://docs.confluent.io/3.2.0/streams/quickstart.html#goal- > of-this-quickstart > > and in docker-machine ran /usr/bin/kafka-run-class > org.apache.kafka.streams.examples.wordcount.WordCountDemo > > Running > > docker run --net=host --rm confluentinc/cp-kafka:3.2.0 > kafka-console-consumer --bootstrap-server localhost:9092 --topic > streams-wordcount-output --new-consumer --from-beginning > > shows 8 blank messages > > Is there any setting/configuration should be done as running the class in > the docker-machine and running program outside the docker-machine does not > return expected result! > > On Tue, Mar 14, 2017 at 9:56 PM, Mina Aslani <aslanim...@gmail.com> wrote: > >> And the port for kafka is 29092 and for zookeeper 32181. >> >> On Tue, Mar 14, 2017 at 9:06 PM, Mina Aslani <aslanim...@gmail.com> >> wrote: >> >>> Hi, >>> >>> I forgot to add in my previous email 2 questions. >>> >>> To setup my env, shall I use https://raw.githubusercont >>> ent.com/confluentinc/cp-docker-images/master/examples/kafka- >>> single-node/docker-compose.yml instead or is there any other >>> docker-compose.yml (version 2 or 3) which is suggested to setup env? >>> >>> How can I check "whether streams (that is just an app) can reach Kafka"? >>> >>> Regards, >>> Mina >>> >>> On Tue, Mar 14, 2017 at 9:00 PM, Mina Aslani <aslanim...@gmail.com> >>> wrote: >>> >>>> Hi Eno, >>>> >>>> Sorry! That is a typo! >>>> >>>> I have a docker-machine with different containers (setup as directed @ >>>> http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html) >>>> >>>> docker ps --format "{{.Image}}: {{.Names}}" >>>> >>>> confluentinc/cp-kafka-connect:3.2.0: kafka-connect >>>> >>>> confluentinc/cp-enterprise-control-center:3.2.0: control-center >>>> >>>> confluentinc/cp-kafka-rest:3.2.0: kafka-rest >>>> >>>> confluentinc/cp-schema-registry:3.2.0: schema-registry >>>> >>>> confluentinc/cp-kafka:3.2.0: kafka >>>> >>>> confluentinc/cp-zookeeper:3.2.0: zookeeper >>>> >>>> I used example @ https://github.com/confluent >>>> inc/examples/blob/3.2.x/kafka-streams/src/main/java/io/confl >>>> uent/examples/streams/WordCountLambdaExample.java#L178-L181 and >>>> followed the same steps. >>>> >>>> When I run below command in docker-machine, I see the messages in >>>> TextLinesTopic. >>>> >>>> docker run --net=host --rm confluentinc/cp-kafka:3.2.0 >>>> kafka-console-consumer >>>> --bootstrap-server localhost:29092 --topic TextLinesTopic --new-consumer >>>> --from-beginning >>>> >>>> hello kafka streams >>>> >>>> all streams lead to kafka >>>> >>>> join kafka summit >>>> >>>> test1 >>>> >>>> test2 >>>> >>>> test3 >>>> >>>> test4 >>>> >>>> Running above command for WordsWithCountsTopic returns nothing*.* >>>> >>>> My program runs out of docker machine, and it does not return any >>>> error. >>>> >>>> I checked kafka logs and kafka-connect logs,
Re: Trying to use Kafka Stream
I even tried http://docs.confluent.io/3.2.0/streams/quickstart.html#goal-of-this-quickstart and in docker-machine ran /usr/bin/kafka-run-class org.apache.kafka.streams.examples.wordcount.WordCountDemo Running docker run --net=host --rm confluentinc/cp-kafka:3.2.0 kafka-console-consumer --bootstrap-server localhost:9092 --topic streams-wordcount-output --new-consumer --from-beginning shows 8 blank messages Is there any setting/configuration should be done as running the class in the docker-machine and running program outside the docker-machine does not return expected result! On Tue, Mar 14, 2017 at 9:56 PM, Mina Aslani <aslanim...@gmail.com> wrote: > And the port for kafka is 29092 and for zookeeper 32181. > > On Tue, Mar 14, 2017 at 9:06 PM, Mina Aslani <aslanim...@gmail.com> wrote: > >> Hi, >> >> I forgot to add in my previous email 2 questions. >> >> To setup my env, shall I use https://raw.githubusercont >> ent.com/confluentinc/cp-docker-images/master/examples/ >> kafka-single-node/docker-compose.yml instead or is there any other >> docker-compose.yml (version 2 or 3) which is suggested to setup env? >> >> How can I check "whether streams (that is just an app) can reach Kafka"? >> >> Regards, >> Mina >> >> On Tue, Mar 14, 2017 at 9:00 PM, Mina Aslani <aslanim...@gmail.com> >> wrote: >> >>> Hi Eno, >>> >>> Sorry! That is a typo! >>> >>> I have a docker-machine with different containers (setup as directed @ >>> http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html) >>> >>> docker ps --format "{{.Image}}: {{.Names}}" >>> >>> confluentinc/cp-kafka-connect:3.2.0: kafka-connect >>> >>> confluentinc/cp-enterprise-control-center:3.2.0: control-center >>> >>> confluentinc/cp-kafka-rest:3.2.0: kafka-rest >>> >>> confluentinc/cp-schema-registry:3.2.0: schema-registry >>> >>> confluentinc/cp-kafka:3.2.0: kafka >>> >>> confluentinc/cp-zookeeper:3.2.0: zookeeper >>> >>> I used example @ https://github.com/confluent >>> inc/examples/blob/3.2.x/kafka-streams/src/main/java/io/confl >>> uent/examples/streams/WordCountLambdaExample.java#L178-L181 and >>> followed the same steps. >>> >>> When I run below command in docker-machine, I see the messages in >>> TextLinesTopic. >>> >>> docker run --net=host --rm confluentinc/cp-kafka:3.2.0 >>> kafka-console-consumer >>> --bootstrap-server localhost:29092 --topic TextLinesTopic --new-consumer >>> --from-beginning >>> >>> hello kafka streams >>> >>> all streams lead to kafka >>> >>> join kafka summit >>> >>> test1 >>> >>> test2 >>> >>> test3 >>> >>> test4 >>> >>> Running above command for WordsWithCountsTopic returns nothing*.* >>> >>> My program runs out of docker machine, and it does not return any error. >>> >>> I checked kafka logs and kafka-connect logs, no information is shown. >>> Wondering what is the log level in kafka/kafka-connect. >>> >>> >>> Best regards, >>> Mina >>> >>> >>> >>> >>> On Tue, Mar 14, 2017 at 3:57 PM, Eno Thereska <eno.there...@gmail.com> >>> wrote: >>> >>>> Hi there, >>>> >>>> I noticed in your example that you are using localhost:9092 to produce >>>> but localhost:29092 to consume? Or is that a typo? Is zookeeper, kafka, and >>>> the Kafka Streams app all running within one docker container, or in >>>> different containers? >>>> >>>> I just tested the WordCountLambdaExample and it works for me. This >>>> might not have anything to do with streams, but rather with the Kafka >>>> configuration and whether streams (that is just an app) can reach Kafka at >>>> all. If you provide the above information we can look further. >>>> >>>> >>>> >>>> Thanks >>>> Eno >>>> >>>> > On 14 Mar 2017, at 18:42, Mina Aslani <aslanim...@gmail.com> wrote: >>>> > >>>> > I reset and still not working! >>>> > >>>> > My env is setup using >>>> > http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html >>>> > >>>> > I just tried using >>>> > https://github.com/confluentinc/e
Re: Trying to use Kafka Stream
Hi, I forgot to add in my previous email 2 questions. To setup my env, shall I use https://raw.githubusercontent.com/confluentinc/cp-docker-images/master/examples/kafka-single-node/docker-compose.yml instead or is there any other docker-compose.yml (version 2 or 3) which is suggested to setup env? How can I check "whether streams (that is just an app) can reach Kafka"? Regards, Mina On Tue, Mar 14, 2017 at 9:00 PM, Mina Aslani <aslanim...@gmail.com> wrote: > Hi Eno, > > Sorry! That is a typo! > > I have a docker-machine with different containers (setup as directed @ > http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html) > > docker ps --format "{{.Image}}: {{.Names}}" > > confluentinc/cp-kafka-connect:3.2.0: kafka-connect > > confluentinc/cp-enterprise-control-center:3.2.0: control-center > > confluentinc/cp-kafka-rest:3.2.0: kafka-rest > > confluentinc/cp-schema-registry:3.2.0: schema-registry > > confluentinc/cp-kafka:3.2.0: kafka > > confluentinc/cp-zookeeper:3.2.0: zookeeper > > I used example @ https://github.com/confluentinc/examples/blob/3. > 2.x/kafka-streams/src/main/java/io/confluent/examples/streams/ > WordCountLambdaExample.java#L178-L181 and followed the same steps. > > When I run below command in docker-machine, I see the messages in > TextLinesTopic. > > docker run --net=host --rm confluentinc/cp-kafka:3.2.0 kafka-console-consumer > --bootstrap-server localhost:29092 --topic TextLinesTopic --new-consumer > --from-beginning > > hello kafka streams > > all streams lead to kafka > > join kafka summit > > test1 > > test2 > > test3 > > test4 > > Running above command for WordsWithCountsTopic returns nothing*.* > > My program runs out of docker machine, and it does not return any error. > > I checked kafka logs and kafka-connect logs, no information is shown. > Wondering what is the log level in kafka/kafka-connect. > > > Best regards, > Mina > > > > > On Tue, Mar 14, 2017 at 3:57 PM, Eno Thereska <eno.there...@gmail.com> > wrote: > >> Hi there, >> >> I noticed in your example that you are using localhost:9092 to produce >> but localhost:29092 to consume? Or is that a typo? Is zookeeper, kafka, and >> the Kafka Streams app all running within one docker container, or in >> different containers? >> >> I just tested the WordCountLambdaExample and it works for me. This might >> not have anything to do with streams, but rather with the Kafka >> configuration and whether streams (that is just an app) can reach Kafka at >> all. If you provide the above information we can look further. >> >> >> >> Thanks >> Eno >> >> > On 14 Mar 2017, at 18:42, Mina Aslani <aslanim...@gmail.com> wrote: >> > >> > I reset and still not working! >> > >> > My env is setup using >> > http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html >> > >> > I just tried using >> > https://github.com/confluentinc/examples/blob/3.2.x/kafka- >> streams/src/main/java/io/confluent/examples/streams/Wor >> dCountLambdaExample.java#L178-L181 >> > with all the topics(e.g. TextLinesTopic and WordsWithCountsTopic) >> created >> > from scratch as went through the steps as directed. >> > >> > When I stopped the java program and check the topics below are the data >> in >> > each topic. >> > >> > docker run \ >> > >> > --net=host \ >> > >> > --rm \ >> > >> > confluentinc/cp-kafka:3.2.0 \ >> > >> > kafka-console-consumer --bootstrap-server localhost:29092 --topic >> > TextLinesTopic --new-consumer --from-beginning >> > >> > >> > SHOWS >> > >> > hello kafka streams >> > >> > all streams lead to kafka >> > >> > join kafka summit >> > >> > test1 >> > >> > test2 >> > >> > test3 >> > >> > test4 >> > >> > FOR WordsWithCountsTopic nothing is shown >> > >> > >> > I am new to the Kafka/Kafka Stream and still do not understand why a >> simple >> > example does not work! >> > >> > On Tue, Mar 14, 2017 at 1:03 PM, Matthias J. Sax <matth...@confluent.io >> > >> > wrote: >> > >> >>>> So, when I check the number of messages in wordCount-input I see the >> >> same >> >>>> messages. However, when I run below code I do not see any >> message/data >&g
Re: Trying to use Kafka Stream
And the port for kafka is 29092 and for zookeeper 32181. On Tue, Mar 14, 2017 at 9:06 PM, Mina Aslani <aslanim...@gmail.com> wrote: > Hi, > > I forgot to add in my previous email 2 questions. > > To setup my env, shall I use https://raw.githubusercontent.com/ > confluentinc/cp-docker-images/master/examples/kafka-single- > node/docker-compose.yml instead or is there any other docker-compose.yml > (version 2 or 3) which is suggested to setup env? > > How can I check "whether streams (that is just an app) can reach Kafka"? > > Regards, > Mina > > On Tue, Mar 14, 2017 at 9:00 PM, Mina Aslani <aslanim...@gmail.com> wrote: > >> Hi Eno, >> >> Sorry! That is a typo! >> >> I have a docker-machine with different containers (setup as directed @ >> http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html) >> >> docker ps --format "{{.Image}}: {{.Names}}" >> >> confluentinc/cp-kafka-connect:3.2.0: kafka-connect >> >> confluentinc/cp-enterprise-control-center:3.2.0: control-center >> >> confluentinc/cp-kafka-rest:3.2.0: kafka-rest >> >> confluentinc/cp-schema-registry:3.2.0: schema-registry >> >> confluentinc/cp-kafka:3.2.0: kafka >> >> confluentinc/cp-zookeeper:3.2.0: zookeeper >> >> I used example @ https://github.com/confluent >> inc/examples/blob/3.2.x/kafka-streams/src/main/java/io/ >> confluent/examples/streams/WordCountLambdaExample.java#L178-L181 and >> followed the same steps. >> >> When I run below command in docker-machine, I see the messages in >> TextLinesTopic. >> >> docker run --net=host --rm confluentinc/cp-kafka:3.2.0 kafka-console-consumer >> --bootstrap-server localhost:29092 --topic TextLinesTopic --new-consumer >> --from-beginning >> >> hello kafka streams >> >> all streams lead to kafka >> >> join kafka summit >> >> test1 >> >> test2 >> >> test3 >> >> test4 >> >> Running above command for WordsWithCountsTopic returns nothing*.* >> >> My program runs out of docker machine, and it does not return any error. >> >> I checked kafka logs and kafka-connect logs, no information is shown. >> Wondering what is the log level in kafka/kafka-connect. >> >> >> Best regards, >> Mina >> >> >> >> >> On Tue, Mar 14, 2017 at 3:57 PM, Eno Thereska <eno.there...@gmail.com> >> wrote: >> >>> Hi there, >>> >>> I noticed in your example that you are using localhost:9092 to produce >>> but localhost:29092 to consume? Or is that a typo? Is zookeeper, kafka, and >>> the Kafka Streams app all running within one docker container, or in >>> different containers? >>> >>> I just tested the WordCountLambdaExample and it works for me. This might >>> not have anything to do with streams, but rather with the Kafka >>> configuration and whether streams (that is just an app) can reach Kafka at >>> all. If you provide the above information we can look further. >>> >>> >>> >>> Thanks >>> Eno >>> >>> > On 14 Mar 2017, at 18:42, Mina Aslani <aslanim...@gmail.com> wrote: >>> > >>> > I reset and still not working! >>> > >>> > My env is setup using >>> > http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html >>> > >>> > I just tried using >>> > https://github.com/confluentinc/examples/blob/3.2.x/kafka-st >>> reams/src/main/java/io/confluent/examples/streams/WordCountL >>> ambdaExample.java#L178-L181 >>> > with all the topics(e.g. TextLinesTopic and WordsWithCountsTopic) >>> created >>> > from scratch as went through the steps as directed. >>> > >>> > When I stopped the java program and check the topics below are the >>> data in >>> > each topic. >>> > >>> > docker run \ >>> > >>> > --net=host \ >>> > >>> > --rm \ >>> > >>> > confluentinc/cp-kafka:3.2.0 \ >>> > >>> > kafka-console-consumer --bootstrap-server localhost:29092 --topic >>> > TextLinesTopic --new-consumer --from-beginning >>> > >>> > >>> > SHOWS >>> > >>> > hello kafka streams >>> > >>> > all streams lead to kafka >>> > >>> > join kafka summit >>> > >>> > test1 >>>
Re: Trying to use Kafka Stream
Hi Eno, Sorry! That is a typo! I have a docker-machine with different containers (setup as directed @ http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html) docker ps --format "{{.Image}}: {{.Names}}" confluentinc/cp-kafka-connect:3.2.0: kafka-connect confluentinc/cp-enterprise-control-center:3.2.0: control-center confluentinc/cp-kafka-rest:3.2.0: kafka-rest confluentinc/cp-schema-registry:3.2.0: schema-registry confluentinc/cp-kafka:3.2.0: kafka confluentinc/cp-zookeeper:3.2.0: zookeeper I used example @ https://github.com/confluentinc/examples/blob/3.2.x/kafka-streams/src/main/java/io/confluent/examples/streams/WordCountLambdaExample.java#L178-L181 and followed the same steps. When I run below command in docker-machine, I see the messages in TextLinesTopic. docker run --net=host --rm confluentinc/cp-kafka:3.2.0 kafka-console-consumer --bootstrap-server localhost:29092 --topic TextLinesTopic --new-consumer --from-beginning hello kafka streams all streams lead to kafka join kafka summit test1 test2 test3 test4 Running above command for WordsWithCountsTopic returns nothing*.* My program runs out of docker machine, and it does not return any error. I checked kafka logs and kafka-connect logs, no information is shown. Wondering what is the log level in kafka/kafka-connect. Best regards, Mina On Tue, Mar 14, 2017 at 3:57 PM, Eno Thereska <eno.there...@gmail.com> wrote: > Hi there, > > I noticed in your example that you are using localhost:9092 to produce but > localhost:29092 to consume? Or is that a typo? Is zookeeper, kafka, and the > Kafka Streams app all running within one docker container, or in different > containers? > > I just tested the WordCountLambdaExample and it works for me. This might > not have anything to do with streams, but rather with the Kafka > configuration and whether streams (that is just an app) can reach Kafka at > all. If you provide the above information we can look further. > > > > Thanks > Eno > > > On 14 Mar 2017, at 18:42, Mina Aslani <aslanim...@gmail.com> wrote: > > > > I reset and still not working! > > > > My env is setup using > > http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html > > > > I just tried using > > https://github.com/confluentinc/examples/blob/3. > 2.x/kafka-streams/src/main/java/io/confluent/examples/streams/ > WordCountLambdaExample.java#L178-L181 > > with all the topics(e.g. TextLinesTopic and WordsWithCountsTopic) created > > from scratch as went through the steps as directed. > > > > When I stopped the java program and check the topics below are the data > in > > each topic. > > > > docker run \ > > > > --net=host \ > > > > --rm \ > > > > confluentinc/cp-kafka:3.2.0 \ > > > > kafka-console-consumer --bootstrap-server localhost:29092 --topic > > TextLinesTopic --new-consumer --from-beginning > > > > > > SHOWS > > > > hello kafka streams > > > > all streams lead to kafka > > > > join kafka summit > > > > test1 > > > > test2 > > > > test3 > > > > test4 > > > > FOR WordsWithCountsTopic nothing is shown > > > > > > I am new to the Kafka/Kafka Stream and still do not understand why a > simple > > example does not work! > > > > On Tue, Mar 14, 2017 at 1:03 PM, Matthias J. Sax <matth...@confluent.io> > > wrote: > > > >>>> So, when I check the number of messages in wordCount-input I see the > >> same > >>>> messages. However, when I run below code I do not see any message/data > >> in > >>>> wordCount-output. > >> > >> Did you reset your application? > >> > >> Each time you run you app and restart it, it will resume processing > >> where it left off. Thus, if something went wrong in you first run but > >> you got committed offsets, the app will not re-read the whole topic. > >> > >> You can check committed offset via bin/kafka-consumer-groups.sh. The > >> application-id from StreamConfig is used a group.id. > >> > >> Thus, resetting you app would be required to consumer the input topic > >> from scratch. Of you just write new data to you input topic. > >> > >>>> Can I connect to kafka in VM/docker container using below code or do I > >> need > >>>> to change/add other parameters? How can I submit the code to > >>>> kafka/kafka-connect? Do we have similar concept as SPARK to submit the > >>>> code(e.g. jar file)? > >> > >> A Streams app
Re: Trying to use Kafka Stream
Any book, document and provides information on how to use kafka stream? On Tue, Mar 14, 2017 at 2:42 PM, Mina Aslani <aslanim...@gmail.com> wrote: > I reset and still not working! > > My env is setup using http://docs.confluent.io/3.2.0/cp-docker-images/ > docs/quickstart.html > > I just tried using https://github.com/confluentinc/examples/blob/3. > 2.x/kafka-streams/src/main/java/io/confluent/examples/streams/ > WordCountLambdaExample.java#L178-L181 with all the topics(e.g. TextLinesTopic > and WordsWithCountsTopic) created from scratch as went through the steps > as directed. > > When I stopped the java program and check the topics below are the data in > each topic. > > docker run \ > > --net=host \ > > --rm \ > > confluentinc/cp-kafka:3.2.0 \ > > kafka-console-consumer --bootstrap-server localhost:29092 --topic > TextLinesTopic --new-consumer --from-beginning > > > SHOWS > > hello kafka streams > > all streams lead to kafka > > join kafka summit > > test1 > > test2 > > test3 > > test4 > > FOR WordsWithCountsTopic nothing is shown > > > I am new to the Kafka/Kafka Stream and still do not understand why a > simple example does not work! > > On Tue, Mar 14, 2017 at 1:03 PM, Matthias J. Sax <matth...@confluent.io> > wrote: > >> >> So, when I check the number of messages in wordCount-input I see the >> same >> >> messages. However, when I run below code I do not see any message/data >> in >> >> wordCount-output. >> >> Did you reset your application? >> >> Each time you run you app and restart it, it will resume processing >> where it left off. Thus, if something went wrong in you first run but >> you got committed offsets, the app will not re-read the whole topic. >> >> You can check committed offset via bin/kafka-consumer-groups.sh. The >> application-id from StreamConfig is used a group.id. >> >> Thus, resetting you app would be required to consumer the input topic >> from scratch. Of you just write new data to you input topic. >> >> >> Can I connect to kafka in VM/docker container using below code or do I >> need >> >> to change/add other parameters? How can I submit the code to >> >> kafka/kafka-connect? Do we have similar concept as SPARK to submit the >> >> code(e.g. jar file)? >> >> A Streams app is a regular Java application and can run anywhere -- >> there is no notion of a processing cluster and you don't "submit" your >> code -- you just run your app. >> >> Thus, if your console consumer can connect to the cluster, your Streams >> app should also be able to connect to the cluster. >> >> >> Maybe, the short runtime of 5 seconds could be a problem (even if it >> seems log to process just a few records). But you might need to put >> startup delay into account. I would recommend to register a shutdown >> hook: see >> https://github.com/confluentinc/examples/blob/3.2.x/kafka- >> streams/src/main/java/io/confluent/examples/streams/Wor >> dCountLambdaExample.java#L178-L181 >> >> >> Hope this helps. >> >> -Matthias >> >> >> On 3/13/17 7:30 PM, Mina Aslani wrote: >> > Hi Matthias, >> > >> > Thank you for the quick response, appreciate it! >> > >> > I created the topics wordCount-input and wordCount-output. Pushed some >> data >> > to wordCount-input using >> > >> > docker exec -it $(docker ps -f "name=kafka\\." --format "{{.Names}}") >> > /bin/kafka-console-producer --broker-list localhost:9092 --topic >> > wordCount-input >> > >> > test >> > >> > new >> > >> > word >> > >> > count >> > >> > wordcount >> > >> > word count >> > >> > So, when I check the number of messages in wordCount-input I see the >> same >> > messages. However, when I run below code I do not see any message/data >> in >> > wordCount-output. >> > >> > Can I connect to kafka in VM/docker container using below code or do I >> need >> > to change/add other parameters? How can I submit the code to >> > kafka/kafka-connect? Do we have similar concept as SPARK to submit the >> > code(e.g. jar file)? >> > >> > I really appreciate your input as I am blocked and cannot run even below >> > simple example. >> > >> > Best regards, >> > Mina >> > >> > I
Re: Trying to use Kafka Stream
I reset and still not working! My env is setup using http://docs.confluent.io/3.2.0/cp-docker-images/docs/quickstart.html I just tried using https://github.com/confluentinc/examples/blob/3.2.x/kafka-streams/src/main/java/io/confluent/examples/streams/WordCountLambdaExample.java#L178-L181 with all the topics(e.g. TextLinesTopic and WordsWithCountsTopic) created from scratch as went through the steps as directed. When I stopped the java program and check the topics below are the data in each topic. docker run \ --net=host \ --rm \ confluentinc/cp-kafka:3.2.0 \ kafka-console-consumer --bootstrap-server localhost:29092 --topic TextLinesTopic --new-consumer --from-beginning SHOWS hello kafka streams all streams lead to kafka join kafka summit test1 test2 test3 test4 FOR WordsWithCountsTopic nothing is shown I am new to the Kafka/Kafka Stream and still do not understand why a simple example does not work! On Tue, Mar 14, 2017 at 1:03 PM, Matthias J. Sax <matth...@confluent.io> wrote: > >> So, when I check the number of messages in wordCount-input I see the > same > >> messages. However, when I run below code I do not see any message/data > in > >> wordCount-output. > > Did you reset your application? > > Each time you run you app and restart it, it will resume processing > where it left off. Thus, if something went wrong in you first run but > you got committed offsets, the app will not re-read the whole topic. > > You can check committed offset via bin/kafka-consumer-groups.sh. The > application-id from StreamConfig is used a group.id. > > Thus, resetting you app would be required to consumer the input topic > from scratch. Of you just write new data to you input topic. > > >> Can I connect to kafka in VM/docker container using below code or do I > need > >> to change/add other parameters? How can I submit the code to > >> kafka/kafka-connect? Do we have similar concept as SPARK to submit the > >> code(e.g. jar file)? > > A Streams app is a regular Java application and can run anywhere -- > there is no notion of a processing cluster and you don't "submit" your > code -- you just run your app. > > Thus, if your console consumer can connect to the cluster, your Streams > app should also be able to connect to the cluster. > > > Maybe, the short runtime of 5 seconds could be a problem (even if it > seems log to process just a few records). But you might need to put > startup delay into account. I would recommend to register a shutdown > hook: see > https://github.com/confluentinc/examples/blob/3. > 2.x/kafka-streams/src/main/java/io/confluent/examples/streams/ > WordCountLambdaExample.java#L178-L181 > > > Hope this helps. > > -Matthias > > > On 3/13/17 7:30 PM, Mina Aslani wrote: > > Hi Matthias, > > > > Thank you for the quick response, appreciate it! > > > > I created the topics wordCount-input and wordCount-output. Pushed some > data > > to wordCount-input using > > > > docker exec -it $(docker ps -f "name=kafka\\." --format "{{.Names}}") > > /bin/kafka-console-producer --broker-list localhost:9092 --topic > > wordCount-input > > > > test > > > > new > > > > word > > > > count > > > > wordcount > > > > word count > > > > So, when I check the number of messages in wordCount-input I see the same > > messages. However, when I run below code I do not see any message/data in > > wordCount-output. > > > > Can I connect to kafka in VM/docker container using below code or do I > need > > to change/add other parameters? How can I submit the code to > > kafka/kafka-connect? Do we have similar concept as SPARK to submit the > > code(e.g. jar file)? > > > > I really appreciate your input as I am blocked and cannot run even below > > simple example. > > > > Best regards, > > Mina > > > > I changed the code to be as below: > > > > Properties props = new Properties(); > > props.put(StreamsConfig.APPLICATION_ID_CONFIG, "wordCount-streaming"); > > props.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, ":9092"); > > props.put(StreamsConfig.KEY_SERDE_CLASS_CONFIG, > > Serdes.String().getClass().getName()); > > props.put(StreamsConfig.VALUE_SERDE_CLASS_CONFIG, > > Serdes.String().getClass().getName()); > > > > props.put(StreamsConfig.COMMIT_INTERVAL_MS_CONFIG, 10); > > props.put(StreamsConfig.CACHE_MAX_BYTES_BUFFERING_CONFIG, 0); > > > > // setting offset reset to earliest so that we can re-run the demo > > code with the same pre-loaded data > >
WordCount example does not output to OUTPUT topic
Hi, I am using below code to read from a topic and count words and write to another topic. The example is the one in github. My kafka container is in the VM. I do not get any error but I do not see any result/output in my output ordCount-output topic either. The program also does not stop either! Any idea? Best regards, Mina Properties props = new Properties(); props.put(StreamsConfig.APPLICATION_ID_CONFIG, "cloudtrail-events-streaming"); props.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, "192.168.99.102:29092"); props.put(StreamsConfig.KEY_SERDE_CLASS_CONFIG, Serdes.String().getClass().getName()); props.put(StreamsConfig.VALUE_SERDE_CLASS_CONFIG, Serdes.String().getClass().getName()); props.put(StreamsConfig.COMMIT_INTERVAL_MS_CONFIG, 10); props.put(StreamsConfig.CACHE_MAX_BYTES_BUFFERING_CONFIG, 0); // setting offset reset to earliest so that we can re-run the demo code with the same pre-loaded data // Note: To re-run the demo, you need to use the offset reset tool: // https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Streams+Application+Reset+Tool props.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest"); KStreamBuilder builder = new KStreamBuilder(); KStreamsource = builder.stream("wordCount-input"); KTable counts = source .flatMapValues(new ValueMapper () { @Override public Iterable apply(String value) { return Arrays.asList(value.toLowerCase(Locale.getDefault()).split(" ")); } }).map(new KeyValueMapper >() { @Override public KeyValue apply(String key, String value) { return new KeyValue<>(value, value); } }) .groupByKey() .count("Counts"); // need to override value serde to Long type counts.to(Serdes.String(), Serdes.Long(), "wordCount-output"); LOGGER.info("counts:" + counts); KafkaStreams streams = new KafkaStreams(builder, props); streams.cleanUp(); streams.start(); // usually the stream application would be running forever, // in this example we just let it run for some time and stop since the input data is finite. Thread.sleep(5000L); streams.close();
Re: Trying to use Kafka Stream
Hi Matthias, Thank you for the quick response, appreciate it! I created the topics wordCount-input and wordCount-output. Pushed some data to wordCount-input using docker exec -it $(docker ps -f "name=kafka\\." --format "{{.Names}}") /bin/kafka-console-producer --broker-list localhost:9092 --topic wordCount-input test new word count wordcount word count So, when I check the number of messages in wordCount-input I see the same messages. However, when I run below code I do not see any message/data in wordCount-output. Can I connect to kafka in VM/docker container using below code or do I need to change/add other parameters? How can I submit the code to kafka/kafka-connect? Do we have similar concept as SPARK to submit the code(e.g. jar file)? I really appreciate your input as I am blocked and cannot run even below simple example. Best regards, Mina I changed the code to be as below: Properties props = new Properties(); props.put(StreamsConfig.APPLICATION_ID_CONFIG, "wordCount-streaming"); props.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, ":9092"); props.put(StreamsConfig.KEY_SERDE_CLASS_CONFIG, Serdes.String().getClass().getName()); props.put(StreamsConfig.VALUE_SERDE_CLASS_CONFIG, Serdes.String().getClass().getName()); props.put(StreamsConfig.COMMIT_INTERVAL_MS_CONFIG, 10); props.put(StreamsConfig.CACHE_MAX_BYTES_BUFFERING_CONFIG, 0); // setting offset reset to earliest so that we can re-run the demo code with the same pre-loaded data // Note: To re-run the demo, you need to use the offset reset tool: // https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Streams+Application+Reset+Tool props.put(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest"); KStreamBuilder builder = new KStreamBuilder(); KStream<String, String> source = builder.stream("wordCount-input"); KTable<String, Long> counts = source .flatMapValues(new ValueMapper<String, Iterable>() { @Override public Iterable apply(String value) { return Arrays.asList(value.toLowerCase(Locale.getDefault()).split(" ")); } }).map(new KeyValueMapper<String, String, KeyValue<String, String>>() { @Override public KeyValue<String, String> apply(String key, String value) { return new KeyValue<>(value, value); } }) .groupByKey() .count("Counts"); // need to override value serde to Long type counts.to(Serdes.String(), Serdes.Long(), "wordCount-output"); KafkaStreams streams = new KafkaStreams(builder, props); streams.start(); // usually the stream application would be running forever, // in this example we just let it run for some time and stop since the input data is finite. Thread.sleep(5000L); streams.close(); On Mon, Mar 13, 2017 at 4:09 PM, Matthias J. Sax <matth...@confluent.io> wrote: > Maybe you need to reset your application using the reset tool: > http://docs.confluent.io/current/streams/developer- > guide.html#application-reset-tool > > Also keep in mind, that KTables buffer internally, and thus, you might > only see data on commit. > > Try to reduce commit interval or disable caching by setting > "cache.max.bytes.buffering" to zero in your StreamsConfig. > > > -Matthias > > On 3/13/17 12:29 PM, Mina Aslani wrote: > > Hi, > > > > This is the first time that am using Kafka Stream. I would like to read > > from input topic and write to output topic. However, I do not see the > word > > count when I try to run below example. Looks like that it does not > connect > > to Kafka. I do not see any error though. I tried my localhost kafka as > well > > as the container in a VM, same situation. > > > > There are over 200 message in the input kafka topic. > > > > Your input is appreciated! > > > > Best regards, > > Mina > > > > import org.apache.kafka.common.serialization.*; > > import org.apache.kafka.streams.*; > > import org.apache.kafka.streams.kstream.*; > > > > import java.util.*; > > import java.util.regex.*; > > > > public class WordCountExample { > > > > > >public static void main(String [] args) { > > final Properties streamsConfiguration = new Properties(); > > streamsConfiguration.put(StreamsConfig.APPLICATION_ID_CONFIG, > > "wordcount-streaming"); > > streamsConfiguration.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, > > ":9092"); > > streamsConfiguration.put(StreamsConfig.KEY_SERDE_CLASS_CONFIG, > > Serdes.String().getClass().getName()); > > streamsConfiguration.put(StreamsConfig.VALUE_SERDE_CLASS_CONFIG, > > Serdes.String().getClass().getName()); > >
Trying to use Kafka Stream
Hi, This is the first time that am using Kafka Stream. I would like to read from input topic and write to output topic. However, I do not see the word count when I try to run below example. Looks like that it does not connect to Kafka. I do not see any error though. I tried my localhost kafka as well as the container in a VM, same situation. There are over 200 message in the input kafka topic. Your input is appreciated! Best regards, Mina import org.apache.kafka.common.serialization.*; import org.apache.kafka.streams.*; import org.apache.kafka.streams.kstream.*; import java.util.*; import java.util.regex.*; public class WordCountExample { public static void main(String [] args) { final Properties streamsConfiguration = new Properties(); streamsConfiguration.put(StreamsConfig.APPLICATION_ID_CONFIG, "wordcount-streaming"); streamsConfiguration.put(StreamsConfig.BOOTSTRAP_SERVERS_CONFIG, ":9092"); streamsConfiguration.put(StreamsConfig.KEY_SERDE_CLASS_CONFIG, Serdes.String().getClass().getName()); streamsConfiguration.put(StreamsConfig.VALUE_SERDE_CLASS_CONFIG, Serdes.String().getClass().getName()); streamsConfiguration.put(StreamsConfig.COMMIT_INTERVAL_MS_CONFIG, 10 * 1000); final Serde stringSerde = Serdes.String(); final Serde longSerde = Serdes.Long(); final KStreamBuilder builder = new KStreamBuilder(); final KStreamtextLines = builder.stream(stringSerde, stringSerde, "wordcount-input"); final Pattern pattern = Pattern.compile("\\W+", Pattern.UNICODE_CHARACTER_CLASS); final KStream wordCounts = textLines .flatMapValues(value -> Arrays.asList(pattern.split(value.toLowerCase( .groupBy((key, word) -> word) .count("Counts") .toStream(); wordCounts.to(stringSerde, longSerde, "wordcount-output"); final KafkaStreams streams = new KafkaStreams(builder, streamsConfiguration); streams.cleanUp(); streams.start(); Runtime.getRuntime().addShutdownHook(new Thread(streams::close)); } }
Using Kafka-connect transofrmer
Hi, I am new to Kafka/Kafka-connect. I would like to use Kafka-Connect transformer to get specific fields from my data @ a kafka topic. I was not able to find information/examples/documents about how to use Kafka-Connect transformer. I really appreciate if I can get some info on that! Best regards, Mina
Subscribe to user mailing list
Hi, I would like to subscribe to user mailing list. Best regards, Mina