@Override
  public void initialize(Configuration configuration, Properties tableProperties, Properties partitionProperties)
      throws SerDeException {
    super.initialize(configuration, tableProperties, partitionProperties);

    Configuration conf = createOverlayedConf(configuration, properties);
    String tableName = conf.get(KuduStorageHandler.KUDU_TABLE_NAME_KEY);
    if (StringUtils.isEmpty(tableName)) {
      throw new SerDeException(KUDU_TABLE_NAME_KEY + " is not set.");
    }
    try (KuduClient client = KuduHiveUtils.getKuduClient(conf)) {
      if (!client.tableExists(tableName)) {
        throw new SerDeException("Kudu table does not exist: " + tableName);
      }
      schema = client.openTable(tableName).getSchema();
    } catch (IOException ex) {
      throw new SerDeException(ex);
    }
    this.objectInspector = createObjectInspector(schema);
  }
A Kudu serializer and deserializer to support reading and writing Kudu data from Hive.
kudu-handler/src/java/org/apache/hadoop/hive/kudu/KuduSerDe.java