io.prestosql.spi.Node类的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(284)

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

Node介绍

暂无

代码示例

代码示例来源:origin: prestosql/presto

  1. private static List<HostAddress> getAddressesForNodes(Map<String, Node> nodeMap, Iterable<String> nodeIdentifiers)
  2. {
  3. ImmutableList.Builder<HostAddress> nodes = ImmutableList.builder();
  4. for (String id : nodeIdentifiers) {
  5. Node node = nodeMap.get(id);
  6. if (node != null) {
  7. nodes.add(node.getHostAndPort());
  8. }
  9. }
  10. return nodes.build();
  11. }

代码示例来源:origin: io.prestosql/presto-main

  1. public int getQueuedSplitCountForStage(Node node)
  2. {
  3. return queuedSplitCountByNode.getOrDefault(node.getNodeIdentifier(), 0) + assignmentCount.getOrDefault(node, 0);
  4. }

代码示例来源:origin: io.prestosql/presto-main

  1. private void addRows(Builder table, Set<Node> nodes, NodeState state)
  2. {
  3. for (Node node : nodes) {
  4. table.addRow(node.getNodeIdentifier(), node.getHttpUri().toString(), getNodeVersion(node), isCoordinator(node), state.toString().toLowerCase(Locale.ENGLISH));
  5. }
  6. }

代码示例来源:origin: prestosql/presto

  1. @Override
  2. public ConnectorSplitSource getSplits(ConnectorTransactionHandle transaction, ConnectorSession session, ConnectorTableLayoutHandle layout, SplitSchedulingStrategy splitSchedulingStrategy)
  3. {
  4. JmxTableLayoutHandle jmxLayout = (JmxTableLayoutHandle) layout;
  5. JmxTableHandle tableHandle = jmxLayout.getTable();
  6. TupleDomain<ColumnHandle> predicate = jmxLayout.getConstraint();
  7. //TODO is there a better way to get the node column?
  8. Optional<JmxColumnHandle> nodeColumnHandle = tableHandle.getColumnHandles().stream()
  9. .filter(jmxColumnHandle -> jmxColumnHandle.getColumnName().equals(NODE_COLUMN_NAME))
  10. .findFirst();
  11. checkState(nodeColumnHandle.isPresent(), "Failed to find %s column", NODE_COLUMN_NAME);
  12. List<ConnectorSplit> splits = nodeManager.getAllNodes().stream()
  13. .filter(node -> {
  14. NullableValue value = NullableValue.of(createUnboundedVarcharType(), utf8Slice(node.getNodeIdentifier()));
  15. return predicate.overlaps(fromFixedValues(ImmutableMap.of(nodeColumnHandle.get(), value)));
  16. })
  17. .map(node -> new JmxSplit(tableHandle, ImmutableList.of(node.getHostAndPort())))
  18. .collect(toList());
  19. return new FixedSplitSource(splits);
  20. }
  21. }

代码示例来源:origin: io.prestosql/presto-main

  1. if (useNetworkTopology && (includeCoordinator || !coordinatorNodeIds.contains(node.getNodeIdentifier()))) {
  2. NetworkLocation location = networkLocationCache.get(node.getHostAndPort());
  3. for (int i = 0; i <= location.getSegments().size(); i++) {
  4. workersByNetworkPath.put(location.subLocation(0, i), node);
  5. byHostAndPort.put(node.getHostAndPort(), node);
  6. InetAddress host = InetAddress.getByName(node.getHttpUri().getHost());
  7. byHost.put(host, node);

代码示例来源:origin: io.prestosql/presto-main

  1. private synchronized void announceNodes(Set<Node> activeNodes, Set<Node> inactiveNodes)
  2. {
  3. ImmutableList.Builder<ServiceDescriptor> descriptors = ImmutableList.builder();
  4. for (Node node : Iterables.concat(activeNodes, inactiveNodes)) {
  5. descriptors.add(serviceDescriptor("presto")
  6. .setNodeId(node.getNodeIdentifier())
  7. .addProperty("http", node.getHttpUri().toString())
  8. .addProperty("node_version", ((PrestoNode) node).getNodeVersion().toString())
  9. .addProperty("coordinator", String.valueOf(node.isCoordinator()))
  10. .build());
  11. }
  12. this.descriptors = descriptors.build();
  13. }

代码示例来源:origin: prestosql/presto

  1. @Inject
  2. public ShardCleaner(
  3. DaoSupplier<ShardDao> shardDaoSupplier,
  4. Ticker ticker,
  5. NodeManager nodeManager,
  6. StorageService storageService,
  7. Optional<BackupStore> backupStore,
  8. ShardCleanerConfig config)
  9. {
  10. this(
  11. shardDaoSupplier,
  12. nodeManager.getCurrentNode().getNodeIdentifier(),
  13. nodeManager.getCurrentNode().isCoordinator(),
  14. ticker,
  15. storageService,
  16. backupStore,
  17. config.getMaxTransactionAge(),
  18. config.getTransactionCleanerInterval(),
  19. config.getLocalCleanerInterval(),
  20. config.getLocalCleanTime(),
  21. config.getBackupCleanerInterval(),
  22. config.getBackupCleanTime(),
  23. config.getBackupDeletionThreads(),
  24. config.getMaxCompletedTransactionAge());
  25. }

代码示例来源:origin: io.prestosql/presto-main

  1. @Inject
  2. public TaskCountEstimator(NodeSchedulerConfig nodeSchedulerConfig, InternalNodeManager nodeManager)
  3. {
  4. requireNonNull(nodeSchedulerConfig, "nodeSchedulerConfig is null");
  5. requireNonNull(nodeManager, "nodeManager is null");
  6. this.numberOfNodes = () -> {
  7. Set<Node> activeNodes = nodeManager.getAllNodes().getActiveNodes();
  8. if (nodeSchedulerConfig.isIncludeCoordinator()) {
  9. return activeNodes.size();
  10. }
  11. return toIntExact(activeNodes.stream()
  12. .filter(node -> !node.isCoordinator())
  13. .count());
  14. };
  15. }

代码示例来源:origin: io.prestosql/presto-main

  1. @Override
  2. public URI createMemoryInfoLocation(Node node)
  3. {
  4. requireNonNull(node, "node is null");
  5. return uriBuilderFrom(node.getHttpUri())
  6. .appendPath("/v1/memory").build();
  7. }
  8. }

代码示例来源:origin: prestosql/presto

  1. outputStorageFormat.getOutputFormat(),
  2. writerImplementation,
  3. nodeManager.getCurrentNode().getVersion(),
  4. nodeManager.getCurrentNode().getHttpUri().getHost(),
  5. session.getIdentity().getPrincipal().map(Principal::getName).orElse(null),
  6. nodeManager.getEnvironment(),

代码示例来源:origin: prestosql/presto

  1. MBeanServer platformMBeanServer = ManagementFactory.getPlatformMBeanServer();
  2. binder.bind(MBeanServer.class).toInstance(new RebindSafeMBeanServer(platformMBeanServer));
  3. binder.bind(NodeVersion.class).toInstance(new NodeVersion(context.getNodeManager().getCurrentNode().getVersion()));
  4. binder.bind(NodeManager.class).toInstance(context.getNodeManager());
  5. binder.bind(TypeManager.class).toInstance(context.getTypeManager());

代码示例来源:origin: prestosql/presto

  1. private ConnectorSplit createSplit(BucketShards bucketShards)
  2. {
  3. if (bucketShards.getBucketNumber().isPresent()) {
  4. return createBucketSplit(bucketShards.getBucketNumber().getAsInt(), bucketShards.getShards());
  5. }
  6. verify(bucketShards.getShards().size() == 1, "wrong shard count for non-bucketed table");
  7. ShardNodes shard = getOnlyElement(bucketShards.getShards());
  8. UUID shardId = shard.getShardUuid();
  9. Set<String> nodeIds = shard.getNodeIdentifiers();
  10. List<HostAddress> addresses = getAddressesForNodes(nodesById, nodeIds);
  11. if (addresses.isEmpty()) {
  12. if (!backupAvailable) {
  13. throw new PrestoException(RAPTOR_NO_HOST_FOR_SHARD, format("No host for shard %s found: %s", shardId, nodeIds));
  14. }
  15. // Pick a random node and optimistically assign the shard to it.
  16. // That node will restore the shard from the backup location.
  17. Set<Node> availableNodes = nodeSupplier.getWorkerNodes();
  18. if (availableNodes.isEmpty()) {
  19. throw new PrestoException(NO_NODES_AVAILABLE, "No nodes available to run query");
  20. }
  21. Node node = selectRandom(availableNodes);
  22. shardManager.replaceShardAssignment(tableId, shardId, node.getNodeIdentifier(), true);
  23. addresses = ImmutableList.of(node.getHostAndPort());
  24. }
  25. return new RaptorSplit(connectorId, shardId, addresses, effectivePredicate, transactionId);
  26. }

代码示例来源:origin: prestosql/presto

  1. if (useNetworkTopology && (includeCoordinator || !coordinatorNodeIds.contains(node.getNodeIdentifier()))) {
  2. NetworkLocation location = networkLocationCache.get(node.getHostAndPort());
  3. for (int i = 0; i <= location.getSegments().size(); i++) {
  4. workersByNetworkPath.put(location.subLocation(0, i), node);
  5. byHostAndPort.put(node.getHostAndPort(), node);
  6. InetAddress host = InetAddress.getByName(node.getHttpUri().getHost());
  7. byHost.put(host, node);

代码示例来源:origin: prestosql/presto

  1. private synchronized void announceNodes(Set<Node> activeNodes, Set<Node> inactiveNodes)
  2. {
  3. ImmutableList.Builder<ServiceDescriptor> descriptors = ImmutableList.builder();
  4. for (Node node : Iterables.concat(activeNodes, inactiveNodes)) {
  5. descriptors.add(serviceDescriptor("presto")
  6. .setNodeId(node.getNodeIdentifier())
  7. .addProperty("http", node.getHttpUri().toString())
  8. .addProperty("node_version", ((PrestoNode) node).getNodeVersion().toString())
  9. .addProperty("coordinator", String.valueOf(node.isCoordinator()))
  10. .build());
  11. }
  12. this.descriptors = descriptors.build();
  13. }

代码示例来源:origin: prestosql/presto

  1. @Inject
  2. public TaskCountEstimator(NodeSchedulerConfig nodeSchedulerConfig, InternalNodeManager nodeManager)
  3. {
  4. requireNonNull(nodeSchedulerConfig, "nodeSchedulerConfig is null");
  5. requireNonNull(nodeManager, "nodeManager is null");
  6. this.numberOfNodes = () -> {
  7. Set<Node> activeNodes = nodeManager.getAllNodes().getActiveNodes();
  8. if (nodeSchedulerConfig.isIncludeCoordinator()) {
  9. return activeNodes.size();
  10. }
  11. return toIntExact(activeNodes.stream()
  12. .filter(node -> !node.isCoordinator())
  13. .count());
  14. };
  15. }

代码示例来源:origin: prestosql/presto

  1. @Override
  2. public URI createMemoryInfoLocation(Node node)
  3. {
  4. requireNonNull(node, "node is null");
  5. return uriBuilderFrom(node.getHttpUri())
  6. .appendPath("/v1/memory").build();
  7. }
  8. }

代码示例来源:origin: io.prestosql/presto-memory

  1. @Inject
  2. public MemoryPageSinkProvider(MemoryPagesStore pagesStore, NodeManager nodeManager)
  3. {
  4. this(pagesStore, requireNonNull(nodeManager, "nodeManager is null").getCurrentNode().getHostAndPort());
  5. }

代码示例来源:origin: prestosql/presto

  1. public int getQueuedSplitCountForStage(Node node)
  2. {
  3. return queuedSplitCountByNode.getOrDefault(node.getNodeIdentifier(), 0) + assignmentCount.getOrDefault(node, 0);
  4. }

代码示例来源:origin: prestosql/presto

  1. log.info("Previously active node is missing: %s (last seen at %s)", missingNode.getNodeIdentifier(), missingNode.getHostAndPort());

代码示例来源:origin: prestosql/presto

  1. private void addRows(Builder table, Set<Node> nodes, NodeState state)
  2. {
  3. for (Node node : nodes) {
  4. table.addRow(node.getNodeIdentifier(), node.getHttpUri().toString(), getNodeVersion(node), isCoordinator(node), state.toString().toLowerCase(Locale.ENGLISH));
  5. }
  6. }

相关文章