By replica == 1 do you mean replication-factor == 1 or something different?

You should have replication-factor == 3 if you are trying to have durable
writes survive failure. On the producer side set ack = -1 with that for it
to work as expected.

On Wed, Dec 10, 2014 at 7:14 PM, Helin Xiang <xkee...@gmail.com> wrote:

> Thanks for the reply , Joe.
>
> In my opinion, when replica == 1, the ack == -1 would cause producer
> stopping sending any data to kafka cluster if 1 broker is down. That means
> we could not bear single point of failure. Am I right?
>
> What we want is when 1 broker down, and the topic replica is set to 1, the
> whole system is still available and the data would go to other partitions
> without loss.
>
>
> THANKS again.
>
> On Thu, Dec 11, 2014 at 12:37 AM, Joe Stein <joe.st...@stealth.ly> wrote:
>
> > If you want no data loss then you need to set ack = -1
> > Copied from https://kafka.apache.org/documentation.html#producerconfigs
> ==
> > -1, which means that the producer gets an acknowledgement after all
> in-sync
> > replicas have received the data. This option provides the best
> durability,
> > we guarantee that no messages will be lost as long as at least one in
> sync
> > replica remains.
> >
> > /*******************************************
> >  Joe Stein
> >  Founder, Principal Consultant
> >  Big Data Open Source Security LLC
> >  http://www.stealth.ly
> >  Twitter: @allthingshadoop <http://www.twitter.com/allthingshadoop>
> > ********************************************/
> >
> > On Wed, Dec 10, 2014 at 11:27 AM, Helin Xiang <xkee...@gmail.com> wrote:
> >
> > > Hi,
> > >
> > > in some topics of our system, the data volumn is so huge that we think
> > > doing extra replica is a waste of disk and network resource( plus the
> > data
> > > is not so important).
> > >
> > > firstly, we use 1 replica + ack=0, found when 1 broker is down, the
> data
> > > would loss 1/n.
> > > then we tried 1 replica + ack=1, and found after 3 tries, the data is
> > still
> > > lost. and when we set the try number large enough, no more data can be
> > > produced to Kafka.
> > >
> > > If I did not misunderstand, In 0.7, when 1 broker is down, both
> producing
> > > and consuming are available with no data loss. I can see the reason why
> > > kafka 0.8 is designed to be different like 0.7.  but is there a way to
> > let
> > > producer of 0.8 act like the behavior in 0.7?  We don't care which part
> > of
> > > data should go to the specific partition, as long as the data goes into
> > the
> > > kafka with no loss.
> > >
> > >
> > > Thanks
> > >
> > >
> > >
> > >
> > > --
> > >
> > >
> > > *Best RegardsXiang Helin*
> > >
> >
>
>
>
> --
>
>
> *Best Regards向河林*
>

Reply via email to