public ColumnMapping getColumnMappingForHiveColumn(List<String> hiveColumns, String hiveColumnName) {
    Preconditions.checkNotNull(hiveColumns);
    Preconditions.checkNotNull(hiveColumnName);
    Preconditions.checkArgument(columnMappings.size() <= hiveColumns.size(),
        "Expected equal number of column mappings and Hive columns, " + columnMappings + ", "
            + hiveColumns);

    int hiveColumnOffset = 0;
    for (; hiveColumnOffset < hiveColumns.size() && hiveColumnOffset < columnMappings.size(); hiveColumnOffset++) {
      if (hiveColumns.get(hiveColumnOffset).equals(hiveColumnName)) {
        return columnMappings.get(hiveColumnOffset);
      }
    }

    log.error("Could not find offset for Hive column with name '" + hiveColumnName
        + "' with columns " + hiveColumns);
    throw new IllegalArgumentException("Could not find offset for Hive column with name "
        + hiveColumnName);
  }
Create a mapping from Hive columns (rowID and column) to Accumulo columns (column family and
qualifier). The ordering of the {@link ColumnMapping}s is important as it aligns with the
ordering of the columns for the Hive table schema.

@param serializedColumnMappings
         Comma-separated list of designators that map to Accumulo columns whose offsets
         correspond to the Hive table schema
@throws TooManyAccumuloColumnsException
accumulo-handler/src/java/org/apache/hadoop/hive/accumulo/columns/ColumnMapper.java