table edit

Edits the attributes of a HPE Ezmeral Data Fabric Database binary or JSON table.

Permissions Required

To run this command, your user ID must have the following permissions:

NOTE
The mapr user is not treated as a superuser. HPE Ezmeral Data Fabric Database does not allow the mapr user to run this command unless that user is given the relevant permission or permissions with access-control expressions.

Syntax

CLI
maprcli table edit
  -path <path >
  [ -audit true|false ]
  [ -autosplit <Auto Split table> ]
  [ -regionsizemb <Region Size in MB> ]
  [ -bulkload <Bulk load> ]
  [ -deletettl <delete TTL in secs> ]
  [ -packperm <Pack Permission settings> ]
  [ -bulkloadperm <Bulk load Permission settings> ]
  [ -splitmergeperm <Split and Merge Permission settings>]
  [ -createrenamefamilyperm <Add/Rename Family Permission settings> ]
  [ -deletefamilyperm <Delete Family Permission settings> ]
  [ -adminaccessperm <Secondary Index Admin Permission settings> ]
  [ -replperm <Replication Admin Permission settings> ]
  [ -indexperm <Ace Admin Permission settings> ]
  [ -defaultversionperm <CF Versions Default Permission> ]
  [ -defaultcompressionperm <CF Compression Default Permission> ]
  [ -defaultmemoryperm <CF Memory Default Permission> ]
  [ -defaultreadperm <CF Read Default Permission> ]
  [ -defaultwriteperm <CF Write Default Permission> ]
  [ -defaulttraverseperm <CF Traverse Default Permission> ]
  [ -defaultappendperm <CF Append Default Permission> ]
  [ -defaultunmaskedreadperm <CF Unmasked Read Default Permission> ]
  [ -metricsinterval <Metrics collection interval, in seconds> ]
REST
curl -k -X POST \
  'http[s]://<host>:<port>/rest/table/edit?path=<path>&<parameters>'
  -u <username>:<password>
NOTE
The mapr user is not treated as a superuser. HPE Ezmeral Data Fabric Database does not allow the mapr user to run this command unless that user is given the relevant permission or permissions with access-control expressions.

Parameter

Description

path

The path to the table.

  • For a path on the local cluster, start the path at the volume mount point. For example, for a table named test under volume1 which has a mount point at /volume1, specify the following path: /volume1/test
  • For a path on a remote cluster, you must also specify the cluster name in the path. For example, for a table named test under volume1 in the sanfrancisco cluster, specify the following path:/mapr/sanfrancisco/volume1/customer
audit Specifies whether to turn auditing on for the table. If auditing is also enabled at the cluster level with the maprcli audit data command and enabled for the current volume, setting this value to true causes auditing to start for the table.

The possible values are true and false. By default, the value is false.

autosplit

A Boolean value that specifies whether to split the table into regions automatically as the table grows. The average size of each region is determined by the regionsizemb parameter.

The default value is true. If you set the value to false, you can manually split tables into regions by using the table region split command.

regionsizemb

The average size of the regions into which HPE Ezmeral Data Fabric Database tries to split the table as the table grows. The default is 4096 MB. This value is ignored if autosplit is set to false.

If autosplit is set to true, HPE Ezmeral Data Fabric Database splits a region when the size of the region exceeds 150% of the average value. For example, if the average value is 4096 MB, HPE Ezmeral Data Fabric Database splits a region that is larger than 6144 MB.

Although splits are automatic, merges are not. For example, if the value of regionsizemb is changed from 8 GB to 4 GB, all regions that are eligible are split automatically, if autosplit is set to true. However, if the value of regionsizemb is changed from 2 GB to 4 GB, regions smaller than 4 GB are not automatically merged.

NOTE
When a table has less than 4 regions, HPE Ezmeral Data Fabric Database ignores the regionsizemb parameter and splits regions at a lower threshold.
bulkload

A Boolean value that specifies whether to allow a full bulk load of the table. The default is false. For more information, see Loading Data into Binary Tables and Loading Documents into JSON Tables.

deletettl The number of seconds to wait before purging the delete operations. The time-to-live for deletes should be greater than the amount of time that it takes replicated operations to reach replicas. By default, the value is 24 hours for tables configured for replication. If the table is not configured for replication, the default is 0 hours.
packperm The Access Control Expression that controls who can pack table regions. By default, permission is given to the user ID that was used to create the table.
bulkloadperm The Access Control Expression that controls who can load this table with bulk loads if the table was created with bulk load support. By default, permission is given to the user ID that was used to create the table.
splitmergeperm

The Access Control Expression that controls who can take the following actions:

  • Run the table region split and table region merge commands to split the table into regions or to merge regions of the table together.
  • Change the value of regionsizemb.

By default, permission is given to the user ID that was used to create the table.

createrenamefamilyperm The Access Control Expression that controls who can create column families for this table or rename existing column families. By default, permission is given to the user ID that was used to create the table.
deletefamilyperm The Access Control Expression that defines access to delete column families for this table. Delimit the expression with single-quotation marks. By default, permission is given to the user ID that was used to create the table.
adminaccessperm The Access Control Expression that controls who can view and edit the permissions for this table. By default, permission is given to the user ID that was used to create the table.
replperm The Access Control Expression that controls who can set up replication either to or from a table. By default, permission is given to the user ID that is used to create the table.
indexperm The secondary index admin permission setting that controls who can create an index associated with this table. By default, permission is given to the user ID that is used to create the table.
defaultversionperm The default Access Control Expression for the version permission on new column families that are created in this table. If no value is specified, the default is u:<username of the table creator>. This value of the parameter versionperm in the table cf create and table cf edit commands overrides this value.
NOTE
This permission is not applicable to JSON tables. Versioning is not supported for JSON documents.
defaultcompressionperm Applies to binary tables only: The default Access Control Expression for the compression permission on new column families that are created in this table. If no value is specified, the default is u:<username of the table creator>. This value of the parameter compressionperm in the table cf create and table cf edit commands overrides this value.
defaultmemoryperm

The default Access Control Expression for the memory permission on new column families that are created in this table. If no value is specified, the default is u:<username of the table creator>. This value of the parameter memoryperm in the table cf create and table cf edit commands overrides this value.

defaultreadperm The default Access Control Expression for the read permission on new column families that are created in this table. If no value is specified, the default is u:<username of the table creator>. This value of the parameter readperm in the table cf create and table cf edit commands overrides this value. See table cf create and table cf edit
defaultwriteperm The default Access Control Expression for the write permission on new column families that are created in this table. If no value is specified, the default is u:<username of the table creator>. This value of the parameter writeperm in the table cf create and table cf edit commands overrides this value. See table cf create and table cf edit
defaulttraverseperm Applies to JSON tables only: The default Access Control Expression for the traverse permission on new column families. For more information about this permission, see Permission Types for Fields and Column Families in JSON Tables.
defaultappendperm Applies to binary tables only: The default Access Control Expression for the append permission on new column families that are created in this table. If no value is specified, the default is u:<username of the table creator>. This value of the parameter appendperm in the table cf create and table cf edit commands overrides this value.
defaultunmaskedreadperm

The defaultunmaskedreadperm permission on table creation is set to the table creator. This setting takes effect for all new column families (and therefore also all columns/fields within all column families) unless otherwise overridden by the maprcli table cf or the maprcli table cf colperm command. This permission allows the user to read the data unmasked. Users without this permission have the masked data returned.

metricsinterval

The metrics collection interval, in seconds, for the table.

Possible values: 10, 60, 600

Default: 60 seconds

When configured to 10 seconds, under normal workloads, the metrics are available in OpenTSDB in about 30 seconds. At an interval of 60 seconds, the metrics are available in about 90 seconds.

NOTE
You cannot disable metrics collection for a table by setting the interval to 0.

Example

Changes the value of regionsizemb for the table mytable:

CLI
maprcli table edit -path /volume1/mytable -regionsizemb 8192
REST
NOTE
For REST examples stated below, use the appropriate SSL-related command line option in the following curl command, according to your SSL setup.
curl -X POST \
  'https://server.sj.us:8443/rest/table/edit?path=%2Fvolume1%2Fmytable&regionsizemb=8192' \
  -u <username>:<password>