gpt4 book ai didi

org.apache.helix.store.zk.ZkHelixPropertyStore类的使用及代码示例

转载 作者:知者 更新时间:2024-03-15 09:30:49 26 4
gpt4 key购买 nike

本文整理了Java中org.apache.helix.store.zk.ZkHelixPropertyStore类的一些代码示例,展示了ZkHelixPropertyStore类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZkHelixPropertyStore类的具体详情如下:
包路径:org.apache.helix.store.zk.ZkHelixPropertyStore
类名称:ZkHelixPropertyStore

ZkHelixPropertyStore介绍

暂无

代码示例

代码示例来源:origin: apache/incubator-gobblin

/**
 * State store that stores instances of {@link State}s in a ZooKeeper-backed {@link HelixPropertyStore}
 * storeRootDir will be created when the first entry is written if it does not exist
 * @param connectString ZooKeeper connect string
 * @param storeRootDir The root directory for the state store
 * @param compressedValues should values be compressed for storage?
 * @param stateClass The type of state being stored
 * @throws IOException
 */
public ZkStateStore(String connectString, String storeRootDir, boolean compressedValues, Class<T> stateClass)
  throws IOException {
 this.compressedValues = compressedValues;
 this.stateClass = stateClass;
 ZkSerializer serializer = new ByteArraySerializer();
 propStore = new ZkHelixPropertyStore<byte[]>(connectString, serializer, storeRootDir);
}

代码示例来源:origin: apache/incubator-pinot

public ZNRecord get(String name) {
 return propertyStore.get(pathPrefix + "/" + name, null, AccessOption.PERSISTENT);
}

代码示例来源:origin: apache/incubator-pinot

public static void setClusterTenantIsolationEnabled(ZkHelixPropertyStore<ZNRecord> propertyStore,
  boolean isSingleTenantCluster) {
 final ZNRecord znRecord;
 final String path = constructPropertyStorePathForControllerConfig(CLUSTER_TENANT_ISOLATION_ENABLED_KEY);
 if (!propertyStore.exists(path, AccessOption.PERSISTENT)) {
  znRecord = new ZNRecord(CLUSTER_TENANT_ISOLATION_ENABLED_KEY);
 } else {
  znRecord = propertyStore.get(path, null, AccessOption.PERSISTENT);
 }
 znRecord.setBooleanField(CLUSTER_TENANT_ISOLATION_ENABLED_KEY, isSingleTenantCluster);
 propertyStore.set(path, znRecord, AccessOption.PERSISTENT);
}

代码示例来源:origin: apache/incubator-pinot

public static void removeResourceConfigFromPropertyStore(ZkHelixPropertyStore<ZNRecord> propertyStore,
  String resourceName) {
 String propertyStorePath = constructPropertyStorePathForResourceConfig(resourceName);
 if (propertyStore.exists(propertyStorePath, AccessOption.PERSISTENT)) {
  propertyStore.remove(propertyStorePath, AccessOption.PERSISTENT);
 }
}

代码示例来源:origin: apache/incubator-pinot

/**
 * Returns the segments for the given table.
 *
 * @param propertyStore Helix property store
 * @param tableNameWithType Table name with type suffix
 * @return List of segment names
 */
public static List<String> getSegments(ZkHelixPropertyStore<ZNRecord> propertyStore, String tableNameWithType) {
 String segmentsPath = constructPropertyStorePathForResource(tableNameWithType);
 if (propertyStore.exists(segmentsPath, AccessOption.PERSISTENT)) {
  return propertyStore.getChildNames(segmentsPath, AccessOption.PERSISTENT);
 } else {
  return Collections.emptyList();
 }
}

代码示例来源:origin: apache/helix

subscribedPaths.add(subRoot);
ZkHelixPropertyStore<ZNRecord> store =
  new ZkHelixPropertyStore<ZNRecord>(new ZkBaseDataAccessor<ZNRecord>(_gZkClient), subRoot,
    subscribedPaths);
store.set("/child0", new ZNRecord("child0"), AccessOption.PERSISTENT);
ZNRecord record = store.get("/child0", null, 0); // will put the record in cache
Assert.assertEquals(record.getId(), "child0");
record = store.get("/child0", null, 0);
Assert
  .assertEquals(record.getId(), "child0-new-1", "Cache shoulde be updated to latest create");
Thread.sleep(500); // should wait for zk callback to remove "/child0" from cache
try {
 record = store.get("/child0", null, AccessOption.THROW_EXCEPTION_IFNOTEXIST);
 Assert.fail("/child0 should have been removed");
} catch (ZkNoNodeException e) {
store.stop();
System.out.println("END testBackToBackRemoveAndSet() at "
  + new Date(System.currentTimeMillis()));

代码示例来源:origin: apache/incubator-pinot

private TableConfig getTableConfig(String tableName)
  throws IOException {
 ZNRecordSerializer serializer = new ZNRecordSerializer();
 String path = PropertyPathConfig.getPath(PropertyType.PROPERTYSTORE, zkPath);
 ZkHelixPropertyStore<ZNRecord> propertyStore = new ZkHelixPropertyStore<>(zkHost, serializer, path);
 ZNRecord tcZnRecord = propertyStore.get("/CONFIGS/TABLE/" + tableName, null, 0);
 TableConfig tableConfig = TableConfig.fromZnRecord(tcZnRecord);
 LOGGER.debug("Loaded table config");
 return tableConfig;
}

代码示例来源:origin: apache/incubator-pinot

public void set(String name, ZNRecord record) {
 propertyStore.set(pathPrefix + "/" + name, record, AccessOption.PERSISTENT);
}

代码示例来源:origin: apache/helix

subscribedPaths.add(subRoot);
ZkHelixPropertyStore<ZNRecord> store =
  new ZkHelixPropertyStore<ZNRecord>(new ZkBaseDataAccessor<ZNRecord>(_gZkClient), subRoot,
    subscribedPaths);
  String nodeId = getNodeId(i, j);
  String key = getSecondLevelKey(i, j);
  ZNRecord record = store.get(key, null, 0);
  Assert.assertEquals(record.getId(), nodeId);
 ZNRecord record = store.get("/node_0/childNode_0_0", null, 0);
 Assert.assertNotNull(record);
  + latency + " ms");
store.stop();
System.out.println("END testSet() at " + new Date(System.currentTimeMillis()));

代码示例来源:origin: apache/incubator-pinot

public static boolean getClusterTenantIsolationEnabled(ZkHelixPropertyStore<ZNRecord> propertyStore) {
  String controllerConfigPath = constructPropertyStorePathForControllerConfig(CLUSTER_TENANT_ISOLATION_ENABLED_KEY);
  if (propertyStore.exists(controllerConfigPath, AccessOption.PERSISTENT)) {
   ZNRecord znRecord = propertyStore.get(controllerConfigPath, null, AccessOption.PERSISTENT);
   if (znRecord.getSimpleFields().keySet().contains(CLUSTER_TENANT_ISOLATION_ENABLED_KEY)) {
    return znRecord.getBooleanField(CLUSTER_TENANT_ISOLATION_ENABLED_KEY, true);
   } else {
    return true;
   }
  } else {
   return true;
  }
 }
}

代码示例来源:origin: apache/helix

subscribedPaths.add(subRoot);
ZkHelixPropertyStore<ZNRecord> store =
  new ZkHelixPropertyStore<ZNRecord>(new ZkBaseDataAccessor<ZNRecord>(_gZkClient), subRoot,
    subscribedPaths);
store.subscribe("/", listener);
store.remove("/", 0);
  + expectDeleteNodes + " delete callbacks");
store.stop();
System.out.println("END testLocalTriggeredCallback() at "
  + new Date(System.currentTimeMillis()));

代码示例来源:origin: apache/incubator-pinot

@Test
public void testSegmentFlushSize()
  throws Exception {
 String zkSegmentsPath = "/SEGMENTS/" + TableNameBuilder.REALTIME.tableNameWithType(getTableName());
 List<String> segmentNames = _propertyStore.getChildNames(zkSegmentsPath, 0);
 for (String segmentName : segmentNames) {
  ZNRecord znRecord = _propertyStore.get(zkSegmentsPath + "/" + segmentName, null, 0);
  Assert.assertEquals(znRecord.getSimpleField(CommonConstants.Segment.FLUSH_THRESHOLD_SIZE),
    Integer.toString(getRealtimeSegmentFlushSize() / getNumKafkaPartitions()),
    "Segment: " + segmentName + " does not have the expected flush size");
 }
}

代码示例来源:origin: apache/incubator-pinot

private static void initPropertyStorePath(String helixClusterName, String zkPath) {
 String propertyStorePath = PropertyPathConfig.getPath(PropertyType.PROPERTYSTORE, helixClusterName);
 ZkHelixPropertyStore<ZNRecord> propertyStore =
   new ZkHelixPropertyStore<ZNRecord>(zkPath, new ZNRecordSerializer(), propertyStorePath);
 propertyStore.create("/CONFIGS", new ZNRecord(""), AccessOption.PERSISTENT);
 propertyStore.create("/CONFIGS/CLUSTER", new ZNRecord(""), AccessOption.PERSISTENT);
 propertyStore.create("/CONFIGS/TABLE", new ZNRecord(""), AccessOption.PERSISTENT);
 propertyStore.create("/CONFIGS/INSTANCE", new ZNRecord(""), AccessOption.PERSISTENT);
 propertyStore.create("/SCHEMAS", new ZNRecord(""), AccessOption.PERSISTENT);
 propertyStore.create("/SEGMENTS", new ZNRecord(""), AccessOption.PERSISTENT);
}

代码示例来源:origin: apache/incubator-pinot

/**
 * NOTE: this method is very expensive, use {@link #getSegments(ZkHelixPropertyStore, String)} instead if only segment
 * segment names are needed.
 */
public static List<RealtimeSegmentZKMetadata> getRealtimeSegmentZKMetadataListForTable(
  ZkHelixPropertyStore<ZNRecord> propertyStore, String resourceName) {
 List<RealtimeSegmentZKMetadata> resultList = new ArrayList<>();
 if (propertyStore == null) {
  return resultList;
 }
 String realtimeTableName = TableNameBuilder.REALTIME.tableNameWithType(resourceName);
 if (propertyStore.exists(constructPropertyStorePathForResource(realtimeTableName), AccessOption.PERSISTENT)) {
  List<ZNRecord> znRecordList = propertyStore
    .getChildren(constructPropertyStorePathForResource(realtimeTableName), null, AccessOption.PERSISTENT);
  if (znRecordList != null) {
   for (ZNRecord record : znRecordList) {
    resultList.add(new RealtimeSegmentZKMetadata(record));
   }
  }
 }
 return resultList;
}

代码示例来源:origin: apache/helix

List<String> subscribedPaths = Arrays.asList(subRoot);
ZkHelixPropertyStore<ZNRecord> store =
  new ZkHelixPropertyStore<ZNRecord>(new ZkBaseDataAccessor<ZNRecord>(_gZkClient), subRoot,
    subscribedPaths);
store.subscribe("/", listener);
  + expectDeleteNodes + " delete callbacks");
store.stop();
System.out.println("END testZkTriggeredCallback() at " + new Date(System.currentTimeMillis()));

代码示例来源:origin: apache/incubator-pinot

public boolean exist(String path) {
 return propertyStore.exists(pathPrefix + "/" + path, AccessOption.PERSISTENT);
}

代码示例来源:origin: apache/incubator-pinot

protected List<String> getExistingSegments(String realtimeTableName) {
 String propStorePath = ZKMetadataProvider.constructPropertyStorePathForResource(realtimeTableName);
 return _propertyStore.getChildNames(propStorePath, AccessOption.PERSISTENT);
}

代码示例来源:origin: apache/incubator-pinot

private void createHelixEntriesForHighLevelConsumer(TableConfig config, String realtimeTableName,
  IdealState idealState) {
 if (idealState == null) {
  idealState = PinotTableIdealStateBuilder
    .buildInitialHighLevelRealtimeIdealStateFor(realtimeTableName, config, _helixZkManager, _propertyStore,
      _enableBatchMessageMode);
  LOGGER.info("Adding helix resource with empty HLC IdealState for {}", realtimeTableName);
  _helixAdmin.addResource(_helixClusterName, realtimeTableName, idealState);
 } else {
  // TODO jfim: We get in this block if we're trying to add a HLC or it already exists. If it doesn't already exist, we need to set instance configs properly (which is done in buildInitialHighLevelRealtimeIdealState, surprisingly enough). For now, do nothing.
  LOGGER.info("Not reconfiguring HLC for table {}", realtimeTableName);
 }
 LOGGER.info("Successfully created empty ideal state for  high level consumer for {} ", realtimeTableName);
 // Finally, create the propertystore entry that will trigger watchers to create segments
 String tablePropertyStorePath = ZKMetadataProvider.constructPropertyStorePathForResource(realtimeTableName);
 if (!_propertyStore.exists(tablePropertyStorePath, AccessOption.PERSISTENT)) {
  _propertyStore.create(tablePropertyStorePath, new ZNRecord(realtimeTableName), AccessOption.PERSISTENT);
 }
}

代码示例来源:origin: apache/helix

@Override
public boolean[] remove(List<String> paths, int options) {
 if (_fallbackStore != null) {
  _fallbackStore.remove(paths, options);
 }
 return super.remove(paths, options);
}

代码示例来源:origin: apache/incubator-pinot

LOGGER.info("Received change notification for path: {}", path);
List<Stat> stats = new ArrayList<>();
List<ZNRecord> tableConfigs = _pinotHelixResourceManager.getPropertyStore().getChildren(TABLE_CONFIG, stats, 0);
      _pinotHelixResourceManager.getPropertyStore().getChildNames(SEGMENTS_PATH + "/" + realtimeTable, 0);

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com