如果我们在运行时在 HBase 中创建名称空间和表,它会影响应用程序的性能吗?

Can it affect the performace of application If we create the NameSpaces and Tables at runtime in HBase?

我们正在运行时创建命名空间和多个表(5 到 6 个),创建整个结构需要 10-15 秒。 HBase是否建议在运行时建表?

通常不建议在应用程序代码中创建 HBase table 或在运行时更改列族。首先,客户端在 table 准备好写入和读取时将毫无头绪,除非您明确告诉他们。这可能会使您的系统更加复杂。同时,系统的整体可用性存在问题,例如进行 ColumnFamily 修改时必须禁用 tables。其次,HBase 故事的模式对性能和功能非常重要。它需要仔细设计,并且在用户的应用程序读取和写入 table.

之前应该很好地理解它。

但是,如果1.你前面有非常清晰的架构设计,2.创建代码tables 是 运行 由配置的控制平面(而不是在应用程序业务逻辑中),您可以在运行时使用 Admin Java API 创建 tables。 =11=]