Package org.apache.accumulo.core.master.thrift

Examples of org.apache.accumulo.core.master.thrift.TableInfo


    }
    Map<String,TableInfo> tables = new HashMap<String,TableInfo>();

    for (Entry<KeyExtent,Tablet> entry : onlineTabletsCopy.entrySet()) {
      String tableId = entry.getKey().getTableId().toString();
      TableInfo table = tables.get(tableId);
      if (table == null) {
        table = new TableInfo();
        table.minors = new Compacting();
        table.majors = new Compacting();
        tables.put(tableId, table);
      }
      Tablet tablet = entry.getValue();
      long recs = tablet.getNumEntries();
      table.tablets++;
      table.onlineTablets++;
      table.recs += recs;
      table.queryRate += tablet.queryRate();
      table.queryByteRate += tablet.queryByteRate();
      table.ingestRate += tablet.ingestRate();
      table.ingestByteRate += tablet.ingestByteRate();
      table.scanRate += tablet.scanRate();
      long recsInMemory = tablet.getNumEntriesInMemory();
      table.recsInMemory += recsInMemory;
      if (tablet.minorCompactionRunning())
        table.minors.running++;
      if (tablet.minorCompactionQueued())
        table.minors.queued++;
      if (tablet.majorCompactionRunning())
        table.majors.running++;
      if (tablet.majorCompactionQueued())
        table.majors.queued++;
    }

    for (Entry<String,MapCounter<ScanRunState>> entry : scanCounts.entrySet()) {
      TableInfo table = tables.get(entry.getKey());
      if (table == null) {
        table = new TableInfo();
        tables.put(entry.getKey(), table);
      }

      if (table.scans == null)
        table.scans = new Compacting();

      table.scans.queued += entry.getValue().get(ScanRunState.QUEUED);
      table.scans.running += entry.getValue().get(ScanRunState.RUNNING);
    }

    ArrayList<KeyExtent> offlineTabletsCopy = new ArrayList<KeyExtent>();
    synchronized (this.unopenedTablets) {
      synchronized (this.openingTablets) {
        offlineTabletsCopy.addAll(this.unopenedTablets);
        offlineTabletsCopy.addAll(this.openingTablets);
      }
    }

    for (KeyExtent extent : offlineTabletsCopy) {
      String tableId = extent.getTableId().toString();
      TableInfo table = tables.get(tableId);
      if (table == null) {
        table = new TableInfo();
        tables.put(tableId, table);
      }
      table.tablets++;
    }
View Full Code Here


    TabletServerStatus getStatus(TServerInstance server) {
      TabletServerStatus result = new TabletServerStatus();
      result.tableMap = new HashMap<String,TableInfo>();
      for (KeyExtent extent : extents) {
        String table = extent.getTableId().toString();
        TableInfo info = result.tableMap.get(table);
        if (info == null)
          result.tableMap.put(table, info = new TableInfo());
        info.onlineTablets++;
        info.recs = info.onlineTablets;
        info.ingestRate = 123.;
        info.queryRate = 456.;
      }
View Full Code Here

    TabletServerStatus getStatus(TServerInstance server) {
      TabletServerStatus result = new TabletServerStatus();
      result.tableMap = new HashMap<String,TableInfo>();
      for (KeyExtent extent : extents) {
        String table = extent.getTableId().toString();
        TableInfo info = result.tableMap.get(table);
        if (info == null)
          result.tableMap.put(table, info = new TableInfo());
        info.onlineTablets++;
        info.recs = info.onlineTablets;
        info.ingestRate = 123.;
        info.queryRate = 456.;
      }
View Full Code Here

    String tablename = null;
    for (Object c : config) {
      if (c instanceof String) {
        tablename = (String) c;
      } else {
        TableInfo info = new TableInfo();
        int count = (Integer) c;
        info.onlineTablets = count;
        info.tablets = count;
        result.tableMap.put(tablename, info);
      }
View Full Code Here

        indexCacheRequestTracker.startingUpdates();
        dataCacheHitTracker.startingUpdates();
        dataCacheRequestTracker.startingUpdates();

        for (TabletServerStatus server : mmi.tServerInfo) {
          TableInfo summary = TableInfoUtil.summarizeTableStats(server);
          totalIngestRate += summary.ingestRate;
          totalIngestByteRate += summary.ingestByteRate;
          totalQueryRate += summary.queryRate;
          totalScanRate += summary.scanRate;
          totalQueryByteRate += summary.queryByteRate;
View Full Code Here

  // define what it means for a tablet to be busy
  private static String busiest(Map<String,TableInfo> tables) {
    String result = null;
    double busiest = Double.NEGATIVE_INFINITY;
    for (Entry<String,TableInfo> entry : tables.entrySet()) {
      TableInfo info = entry.getValue();
      double busy = info.ingestRate + info.queryRate;
      if (busy > busiest) {
        busiest = busy;
        result = entry.getKey();
      }
View Full Code Here

    total.queryByteRate += more.queryByteRate;
    total.scanRate += more.scanRate;
  }
 
  public static TableInfo summarizeTableStats(TabletServerStatus status) {
    TableInfo summary = new TableInfo();
    summary.majors = new Compacting();
    summary.minors = new Compacting();
    summary.scans = new Compacting();
    for (TableInfo rates : status.tableMap.values()) {
      TableInfoUtil.add(summary, rates);
View Full Code Here

  @Override
  public MasterMonitorInfo getMasterStats(TInfo info, TCredentials credentials) throws ThriftSecurityException {
    final MasterMonitorInfo result = new MasterMonitorInfo();

    result.tServerInfo = new ArrayList<TabletServerStatus>();
    result.tableMap = new DefaultMap<String,TableInfo>(new TableInfo());
    for (Entry<TServerInstance,TabletServerStatus> serverEntry : master.tserverStatus.entrySet()) {
      final TabletServerStatus status = serverEntry.getValue();
      result.tServerInfo.add(status);
      for (Entry<String,TableInfo> entry : status.tableMap.entrySet()) {
        TableInfoUtil.add(result.tableMap.get(entry.getKey()), entry.getValue());
View Full Code Here

   
    Map<String,Object> results = new HashMap<String,Object>();
    List<Map<String,Object>> servers = new ArrayList<Map<String,Object>>();
   
    for (TabletServerStatus status : Monitor.getMmi().tServerInfo) {
      TableInfo summary = TableInfoUtil.summarizeTableStats(status);
      servers.add(addServer(status.name, TServerLinkType.displayName(status.name), status.osLoad, summary.ingestRate, summary.queryRate,
          summary.ingestByteRate / 1000000.0, summary.queryByteRate / 1000000.0, summary.scans.running + summary.scans.queued, Monitor.getLookupRate(),
          status.holdTime));
    }
   
View Full Code Here

      sb.append("\n<server id='").append(status.name).append("'>\n");
      sb.append("<hostname>").append(TServerLinkType.displayName(status.name)).append("</hostname>");
      sb.append("<lastContact>").append(System.currentTimeMillis() - status.lastContact).append("</lastContact>\n");
      sb.append("<osload>").append(status.osLoad).append("</osload>\n");
     
      TableInfo summary = TableInfoUtil.summarizeTableStats(status);
      sb.append("<compactions>\n");
      sb.append("<major>").append("<running>").append(summary.majors.running).append("</running>").append("<queued>").append(summary.majors.queued)
          .append("</queued>").append("</major>\n");
      sb.append("<minor>").append("<running>").append(summary.minors.running).append("</running>").append("<queued>").append(summary.minors.queued)
          .append("</queued>").append("</minor>\n");
      sb.append("</compactions>\n");
     
      sb.append("<tablets>").append(summary.tablets).append("</tablets>\n");
     
      sb.append("<ingest>").append(summary.ingestRate).append("</ingest>\n");
      sb.append("<query>").append(summary.queryRate).append("</query>\n");
      sb.append("<ingestMB>").append(summary.ingestByteRate / 1000000.0).append("</ingestMB>\n");
      sb.append("<queryMB>").append(summary.queryByteRate / 1000000.0).append("</queryMB>\n");
      sb.append("<scans>").append(summary.scans.running + summary.scans.queued).append("</scans>");
      sb.append("<scansessions>").append(Monitor.getLookupRate()).append("</scansessions>\n");
      sb.append("<holdtime>").append(status.holdTime).append("</holdtime>\n");
      totalIngest += summary.ingestRate;
      totalQuery += summary.queryRate;
      totalEntries += summary.recs;
      sb.append("</server>\n");
    }
    sb.append("\n</servers>\n");
   
    sb.append("\n<masterGoalState>" + Monitor.getMmi().goalState + "</masterGoalState>\n");
    sb.append("\n<masterState>" + Monitor.getMmi().state + "</masterState>\n");
   
    sb.append("\n<badTabletServers>\n");
    for (Entry<String,Byte> entry : Monitor.getMmi().badTServers.entrySet()) {
      sb.append(String.format("<badTabletServer id='%s' status='%s'/>\n", entry.getKey(), TabletServerState.getStateById(entry.getValue())));
    }
    sb.append("\n</badTabletServers>\n");
   
    sb.append("\n<tabletServersShuttingDown>\n");
    for (String server : Monitor.getMmi().serversShuttingDown) {
      sb.append(String.format("<server id='%s'/>\n", server));
    }
    sb.append("\n</tabletServersShuttingDown>\n");
   
    sb.append(String.format("\n<unassignedTablets>%d</unassignedTablets>\n", Monitor.getMmi().unassignedTablets));
   
    sb.append("\n<deadTabletServers>\n");
    for (DeadServer dead : Monitor.getMmi().deadTabletServers) {
      sb.append(String.format("<deadTabletServer id='%s' lastChange='%d' status='%s'/>\n", dead.server, dead.lastStatus, dead.status));
    }
    sb.append("\n</deadTabletServers>\n");
   
    sb.append("\n<deadLoggers>\n");
    for (DeadServer dead : Monitor.getMmi().deadTabletServers) {
      sb.append(String.format("<deadLogger id='%s' lastChange='%d' status='%s'/>\n", dead.server, dead.lastStatus, dead.status));
    }
    sb.append("\n</deadLoggers>\n");
   
    sb.append("\n<tables>\n");
    Instance instance = HdfsZooInstance.getInstance();
    for (Entry<String,TableInfo> entry : tableStats.entrySet()) {
      TableInfo tableInfo = entry.getValue();
     
      sb.append("\n<table>\n");
      String tableId = entry.getKey();
      String tableName = "unknown";
      String tableState = "unknown";
View Full Code Here

TOP

Related Classes of org.apache.accumulo.core.master.thrift.TableInfo

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.