Package io.druid.segment.indexing

Examples of io.druid.segment.indexing.RealtimeTuningConfig


        version,
        wrappedDataSegmentPusher,
        tmpDir
    ).findPlumber(
        schema,
        new RealtimeTuningConfig(null, null, null, null, null, null, null, shardSpec, null, null),
        metrics
    );

    // rowFlushBoundary for this job
    final int myRowFlushBoundary = rowFlushBoundary > 0
View Full Code Here


            null,
            new RealtimePlumberSchool(
                null, null, null, null, null, null, null, null, null, null, null, null, null, 0
            )
        ),
        new RealtimeTuningConfig(
            null, null, null, null, null, null, null, null, false, false
        ),
        null, null, null, null
    );
View Full Code Here

              firehoseFactory == null ? null : firehoseFactory.getParser(),
              spec.getAggregators(),
              new UniformGranularitySpec(segmentGranularity, spec.getIndexGranularity(), null, segmentGranularity)
          ),
          new RealtimeIOConfig(firehoseFactory, null),
          new RealtimeTuningConfig(
              fireDepartmentConfig == null ? null : fireDepartmentConfig.getMaxRowsInMemory(),
              fireDepartmentConfig == null ? null : fireDepartmentConfig.getIntermediatePersistPeriod(),
              windowPeriod,
              null,
              null,
View Full Code Here

      }
    };

    DataSchema dataSchema = spec.getDataSchema();
    RealtimeIOConfig realtimeIOConfig = spec.getIOConfig();
    RealtimeTuningConfig tuningConfig = spec.getTuningConfig()
                                              .withBasePersistDirectory(new File(toolbox.getTaskWorkDir(), "persist"))
                                              .withVersioningPolicy(versioningPolicy);

    final FireDepartment fireDepartment = new FireDepartment(
        dataSchema,
        realtimeIOConfig,
        tuningConfig,
        null,
        null,
        null,
        null
    );
    final RealtimeMetricsMonitor metricsMonitor = new RealtimeMetricsMonitor(ImmutableList.of(fireDepartment));
    this.queryRunnerFactoryConglomerate = toolbox.getQueryRunnerFactoryConglomerate();

    // NOTE: This pusher selects path based purely on global configuration and the DataSegment, which means
    // NOTE: that redundant realtime tasks will upload to the same location. This can cause index.zip and
    // NOTE: descriptor.json to mismatch, or it can cause historical nodes to load different instances of the
    // NOTE: "same" segment.
    final RealtimePlumberSchool plumberSchool = new RealtimePlumberSchool(
        toolbox.getEmitter(),
        toolbox.getQueryRunnerFactoryConglomerate(),
        toolbox.getSegmentPusher(),
        lockingSegmentAnnouncer,
        segmentPublisher,
        toolbox.getNewSegmentServerView(),
        toolbox.getQueryExecutorService(),
        null,
        null,
        null,
        null,
        null,
        null,
        0
    );

    this.plumber = plumberSchool.findPlumber(dataSchema, tuningConfig, fireDepartment.getMetrics());

    try {
      plumber.startJob();

      // Set up metrics emission
      toolbox.getMonitorScheduler().addMonitor(metricsMonitor);

      // Time to read data!
      long nextFlush = new DateTime().plus(intermediatePersistPeriod).getMillis();
      while (firehose.hasMore()) {
        final InputRow inputRow;
        try {
          inputRow = firehose.nextRow();
          if (inputRow == null) {
            continue;
          }

          int currCount = plumber.add(inputRow);
          if (currCount == -1) {
            fireDepartment.getMetrics().incrementThrownAway();
            log.debug("Throwing away event[%s]", inputRow);

            if (System.currentTimeMillis() > nextFlush) {
              plumber.persist(firehose.commit());
              nextFlush = new DateTime().plus(intermediatePersistPeriod).getMillis();
            }

            continue;
          }

          fireDepartment.getMetrics().incrementProcessed();
          if (currCount >= tuningConfig.getMaxRowsInMemory() || System.currentTimeMillis() > nextFlush) {
            plumber.persist(firehose.commit());
            nextFlush = new DateTime().plus(intermediatePersistPeriod).getMillis();
          }
        }
        catch (ParseException e) {
View Full Code Here

        new UniformGranularitySpec(Granularity.HOUR, QueryGranularity.MINUTE, null, Granularity.HOUR)
    );

    final Interval interval = new Interval("2013-01-01/2013-01-02");
    final String version = new DateTime().toString();
    RealtimeTuningConfig tuningConfig = new RealtimeTuningConfig(
        100,
        new Period("P1Y"),
        null,
        null,
        null,
View Full Code Here

          {
            throw new UnsupportedOperationException();
          }
        }
    );
    RealtimeTuningConfig tuningConfig = new RealtimeTuningConfig(
        1,
        new Period("P1Y"),
        null,
        null,
        null,
View Full Code Here

    emitter = EasyMock.createMock(ServiceEmitter.class);

    EasyMock.replay(announcer, segmentPublisher, dataSegmentPusher, serverView, emitter);

    tuningConfig = new RealtimeTuningConfig(
        1,
        null,
        null,
        null,
        new IntervalStartVersioningPolicy(),
View Full Code Here

      );
      this.ioConfig = new RealtimeIOConfig(
          firehoseFactory,
          plumberSchool
      );
      this.tuningConfig = new RealtimeTuningConfig(
          config.getMaxRowsInMemory(),
          config.getIntermediatePersistPeriod(),
          ((RealtimePlumberSchool) plumberSchool).getWindowPeriod(),
          ((RealtimePlumberSchool) plumberSchool).getBasePersistDirectory(),
          ((RealtimePlumberSchool) plumberSchool).getVersioningPolicy(),
View Full Code Here

TOP

Related Classes of io.druid.segment.indexing.RealtimeTuningConfig

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.