com.datastax.driver.core.Metadata.getPartitioner()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(8.1k)|赞(0)|评价(0)|浏览(123)

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

Metadata.getPartitioner介绍

[英]The partitioner in use as reported by the Cassandra nodes.
[中]Cassandra节点报告的正在使用的分区器。

代码示例

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

@Override
public String getPartitioner()
{
  return executeWithSession(session -> session.getCluster().getMetadata().getPartitioner());
}

代码示例来源:origin: org.apache.beam/beam-sdks-java-io-cassandra

/**
 * Check if the current partitioner is the Murmur3 (default in Cassandra version newer than 2).
 */
@VisibleForTesting
static boolean isMurmur3Partitioner(Cluster cluster) {
 return MURMUR3PARTITIONER.equals(cluster.getMetadata().getPartitioner());
}

代码示例来源:origin: com.bazaarvoice.emodb/emodb-common-astyanax

private void errorIfPartitionerMisconfigured() {
  String cassandraPartitioner = _cqlSession.getCluster().getMetadata().getPartitioner();
  List<CassandraPartitioner> compatible = Lists.newArrayList();
  for (CassandraPartitioner partitioner : CassandraPartitioner.values()) {
    if (partitioner.matches(cassandraPartitioner)) {
      return;
    }
    compatible.add(partitioner);
  }
  throw new IllegalStateException(format(
      "Cassandra keyspace '%s' uses the %s.  The application connection pool 'partitioner' setting must be set to %s.",
      getName(), cassandraPartitioner.substring(cassandraPartitioner.lastIndexOf('.') + 1),
      Joiner.on(" or ").join(Collections2.transform(compatible, new Function<CassandraPartitioner, Object>() {
    @Override
    public Object apply(CassandraPartitioner partitioner) {
      return "'" + partitioner.name().toLowerCase() + "'";
    }
  }))));
}

代码示例来源:origin: bazaarvoice/emodb

private void errorIfPartitionerMisconfigured() {
  String cassandraPartitioner = _cqlSession.getCluster().getMetadata().getPartitioner();
  List<CassandraPartitioner> compatible = Lists.newArrayList();
  for (CassandraPartitioner partitioner : CassandraPartitioner.values()) {
    if (partitioner.matches(cassandraPartitioner)) {
      return;
    }
    compatible.add(partitioner);
  }
  throw new IllegalStateException(format(
      "Cassandra keyspace '%s' uses the %s.  The application connection pool 'partitioner' setting must be set to %s.",
      getName(), cassandraPartitioner.substring(cassandraPartitioner.lastIndexOf('.') + 1),
      Joiner.on(" or ").join(Collections2.transform(compatible, new Function<CassandraPartitioner, Object>() {
    @Override
    public Object apply(CassandraPartitioner partitioner) {
      return "'" + partitioner.name().toLowerCase() + "'";
    }
  }))));
}

代码示例来源:origin: com.facebook.presto/presto-cassandra

@Override
public String getPartitioner()
{
  return executeWithSession(session -> session.getCluster().getMetadata().getPartitioner());
}

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

@Override
public String getPartitioner()
{
  return executeWithSession(session -> session.getCluster().getMetadata().getPartitioner());
}

代码示例来源:origin: stackoverflow.com

LOGGER.info("Connected to cluster: " + metadata.getClusterName() + " with partitioner: " + metadata.getPartitioner());
metadata.getAllHosts().stream().forEach((host) -> {
  LOGGER.info("Cassandra datacenter: " + host.getDatacenter() + " | address: " + host.getAddress() + " | rack: " + host.getRack());

代码示例来源:origin: org.apache.beam/beam-sdks-java-io-cassandra

private Cluster createClusterMock() {
 Metadata metadata = Mockito.mock(Metadata.class);
 KeyspaceMetadata keyspaceMetadata = Mockito.mock(KeyspaceMetadata.class);
 TableMetadata tableMetadata = Mockito.mock(TableMetadata.class);
 ColumnMetadata columnMetadata = Mockito.mock(ColumnMetadata.class);
 Mockito.when(metadata.getPartitioner()).thenReturn(MURMUR3_PARTITIONER);
 Mockito.when(metadata.getKeyspace(Mockito.anyString())).thenReturn(keyspaceMetadata);
 Mockito.when(keyspaceMetadata.getTable(Mockito.anyString())).thenReturn(tableMetadata);
 Mockito.when(tableMetadata.getPartitionKey())
   .thenReturn(Collections.singletonList(columnMetadata));
 Mockito.when(columnMetadata.getName()).thenReturn("$pk");
 Cluster cluster = Mockito.mock(Cluster.class);
 Mockito.when(cluster.getMetadata()).thenReturn(metadata);
 return cluster;
}

代码示例来源:origin: org.apache.beam/beam-sdks-java-io-cassandra

LOG.info("Number of desired splits is {}", numSplits);
SplitGenerator splitGenerator = new SplitGenerator(cluster.getMetadata().getPartitioner());
List<BigInteger> tokens =
  cluster

代码示例来源:origin: org.janusgraph/janusgraph-cql

fb.multiQuery(false);
final String partitioner = this.cluster.getMetadata().getPartitioner();
switch (partitioner.substring(partitioner.lastIndexOf('.') + 1)) {
  case "RandomPartitioner":

代码示例来源:origin: org.apache.cassandra/cassandra-all

public void init(String keyspace)
{
  Cluster.Builder builder = Cluster.builder().addContactPoints(hosts).withPort(port);
  if (sslOptions != null)
    builder.withSSL(sslOptions);
  if (authProvider != null)
    builder = builder.withAuthProvider(authProvider);
  try (Cluster cluster = builder.build(); Session session = cluster.connect())
  {
    Metadata metadata = cluster.getMetadata();
    Set<TokenRange> tokenRanges = metadata.getTokenRanges();
    IPartitioner partitioner = FBUtilities.newPartitioner(metadata.getPartitioner());
    TokenFactory tokenFactory = partitioner.getTokenFactory();
    for (TokenRange tokenRange : tokenRanges)
    {
      Set<Host> endpoints = metadata.getReplicas(Metadata.quote(keyspace), tokenRange);
      Range<Token> range = new Range<>(tokenFactory.fromString(tokenRange.getStart().getValue().toString()),
                       tokenFactory.fromString(tokenRange.getEnd().getValue().toString()));
      for (Host endpoint : endpoints)
        addRangeForEndpoint(range, endpoint.getAddress());
    }
    Types types = fetchTypes(keyspace, session);
    tables.putAll(fetchTables(keyspace, session, partitioner, types));
    // We only need the CFMetaData for the views, so we only load that.
    tables.putAll(fetchViews(keyspace, session, partitioner, types));
  }
}

代码示例来源:origin: jsevellec/cassandra-unit

public void init(String keyspace)
{
  Cluster.Builder builder = Cluster.builder().addContactPoints(hosts).withPort(port);
  if (sslOptions != null)
    builder.withSSL(sslOptions);
  if (authProvider != null)
    builder = builder.withAuthProvider(authProvider);
  try (Cluster cluster = builder.build(); Session session = cluster.connect())
  {
    Metadata metadata = cluster.getMetadata();
    Set<TokenRange> tokenRanges = metadata.getTokenRanges();
    IPartitioner partitioner = FBUtilities.newPartitioner(metadata.getPartitioner());
    TokenFactory tokenFactory = partitioner.getTokenFactory();
    for (TokenRange tokenRange : tokenRanges)
    {
      Set<Host> endpoints = metadata.getReplicas(Metadata.quote(keyspace), tokenRange);
      Range<Token> range = new Range<>(tokenFactory.fromString(tokenRange.getStart().getValue().toString()),
                       tokenFactory.fromString(tokenRange.getEnd().getValue().toString()));
      for (Host endpoint : endpoints)
        addRangeForEndpoint(range, endpoint.getAddress());
    }
    Types types = fetchTypes(keyspace, session);
    tables.putAll(fetchTables(keyspace, session, partitioner, types));
    // We only need the CFMetaData for the views, so we only load that.
    tables.putAll(fetchViews(keyspace, session, partitioner, types));
  }
}

代码示例来源:origin: com.strapdata.cassandra/cassandra-all

public void init(String keyspace)
{
  Cluster.Builder builder = Cluster.builder().addContactPoints(hosts).withPort(port);
  if (sslOptions != null)
    builder.withSSL(sslOptions);
  if (authProvider != null)
    builder = builder.withAuthProvider(authProvider);
  try (Cluster cluster = builder.build(); Session session = cluster.connect())
  {
    Metadata metadata = cluster.getMetadata();
    Set<TokenRange> tokenRanges = metadata.getTokenRanges();
    IPartitioner partitioner = FBUtilities.newPartitioner(metadata.getPartitioner());
    TokenFactory tokenFactory = partitioner.getTokenFactory();
    for (TokenRange tokenRange : tokenRanges)
    {
      Set<Host> endpoints = metadata.getReplicas(Metadata.quote(keyspace), tokenRange);
      Range<Token> range = new Range<>(tokenFactory.fromString(tokenRange.getStart().getValue().toString()),
                       tokenFactory.fromString(tokenRange.getEnd().getValue().toString()));
      for (Host endpoint : endpoints)
        addRangeForEndpoint(range, endpoint.getAddress());
    }
    Types types = fetchTypes(keyspace, session);
    tables.putAll(fetchTables(keyspace, session, partitioner, types));
    // We only need the CFMetaData for the views, so we only load that.
    tables.putAll(fetchViews(keyspace, session, partitioner, types));
  }
}

相关文章