zachjsh commented on code in PR #13627:
URL: https://github.com/apache/druid/pull/13627#discussion_r1066589250
##########
server/src/main/java/org/apache/druid/catalog/model/table/DatasourceDefn.java:
##########
@@ -19,65 +19,137 @@
package org.apache.druid.catalog.model.table;
+import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
-import org.apache.druid.catalog.model.ColumnDefn;
+import com.google.common.base.Strings;
+import org.apache.druid.catalog.model.CatalogUtils;
import org.apache.druid.catalog.model.ColumnSpec;
import org.apache.druid.catalog.model.Columns;
+import org.apache.druid.catalog.model.ModelProperties;
+import org.apache.druid.catalog.model.ModelProperties.GranularityPropertyDefn;
+import org.apache.druid.catalog.model.ModelProperties.StringListPropertyDefn;
+import org.apache.druid.catalog.model.ResolvedTable;
+import org.apache.druid.catalog.model.TableDefn;
import org.apache.druid.java.util.common.IAE;
import org.apache.druid.java.util.common.StringUtils;
-import java.util.Collections;
+import java.util.Arrays;
+import java.util.List;
-/**
- * Definition of a Druid datasource. The datasource may use rollup, but rollup
- * is not represented in the catalog: it is just a way that applications store
- * data into a table.
- */
-public class DatasourceDefn extends AbstractDatasourceDefn
+public class DatasourceDefn extends TableDefn
{
/**
- * Definition of a column in a datasource.
+ * Segment grain at ingestion and initial compaction. Aging rules
+ * may override the value as segments age. If not provided here,
+ * then it must be provided at ingestion time.
*/
- public static class DatasourceColumnDefn extends ColumnDefn
- {
- public static final String COLUMN_TYPE = "column";
+ public static final String SEGMENT_GRANULARITY_PROPERTY =
"segmentGranularity";
+
+ /**
+ * Catalog property value for the "all time" granularity.
+ */
+ public static final String ALL_GRANULARITY = "ALL";
+
+ /**
+ * The target segment size at ingestion and initial compaction.
+ * If unset, then the system setting is used.
+ */
+ public static final String TARGET_SEGMENT_ROWS_PROPERTY =
"targetSegmentRows";
+
+ /**
+ * The clustering column names and sort order for each new segment.
+ */
+ public static final String CLUSTER_KEYS_PROPERTY = "clusterKeys";
+
+ /**
+ * The set of existing columns to "delete" (actually, just hide) from the
+ * SQL layer. Used to "remove" unwanted columns to avoid the need to rewrite
+ * existing segments to accomplish the task.
+ */
+ public static final String HIDDEN_COLUMNS_PROPERTY = "hiddenColumns";
+
+ public static final String SEALED_PROPERTY = "sealed";
Review Comment:
docs for this property would be good.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]