code: public Boolean save(@NotNull V entity) {
          Timer saveAsyncTimer = METRICS.getTimer(MetricsType.DATA_PROVIDER_SAVE.name());
  
          Insert insert = QueryBuilder.insertInto(getEntityMetadata().getTableName());
          List<ColumnMetadata> columns = getEntityMetadata().getFieldMetaData();
          columns.forEach(column -> insert.value(column.getName(), QueryBuilder.bindMarker()));
  
          try {
              String keyspace = getEntityMetadata().getKeyspace();
  
              PreparedStatement prepare = getCassandraClient().prepare(keyspace, insert.getQueryString());
              prepare.setConsistencyLevel(getWriteConsistencyLevel());
  
              BoundStatement boundStatement = createBoundStatement(prepare, entity, columns);
  
              ResultSet input = getCassandraClient().execute(keyspace, boundStatement);
  
              return input.wasApplied();
          } catch (SyntaxError e) {
              LOGGER.warn("Can't prepare query: " + insert.getQueryString(), e);
  
          } finally {
              saveAsyncTimer.stop();
          }
  
          return false;
      }
docs: Save entity asynchronously
  
  @param entity Target entity
  
  @return Operation status result