Что означают «другие регионы» в веб-интерфейсе hbase? - PullRequest
0 голосов
/ 22 октября 2018

Я объединил некоторые области таблицы в моем кластере, исключений не было.После этого я обнаружил в веб-интерфейсе этой таблицы столбец с именем «другие регионы», значение которого изменилось enter image description here

Может кто-нибудь помочь прояснить это?

1 Ответ

0 голосов
/ 23 октября 2018

Я прочитал исходный код и обнаружил, что другой регион - это те регионы, состояния которых не находятся в {OPEN |ОФФЛАЙН |РАЗДЕЛИТЬ |FAILED_OPEN |FAILED_CLOSE}.

Код находится в файле 'MasterStatusTmplImpl.java':

  Map<RegionState.State, List<HRegionInfo>> tableRegions =
      master.getAssignmentManager().getRegionStates()
        .getRegionByStateOfTable(tableName);
  int openRegionsCount = tableRegions.get(RegionState.State.OPEN).size();
  int offlineRegionsCount = tableRegions.get(RegionState.State.OFFLINE).size();
  int splitRegionsCount = tableRegions.get(RegionState.State.SPLIT).size();
  int failedRegionsCount = tableRegions.get(RegionState.State.FAILED_OPEN).size()
         + tableRegions.get(RegionState.State.FAILED_CLOSE).size();
  int otherRegionsCount = 0;
  for (List<HRegionInfo> list: tableRegions.values()) {
     otherRegionsCount += list.size();
  }
  // now subtract known states
  otherRegionsCount = otherRegionsCount - openRegionsCount
                 - failedRegionsCount - offlineRegionsCount
                 - splitRegionsCount;

В соответствии с этим, когда я объединял некоторые регионы в новые регионы, состояния старых регионов переходили в MERGED, который будет учитываться в «другом регионе» в веб-интерфейсе пользователя

. Кажется, что когда состояние региона переходит в MERGED, оно больше не меняется.Как и график, представленный в официальном документе: enter image description here

...