REST API to query Apache HBase in Azure HDInsight

This article describes troubleshooting steps and possible resolutions for issues when interacting with Azure HDInsight clusters.

Issue

Using Apache HBase REST interface to query a table under a namespace other than the default results in a runtime error (HTTP status 500).

Cause

HBase REST API is only supported when using the default namespace. This is a known issue with regard to use HBase namespaces or making calls that refer to specific GETs on columns with column families with REST server on HDInsight. This is because of a security issue with HDInsight Gateway. When using the API to create a table with a namespace, accessing columns via column families, you need specify the : character, which is considered a security problem in the IIS Gateway module.

Mitigation

Bypass the Gateway/REST server by deploying your application on a VM that is located in the same Azure VNet as the HDInsight cluster. Then you can communicate with HBase either directly via RPC (bypassing REST server entirely), or to individual REST servers running on worker nodes bypassing HDInsight Gateways.

Next steps

If you didn't see your problem or are unable to solve your issue, visit the following channel for more support:

  • If you need more help, you can submit a support request from the Azure portal.