Uploaded image for project: 'Metron (Retired)'
  1. Metron (Retired)
  2. METRON-227

Add Time-Based Flushing to Writer Bolt

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Done
    • Major
    • Resolution: Done
    • None
    • None
    • None

    Description

      We need to change the BulkMessageWriterBolt and BulkWriterComponent to use time-based flushing when writing data to Elasticsearch or Solr.

      Currently, we set a batch size, and the Writer waits for that number of tuples to build up; however, Storm has a timeout value that prevents it from waiting for too long. If the Writer does not get the batch size before the timeout, then it recycles the tuples through the topology. In addition, Storm only allows so many pending messages that have not been acked - if too many messages are waiting for the bulk Writer, then it will recycle them through the topology. This is not desired behavior and directly impacts the performance of this Writer. We would like to be able to specify a unit of time for which the topology would flush, writing the data it's currently holding to Elasticsearch or Solr even if the batch size is not met.

      Attachments

        Issue Links

          Activity

            People

              mattf Matthew Foley
              DomenicPuzio Domenic Puzio
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: