Как сделать пул соединений для Google Cloud Bigtable - PullRequest
1 голос
/ 09 апреля 2019

Существует ли какая-либо встроенная библиотека или требуется реализовать собственную?

Я пытался проверить здесь, но не уверен, как двигаться дальше: Пул соединений Bigtable

Я попробовал приведенный ниже код, но не совсем уверен, как двигаться дальше:

import com.google.cloud.bigtable.config.BigtableOptions;
import com.google.cloud.bigtable.config.CredentialOptions;
import com.google.cloud.bigtable.grpc.BigtableSession;
import com.google.cloud.bigtable.grpc.io.ChannelPool;
import com.mahindra.digisense.config.AppConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.security.GeneralSecurityException;

@Component
public class BigTableConnectionPoolingExample {

    @Autowired
    private AppConfig.BigTableConfig bigTableConfig;

    private void bigTableConnectionPooling() throws IOException, GeneralSecurityException {
        CredentialOptions credentialOptions = CredentialOptions.jsonCredentials(new FileInputStream(new File(bigTableConfig.getCredentialsJson())));
        BigtableOptions.Builder builder = new BigtableOptions.Builder();
        builder.setCredentialOptions(credentialOptions);
        ChannelPool.ChannelFactory channelFactory = (ChannelPool.ChannelFactory) BigtableSession.createChannelPool(bigTableConfig.getInstanceId(), builder.build());
        ChannelPool channelPool = new ChannelPool(channelFactory,3);
    }
}

Вот еще один вопрос переполнения стека , на который нет ответов.

1 Ответ

0 голосов
/ 20 июня 2019

Как отмечает Соломон Дускис, мы призываем новых людей начать работу с идиоматическим клиентом Bigtable в google-cloud-java .Клиент подходит для производственного использования, однако мы не доработали клиентский API, поэтому можем вносить изменения, несовместимые с предыдущими версиями.

Если вы используете HBase-клиент из Cloud Bigtable Client , вы можете настроить количество каналов данных, используемых под ним, а также количество RPC в полете на канал.Но мы рекомендуем сначала профилировать приложение, так как вы сможете добиться хорошей производительности и насыщать кластеры, не настраивая вручную эти параметры по умолчанию.

...