Updated on 2024-10-25 GMT+08:00

Configuring Hive to Support More Than 32 Roles

Scenario

The number of OS user groups is limited, and the number of roles that can be created in Hive cannot exceed 32. After this function is enabled, more than 32 roles can be created in Hive.

  • After this function is enabled and the table or database is authorized, roles that have the same permission on the table or database will be combined using vertical bars (|). When the ACL permission is queried, the combined result is displayed, which is different from that before the function is enabled. This operation is irreversible. Determine whether to make adjustment based on the actual application scenario.
  • If the current component uses Ranger for permission control, you need to configure related policies based on Ranger for permission management. For details, see Adding a Ranger Access Permission Policy for Hive.
  • After this function is enabled, a maximum of 512 roles (including owner) are supported by default. The number is controlled by the user-defined parameter hive.supports.roles.max of MetaStore. You can change the value based on the actual application scenario.

Procedure

  1. Log in to FusionInsight Manager. Click Cluster, choose Services > Hive, click Configurations, and then All Configurations.
  2. Modify parameters and restart related instances:

    • For versions earlier than MRS 3.2.0:
      1. Choose MetaStore(Role) > Customization, add a custom parameter to the hivemetastore-site.xml parameter file, and set Name to hive.supports.over.32.roles and Value to true.
      2. Choose HiveServer(Role) > Customization for versions earlier than MRS 3.2.0, add a custom parameter to the hive-site.xml parameter file, set Name to hive.supports.over.32.roles, and set Value to true.
      3. Click Save to save the configuration.
      4. Click Instances, select all Hive instances, and choose More > Restart Instance, enter the password of the current user, and click OK to restart all Hive instances.
    • For MRS 3.2.0 or later:
      1. Choose MetaStore(Role) > Customization, add a custom parameter to the hivemetastore-site.xml parameter file, and set Name to hive.supports.over.32.roles and Value to true.
      2. Click Save to save the configuration.
      3. Click Instances, select all MetaStore instances, and choose More > Restart Instance, enter the password of the current user, and click OK to restart all MetaStore instances.