Before you create an Apache Hive connection in Dawiso, check four things: the HiveServer2 version, its transport mode, its authentication method, and what the scanning account is allowed to see. The first three decide whether the scan connects. The fourth decides whether the scan is complete.

Connection prerequisites

  • HiveServer2 runs Apache Hive 2.3.0 or later.
  • The endpoint is Apache Hive, not Spark Thrift Server or Databricks in hive_metastore mode.
  • HiveServer2 uses the NONE, LDAP, or CUSTOM authentication method. Kerberos isn’t supported.
  • A dedicated scanning account exists and can see every database you want to catalog.
  • The machine that runs the scan can reach the HiveServer2 port.

Check the Hive version

Run the following query in Beeline against the HiveServer2 you plan to connect to:

SELECT version();

Dawiso supports Hive 2.3.0 and later and stops with an error on anything older. Older HiveServer2 versions don’t escape tabs and line breaks in table and column comments, which corrupts the metadata before it leaves the server. Hive 1.x and 2.x reached end of life in 2024.

Some services answer on the HiveServer2 port and identify themselves as HiveServer2 without being Apache Hive, for example Spark Thrift Server and Databricks in hive_metastore mode. Dawiso detects them and stops with an error. For the full list, see Endpoints that are not Apache Hive.

Check the transport mode

HiveServer2 serves its protocol in either binary mode or HTTP mode. One HiveServer2 process serves only one mode, and the Dawiso connection must use the same one. Dawiso supports both. The mode is set in hive-site.xml:

<property>
  <name>hive.server2.transport.mode</name>
  <value>binary</value>
</property>
Transport modeDefault portAlso needed
binary (the Hive default)10000Nothing
http10001The HTTP path, cliservice unless changed in hive.server2.thrift.http.path

HTTP mode often comes with one of these setups:

SetupStatus in Dawiso
Kerberos, carried as SPNEGO over HTTPNot supported
Apache Knox gateway, HTTPS with username and password, typically on port 8443Uses HTTP transport. Not validated
Azure HDInsight, HTTPS on port 443 onlyUses HTTP transport. Not validated

If your cluster uses Kerberos, Knox, or HDInsight, contact your Customer Success Account Manager before you plan the rollout.

Check the authentication method

The Dawiso connection offers three authentication methods. Each one matches a value of hive.server2.authentication on the server.

Server settingSelect in DawisoWhat the server checks
NONENone (SASL PLAIN)Nothing. Any username and password are accepted
LDAPLDAPUsername and password against your directory
CUSTOM, including PAMCustom / PAMUsername and password through the server’s own plug-in
KERBEROSNot supportedNot applicable
Warning

With hive.server2.authentication=NONE, HiveServer2 accepts any username with any password. A deliberately wrong password connects successfully, because the server never checks it. On such a server, a successful connection test proves only that HiveServer2 is reachable. It proves nothing about the credentials or about what the account can see.

Validated configurations

ConfigurationStatus
Hive 4.0.1, binary transport, username and passwordValidated end to end
Hive 4.0.1, HTTP transport, username and passwordValidated with a full scan
Hive 3.1.3Verified
LDAP and Custom / PAM authenticationNot validated against a live directory-backed HiveServer2. They use the same username and password exchange as the validated configurations; only the server side differs
SSL/TLS, on either transportNot validated end to end
Apache Knox, Azure HDInsightNot validated
KerberosNot supported

Create a scanning account

Create a dedicated account for Dawiso, such as an LDAP user or whatever identity your HiveServer2 authenticates. A dedicated account makes the scan’s access easy to audit and to revoke.

The scan runs only the following read-only commands:

CommandPurpose
SHOW DATABASESFind databases
SHOW TABLES IN <db>Find tables, views, and materialized views
SHOW VIEWS, SHOW MATERIALIZED VIEWSConfirm the object classification
DESCRIBE FORMATTED <db>.<object>Read table, view, and column metadata
SHOW CREATE TABLE <db>.<view>Read view definitions, the source of lineage
SHOW PARTITIONS <db>.<table>Read partitions, when partition scanning is on
SHOW FUNCTIONS, DESCRIBE FUNCTION EXTENDEDRead permanent user-defined functions

The scan never runs SELECT against your data and never writes anything.

Give the scanning account visibility

Danger

Apache Ranger and Hive’s SQL Standard Based Authorization filter the output of SHOW commands to what the connecting account is authorized to see. A database the scanning account can’t see is missing from the result, without an error or a warning. An under-privileged account therefore produces a successful scan with an incomplete catalog.

Use both of these defenses:

  1. Write down the databases and objects the account is expected to see before the first scan. After the scan, check the catalog against that list. A database-level check alone won’t catch an object skipped inside a visible database. See What happens when the account can’t read an object.
  2. Grant visibility under the authorization model your cluster uses:
Authorization modelWhat to grant
None (hive.security.authorization.enabled=false)Nothing. Every database is visible
SQL Standard Based AuthorizationSELECT on the tables and views you want to catalog
Apache RangerA Hive policy for the scanning account with at least select on database=*, table=*, column=*. You can narrow it to the databases in scope
Warning

Dawiso hasn’t validated these grants against an authorization-enabled HiveServer2. Confirm the exact grants with your Hadoop administrator, then check the first scan against your list of expected databases.

Check whether doAs is enabled

The hive.server2.enable.doAs setting changes what else the scanning account needs:

hive.server2.enable.doAsWhat the scanning account needs
true (the Hive default)Hive acts as the scanning account when it reads storage, so the account also needs read access in HDFS to the table locations. Without it, Hive can list a table but deny its details
falseNothing more. Hive reads storage as the hive service user

Confirm this setting with your cluster administrator before the first scan. It is the most common reason a scan that connects successfully returns fewer objects than expected.

What happens when the account can’t read an object

Some setups let the account list an object but not describe it, for example a Ranger policy narrower than the database, or doAs without HDFS access. Dawiso handles the two kinds of failure differently:

What Hive returnsWhat Dawiso does
Permission denied for an objectLeaves the object out of the catalog and continues. The skipped objects are recorded in the scanner’s technical log, not in the ingestion log in Dawiso
Any other error, such as a timeout, a dropped connection, or a server errorRetries once. If the retry fails, the scan stops with an error and the catalog keeps the result of the previous scan

Each scan replaces the previous one. An object that a scan skipped without a reason would disappear from Dawiso together with its descriptions, owners, and relations. A failed scan changes nothing, which is why Dawiso stops instead.

Allow network access

RequirementDetail
ReachabilityThe scan must reach HiveServer2 on its port: 10000 for binary, 10001 for HTTP, or the port of your gateway, such as 8443 for Knox or 443 for HDInsight
Host nameUse the fully qualified domain name of HiveServer2, not an IP address or a short name
FirewallOpen the HiveServer2 port to the machine that runs the scan

Hadoop clusters are rarely reachable from the internet. In that case, create a private connection and run the scan inside your network with Dawiso Integration Runtime (DIR). For more information, see Connection types.

Tip

To ingest metadata from your on-premises sources, whitelist Dawiso’s IP address so Dawiso can connect to your internal sources (pull method). Whitelist the same IP for Dawiso Integration Runtime (DIR) to send data from your on-premises infrastructure to Dawiso Cloud (push method).

Contact your Account Manager to get the Dawiso IP address.

Review what the scan reads

Use this list for your security review:

  • Catalog metadata only: names, comments, data types, storage formats, locations, owners, partitioning and bucketing, view definitions, and function classes.
  • No table contents. The only row-related values are the statistics Hive already stores from an ANALYZE.
  • No writes. No CREATE, no INSERT, no temporary objects.
  • Credentials in table properties are removed. Hive 4 JDBC data connectors store the source database’s username and password in clear text in the table properties, where DESCRIBE FORMATTED prints them. Dawiso removes them when it reads the output, so they never reach your catalog.
  • Only documented table properties are cataloged. For the list, see Apache Hive.
Tip

Row Count and the size attributes read 0 for every table on which nobody has run ANALYZE TABLE ... COMPUTE STATISTICS. Dawiso doesn’t run ANALYZE for you, because it is a write operation and a heavy workload on a large table. Decide whether to schedule it before users ask. For details, see Apache Hive.

Collect the connection details

Collect the following before you create the connection:

ItemWhere to find it
HiveServer2 host name and portFully qualified domain name, not an IP address
Transport modehive.server2.transport.mode: binary or http
HTTP pathHTTP mode only. hive.server2.thrift.http.path, usually cliservice
Authentication methodhive.server2.authentication: NONE, LDAP, or CUSTOM
Username and passwordThe scanning account. The password is required for LDAP and Custom / PAM
TLShive.server2.use.SSL
Expected databasesYour written list, to check the first scan against
doAshive.server2.enable.doAs, to know whether HDFS access is needed

Next, create the Apache Hive connection.