diff --git a/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element.py b/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element.py index aa0b489437..c477739970 100644 --- a/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element.py +++ b/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element.py @@ -19,12 +19,12 @@ SemanticModelReference, ) from dbt_semantic_interfaces.type_enums.date_part import DatePart -from dbt_semantic_interfaces.type_enums.time_granularity import TimeGranularity from typing_extensions import override from metricflow_semantics.assert_one_arg import assert_exactly_one_arg_set from metricflow_semantics.model.linkable_element_property import LinkableElementProperty from metricflow_semantics.model.semantic_model_derivation import SemanticModelDerivation +from metricflow_semantics.time.granularity import ExpandedTimeGranularity from metricflow_semantics.workarounds.reference import sorted_semantic_model_references logger = logging.getLogger(__name__) @@ -64,7 +64,7 @@ class ElementPathKey: element_name: str element_type: LinkableElementType entity_links: Tuple[EntityReference, ...] - time_granularity: Optional[TimeGranularity] = None + time_granularity: Optional[ExpandedTimeGranularity] = None date_part: Optional[DatePart] = None metric_subquery_entity_links: Tuple[EntityReference, ...] = () @@ -148,7 +148,7 @@ class LinkableDimension(LinkableElement, SerializableDataclass): dimension_type: DimensionType entity_links: Tuple[EntityReference, ...] join_path: SemanticModelJoinPath - time_granularity: Optional[TimeGranularity] + time_granularity: Optional[ExpandedTimeGranularity] date_part: Optional[DatePart] @staticmethod @@ -159,7 +159,7 @@ def create( # noqa: D102 dimension_type: DimensionType, entity_links: Tuple[EntityReference, ...], join_path: SemanticModelJoinPath, - time_granularity: Optional[TimeGranularity], + time_granularity: Optional[ExpandedTimeGranularity], date_part: Optional[DatePart], ) -> LinkableDimension: return LinkableDimension( diff --git a/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element_set.py b/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element_set.py index 1c1a8aa6f5..b82af877fa 100644 --- a/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element_set.py +++ b/metricflow-semantics/metricflow_semantics/model/semantics/linkable_element_set.py @@ -355,10 +355,12 @@ def _path_key_to_spec(path_key: ElementPathKey) -> LinkableInstanceSpec: ) elif path_key.element_type is LinkableElementType.TIME_DIMENSION: assert path_key.time_granularity is not None + # TODO: [custom granularity] Remove block against custom granularity values + assert not path_key.time_granularity.is_custom_granularity, "Custom granularities are not yet supported!" return TimeDimensionSpec( element_name=path_key.element_name, entity_links=path_key.entity_links, - time_granularity=path_key.time_granularity, + time_granularity=path_key.time_granularity.base_granularity, date_part=path_key.date_part, ) elif path_key.element_type is LinkableElementType.ENTITY: diff --git a/metricflow-semantics/metricflow_semantics/model/semantics/linkable_spec_resolver.py b/metricflow-semantics/metricflow_semantics/model/semantics/linkable_spec_resolver.py index 3afb0ea84a..80df48bf6c 100644 --- a/metricflow-semantics/metricflow_semantics/model/semantics/linkable_spec_resolver.py +++ b/metricflow-semantics/metricflow_semantics/model/semantics/linkable_spec_resolver.py @@ -40,6 +40,7 @@ from metricflow_semantics.model.semantics.linkable_element_set import LinkableElementSet from metricflow_semantics.model.semantics.semantic_model_join_evaluator import SemanticModelJoinEvaluator from metricflow_semantics.specs.time_dimension_spec import DEFAULT_TIME_GRANULARITY +from metricflow_semantics.time.granularity import ExpandedTimeGranularity from metricflow_semantics.time.time_spine_source import TimeSpineSource if TYPE_CHECKING: @@ -76,7 +77,7 @@ def _generate_linkable_time_dimensions( dimension_type=DimensionType.TIME, entity_links=entity_links, join_path=join_path, - time_granularity=time_granularity, + time_granularity=ExpandedTimeGranularity.from_time_granularity(time_granularity), date_part=None, properties=tuple(sorted(properties)), ) @@ -92,7 +93,7 @@ def _generate_linkable_time_dimensions( dimension_type=DimensionType.TIME, entity_links=entity_links, join_path=join_path, - time_granularity=time_granularity, + time_granularity=ExpandedTimeGranularity.from_time_granularity(time_granularity), date_part=date_part, properties=frozenset(properties), ) @@ -496,7 +497,7 @@ def _get_metric_time_elements(self, measure_reference: Optional[MeasureReference element_name=MetricFlowReservedKeywords.METRIC_TIME.value, element_type=LinkableElementType.TIME_DIMENSION, entity_links=(), - time_granularity=time_granularity, + time_granularity=ExpandedTimeGranularity.from_time_granularity(time_granularity), date_part=date_part, ) path_key_to_linkable_dimensions[path_key].append( @@ -524,7 +525,7 @@ def _get_metric_time_elements(self, measure_reference: Optional[MeasureReference } ) ), - time_granularity=time_granularity, + time_granularity=ExpandedTimeGranularity.from_time_granularity(time_granularity), date_part=date_part, ) ) diff --git a/metricflow-semantics/metricflow_semantics/specs/time_dimension_spec.py b/metricflow-semantics/metricflow_semantics/specs/time_dimension_spec.py index 4212bfef01..398f60d0fe 100644 --- a/metricflow-semantics/metricflow_semantics/specs/time_dimension_spec.py +++ b/metricflow-semantics/metricflow_semantics/specs/time_dimension_spec.py @@ -14,6 +14,7 @@ from metricflow_semantics.naming.linkable_spec_name import StructuredLinkableSpecName from metricflow_semantics.specs.dimension_spec import DimensionSpec from metricflow_semantics.specs.instance_spec import InstanceSpecVisitor +from metricflow_semantics.time.granularity import ExpandedTimeGranularity from metricflow_semantics.visitor import VisitorOutputT @@ -141,7 +142,7 @@ def element_path_key(self) -> ElementPathKey: element_name=self.element_name, element_type=LinkableElementType.TIME_DIMENSION, entity_links=self.entity_links, - time_granularity=self.time_granularity, + time_granularity=ExpandedTimeGranularity.from_time_granularity(self.time_granularity), date_part=self.date_part, ) diff --git a/metricflow-semantics/metricflow_semantics/time/granularity.py b/metricflow-semantics/metricflow_semantics/time/granularity.py new file mode 100644 index 0000000000..872b7c7ee3 --- /dev/null +++ b/metricflow-semantics/metricflow_semantics/time/granularity.py @@ -0,0 +1,32 @@ +from __future__ import annotations + +from dataclasses import dataclass + +from dbt_semantic_interfaces.dataclass_serialization import SerializableDataclass +from dbt_semantic_interfaces.type_enums.time_granularity import TimeGranularity + + +@dataclass(frozen=True) +class ExpandedTimeGranularity(SerializableDataclass): + """Dataclass container for custom granularity extensions to the base TimeGranularity enumeration. + + This includes the granularity name, which is either the custom granularity or the TimeGranularity string value, + and an associated base time granularity value which we use as a pointer to the base grain used to look up the + time spine. This will allow for some level of comparison between custom granularities. + + Note: this assumes that any base TimeGranularity value will derive the name from the TimeGranularity. It might be + worth adding validation to ensure that is always the case, meaning that no `name` value can be a value in the + TimeGranularity enumeration. + """ + + name: str + base_granularity: TimeGranularity + + @property + def is_custom_granularity(self) -> bool: # noqa: D102 + return self.base_granularity.value != self.name + + @classmethod + def from_time_granularity(cls, granularity: TimeGranularity) -> ExpandedTimeGranularity: + """Factory method for creating an ExpandedTimeGranularity from a standard TimeGranularity enumeration value.""" + return ExpandedTimeGranularity(name=granularity.value, base_granularity=granularity) diff --git a/metricflow-semantics/tests_metricflow_semantics/model/semantics/test_linkable_element_set.py b/metricflow-semantics/tests_metricflow_semantics/model/semantics/test_linkable_element_set.py index b0af974a6a..936a51519b 100644 --- a/metricflow-semantics/tests_metricflow_semantics/model/semantics/test_linkable_element_set.py +++ b/metricflow-semantics/tests_metricflow_semantics/model/semantics/test_linkable_element_set.py @@ -40,6 +40,7 @@ ParameterSetField, ) from metricflow_semantics.specs.time_dimension_spec import TimeDimensionSpec +from metricflow_semantics.time.granularity import ExpandedTimeGranularity from more_itertools import bucket AMBIGUOUS_NAME = "ambiguous" @@ -105,7 +106,7 @@ defined_in_semantic_model=_base_semantic_model, join_path=SemanticModelJoinPath(left_semantic_model_reference=_measure_semantic_model), properties=frozenset([LinkableElementProperty.LOCAL_LINKED]), - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), date_part=None, ) # Resolves to the same local linked name name as _ambiguous_entity @@ -598,7 +599,7 @@ def linkable_set() -> LinkableElementSet: # noqa: D103 element_name="time_dimension_element", entity_links=(entity_1,), element_type=LinkableElementType.TIME_DIMENSION, - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), ): ( LinkableDimension.create( defined_in_semantic_model=SemanticModelReference("time_dimension_source"), @@ -615,7 +616,7 @@ def linkable_set() -> LinkableElementSet: # noqa: D103 ), ), properties=frozenset(), - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), date_part=None, ), ), diff --git a/metricflow-semantics/tests_metricflow_semantics/model/test_where_filter_spec.py b/metricflow-semantics/tests_metricflow_semantics/model/test_where_filter_spec.py index 48bae8d141..154955b459 100644 --- a/metricflow-semantics/tests_metricflow_semantics/model/test_where_filter_spec.py +++ b/metricflow-semantics/tests_metricflow_semantics/model/test_where_filter_spec.py @@ -56,6 +56,7 @@ from metricflow_semantics.specs.time_dimension_spec import TimeDimensionSpec from metricflow_semantics.specs.where_filter.where_filter_spec import WhereFilterSpec from metricflow_semantics.specs.where_filter.where_filter_transform import WhereSpecFactory +from metricflow_semantics.time.granularity import ExpandedTimeGranularity from tests_metricflow_semantics.specs.conftest import EXAMPLE_FILTER_LOCATION @@ -167,7 +168,7 @@ def test_dimension_in_filter_with_grain( # noqa: D103 element_name="created_at", element_type=LinkableElementType.TIME_DIMENSION, entity_links=(EntityReference("listing"),), - time_granularity=TimeGranularity.WEEK, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.WEEK), date_part=None, ): ( LinkableDimension.create( @@ -179,7 +180,7 @@ def test_dimension_in_filter_with_grain( # noqa: D103 left_semantic_model_reference=SemanticModelReference("bookings_source"), ), properties=frozenset(), - time_granularity=TimeGranularity.WEEK, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.WEEK), date_part=None, ), ) @@ -231,19 +232,19 @@ def test_time_dimension_in_filter( # noqa: D103 element_name="created_at", element_type=LinkableElementType.TIME_DIMENSION, entity_links=(EntityReference("listing"),), - time_granularity=TimeGranularity.MONTH, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.MONTH), date_part=None, ): ( LinkableDimension.create( defined_in_semantic_model=SemanticModelReference("listings_source"), - dimension_type=DimensionType.CATEGORICAL, + dimension_type=DimensionType.TIME, element_name="created_at", entity_links=(EntityReference("listing"),), join_path=SemanticModelJoinPath( left_semantic_model_reference=SemanticModelReference("bookings_source"), ), properties=frozenset(), - time_granularity=TimeGranularity.MONTH, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.MONTH), date_part=None, ), ) @@ -295,19 +296,19 @@ def test_time_dimension_with_grain_in_name( # noqa: D103 element_name="created_at", element_type=LinkableElementType.TIME_DIMENSION, entity_links=(EntityReference("listing"),), - time_granularity=TimeGranularity.MONTH, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.MONTH), date_part=None, ): ( LinkableDimension.create( defined_in_semantic_model=SemanticModelReference("listings_source"), - dimension_type=DimensionType.CATEGORICAL, + dimension_type=DimensionType.TIME, element_name="created_at", entity_links=(EntityReference("listing"),), join_path=SemanticModelJoinPath( left_semantic_model_reference=SemanticModelReference("bookings_source"), ), properties=frozenset(), - time_granularity=TimeGranularity.MONTH, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.MONTH), date_part=None, ), ) @@ -360,7 +361,7 @@ def test_date_part_in_filter( # noqa: D103 element_name="metric_time", element_type=LinkableElementType.TIME_DIMENSION, entity_links=(), - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), date_part=DatePart.YEAR, ): ( LinkableDimension.create( @@ -372,7 +373,7 @@ def test_date_part_in_filter( # noqa: D103 left_semantic_model_reference=SemanticModelReference("bookings_source"), ), properties=frozenset(), - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), date_part=DatePart.YEAR, ), ) @@ -428,7 +429,7 @@ def resolved_spec_lookup() -> FilterSpecResolutionLookUp: element_name="metric_time", element_type=LinkableElementType.TIME_DIMENSION, entity_links=(), - time_granularity=TimeGranularity.WEEK, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.WEEK), date_part=DatePart.YEAR, ): ( LinkableDimension.create( @@ -440,7 +441,7 @@ def resolved_spec_lookup() -> FilterSpecResolutionLookUp: left_semantic_model_reference=SemanticModelReference("bookings_source"), ), properties=frozenset(), - time_granularity=TimeGranularity.WEEK, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.WEEK), date_part=DatePart.YEAR, ), ) @@ -550,8 +551,8 @@ def test_entity_in_filter( # noqa: D103 element_name="user", element_type=LinkableElementType.ENTITY, entity_links=(EntityReference("listing"),), - time_granularity=TimeGranularity.DAY, - date_part=DatePart.YEAR, + time_granularity=None, + date_part=None, ): ( LinkableEntity.create( defined_in_semantic_model=SemanticModelReference("bookings"), @@ -659,9 +660,9 @@ def get_spec(dimension: str) -> WhereFilterSpec: path_key_to_linkable_dimensions={ ElementPathKey( element_name=METRIC_TIME_ELEMENT_NAME, - element_type=LinkableElementType.DIMENSION, + element_type=LinkableElementType.TIME_DIMENSION, entity_links=(EntityReference("listing"),), - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), date_part=DatePart.YEAR, ): ( LinkableDimension.create( @@ -673,7 +674,9 @@ def get_spec(dimension: str) -> WhereFilterSpec: left_semantic_model_reference=SemanticModelReference("bookings_source"), ), properties=frozenset(), - time_granularity=TimeGranularity.WEEK, + time_granularity=ExpandedTimeGranularity.from_time_granularity( + TimeGranularity.WEEK + ), date_part=DatePart.YEAR, ), ) diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_all_properties__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_all_properties__result0.txt index cba715b557..c5ca278926 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_all_properties__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_all_properties__result0.txt @@ -1,602 +1,602 @@ Model Join-Path Entity Links Name Time Granularity Date Part Properties --------------------------------------------------------- ------------------- -------------------- ------------------ ----------- --------------------------------------------------- ('bookings_source',) () listing ['ENTITY', 'LOCAL'] -('bookings_source',) () metric_time DAY ['METRIC_TIME'] -('bookings_source',) () metric_time DAY DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day ['METRIC_TIME'] +('bookings_source',) () metric_time day DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time quarter ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time quarter YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time year ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time year YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] ('bookings_source', 'listings_latest') ('listing',) capacity_latest ['JOINED'] ('bookings_source', 'listings_latest') ('listing',) country_latest ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DOW ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DOY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY MONTH ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY QUARTER ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY YEAR ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DOW ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DOY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY MONTH ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY QUARTER ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY YEAR ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DAY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DOW ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DOY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day MONTH ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day QUARTER ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day YEAR ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DAY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DOW ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DOY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day MONTH ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day QUARTER ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day YEAR ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] ('bookings_source', 'listings_latest') ('listing',) is_lux_latest ['JOINED'] ('bookings_source', 'listings_latest') ('listing',) user ['ENTITY', 'JOINED'] ('bookings_source', 'listings_latest', 'companies') ('listing', 'user') company ['ENTITY', 'JOINED', 'MULTI_HOP'] ('bookings_source', 'listings_latest', 'companies') ('listing', 'user') company_name ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] ('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') home_state ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] ('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') home_state_latest ['JOINED', 'MULTI_HOP'] ('bookings_source', 'lux_listing_mapping') ('listing',) lux_listing ['ENTITY', 'JOINED'] ('views_source',) () listing ['ENTITY', 'LOCAL'] -('views_source',) () metric_time DAY ['METRIC_TIME'] -('views_source',) () metric_time DAY DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day ['METRIC_TIME'] +('views_source',) () metric_time day DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time quarter ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time quarter YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time year ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time year YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] ('views_source', 'listings_latest') ('listing',) capacity_latest ['JOINED'] ('views_source', 'listings_latest') ('listing',) country_latest ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DOW ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DOY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY MONTH ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY QUARTER ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY YEAR ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DOW ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DOY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY MONTH ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY QUARTER ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY YEAR ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('views_source', 'listings_latest') ('listing',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DAY ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DOW ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DOY ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day MONTH ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day QUARTER ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day YEAR ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds day ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DAY ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DOW ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DOY ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day MONTH ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day QUARTER ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day YEAR ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('views_source', 'listings_latest') ('listing',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] ('views_source', 'listings_latest') ('listing',) is_lux_latest ['JOINED'] ('views_source', 'listings_latest') ('listing',) user ['ENTITY', 'JOINED'] ('views_source', 'listings_latest', 'companies') ('listing', 'user') company ['ENTITY', 'JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'companies') ('listing', 'user') company_name ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MINUTE YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts minute YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') home_state ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MINUTE YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts SECOND YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts minute YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second DAY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second DOW ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second DOY ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts second YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'users_latest') ('listing', 'user') home_state_latest ['JOINED', 'MULTI_HOP'] ('views_source', 'lux_listing_mapping') ('listing',) lux_listing ['ENTITY', 'JOINED'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path__result0.txt index 83e58e4975..d346df372d 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path__result0.txt @@ -2,45 +2,45 @@ Model Join-Path Entity Links Name Time Gr -------------------------------------- -------------- --------------- ------------------ ----------- -------------------------------------- ('bookings_source', 'listings_latest') ('listing',) capacity_latest ['JOINED'] ('bookings_source', 'listings_latest') ('listing',) country_latest ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DOW ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DOY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY MONTH ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY QUARTER ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY YEAR ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DOW ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DOY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY MONTH ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY QUARTER ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY YEAR ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DAY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DOW ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DOY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day MONTH ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day QUARTER ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day YEAR ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DAY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DOW ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DOY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day MONTH ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day QUARTER ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day YEAR ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] ('bookings_source', 'listings_latest') ('listing',) is_lux_latest ['JOINED'] ('bookings_source', 'listings_latest') ('listing',) user ['ENTITY', 'JOINED'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path_multi_hop__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path_multi_hop__result0.txt index d25de2b612..4d6a084908 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path_multi_hop__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_create_linkable_element_set_from_join_path_multi_hop__result0.txt @@ -2,45 +2,45 @@ Model Join-Path Entity Links Name ----------------------------------------------- -------------------- --------------- ------------------ ----------- --------------------------------------------------- ('views_source', 'bookings', 'listings_latest') ('guest', 'listing') capacity_latest ['JOINED', 'MULTI_HOP'] ('views_source', 'bookings', 'listings_latest') ('guest', 'listing') country_latest ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] -('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at day ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds day ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds month ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds quarter ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds week ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds year ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] +('views_source', 'bookings', 'listings_latest') ('guest', 'listing') ds year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED', 'MULTI_HOP'] ('views_source', 'bookings', 'listings_latest') ('guest', 'listing') is_lux_latest ['JOINED', 'MULTI_HOP'] ('views_source', 'bookings', 'listings_latest') ('guest', 'listing') user ['ENTITY', 'JOINED', 'MULTI_HOP'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_cyclic_join_manifest__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_cyclic_join_manifest__result0.txt index c2f3b92127..1b796ee3b8 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_cyclic_join_manifest__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_cyclic_join_manifest__result0.txt @@ -2,67 +2,67 @@ Model Join-Path Entity Links Name --------------------------------------------- ------------------ --------------- ------------------ ----------- ------------------------------------------- ('listings_latest',) () cyclic_entity ['ENTITY', 'LOCAL'] ('listings_latest',) () listing ['ENTITY', 'LOCAL'] -('listings_latest',) () metric_time DAY ['METRIC_TIME'] -('listings_latest',) () metric_time DAY DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day ['METRIC_TIME'] +('listings_latest',) () metric_time day DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time quarter ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time quarter YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time year ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time year YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] ('listings_latest',) ('cyclic_entity',) country_latest ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds DAY ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds DAY DAY ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds DAY DOW ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds DAY DOY ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds DAY MONTH ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds DAY QUARTER ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds DAY YEAR ['LOCAL'] -('listings_latest',) ('cyclic_entity',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('cyclic_entity',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds day ['LOCAL'] +('listings_latest',) ('cyclic_entity',) ds day DAY ['LOCAL'] +('listings_latest',) ('cyclic_entity',) ds day DOW ['LOCAL'] +('listings_latest',) ('cyclic_entity',) ds day DOY ['LOCAL'] +('listings_latest',) ('cyclic_entity',) ds day MONTH ['LOCAL'] +('listings_latest',) ('cyclic_entity',) ds day QUARTER ['LOCAL'] +('listings_latest',) ('cyclic_entity',) ds day YEAR ['LOCAL'] +('listings_latest',) ('cyclic_entity',) ds month ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds quarter ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds week ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds year ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('cyclic_entity',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] ('listings_latest',) ('listing',) country_latest ['LOCAL'] -('listings_latest',) ('listing',) ds DAY ['LOCAL'] -('listings_latest',) ('listing',) ds DAY DAY ['LOCAL'] -('listings_latest',) ('listing',) ds DAY DOW ['LOCAL'] -('listings_latest',) ('listing',) ds DAY DOY ['LOCAL'] -('listings_latest',) ('listing',) ds DAY MONTH ['LOCAL'] -('listings_latest',) ('listing',) ds DAY QUARTER ['LOCAL'] -('listings_latest',) ('listing',) ds DAY YEAR ['LOCAL'] -('listings_latest',) ('listing',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds day ['LOCAL'] +('listings_latest',) ('listing',) ds day DAY ['LOCAL'] +('listings_latest',) ('listing',) ds day DOW ['LOCAL'] +('listings_latest',) ('listing',) ds day DOY ['LOCAL'] +('listings_latest',) ('listing',) ds day MONTH ['LOCAL'] +('listings_latest',) ('listing',) ds day QUARTER ['LOCAL'] +('listings_latest',) ('listing',) ds day YEAR ['LOCAL'] +('listings_latest',) ('listing',) ds month ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds quarter ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds year ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] ('listings_latest', 'listings_latest_cyclic') ('cyclic_entity',) capacity_latest ['JOINED'] ('listings_latest', 'listings_latest_cyclic') ('listing',) capacity_latest ['JOINED'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_cumulative_metric__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_cumulative_metric__result0.txt index fe3e1edc7d..e68093debf 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_cumulative_metric__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_cumulative_metric__result0.txt @@ -1,3 +1,3 @@ Model Join-Path Entity Links Name Time Granularity Date Part Properties ----------------- -------------- ----------- ------------------ ----------- --------------- -('revenue',) () metric_time DAY ['METRIC_TIME'] +('revenue',) () metric_time day ['METRIC_TIME'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_derived_metrics__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_derived_metrics__result0.txt index dad2ccbf93..5efa8c9618 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_derived_metrics__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_linkable_spec_resolver.py/str/test_metric_time_property_for_derived_metrics__result0.txt @@ -1,42 +1,42 @@ Model Join-Path Entity Links Name Time Granularity Date Part Properties -------------------- -------------- ----------- ------------------ ----------- ------------------------------------------- -('bookings_source',) () metric_time DAY ['METRIC_TIME'] -('bookings_source',) () metric_time DAY DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time DAY YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('bookings_source',) () metric_time YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY ['METRIC_TIME'] -('views_source',) () metric_time DAY DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time DAY YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('views_source',) () metric_time YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day ['METRIC_TIME'] +('bookings_source',) () metric_time day DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time day YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time month YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time quarter ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time quarter YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time week YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time year ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('bookings_source',) () metric_time year YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day ['METRIC_TIME'] +('views_source',) () metric_time day DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time day YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time month YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time quarter ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time quarter YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time week YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time year ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('views_source',) () metric_time year YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__accumulate_last_2_months_metric__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__accumulate_last_2_months_metric__result.txt index 0450476a29..19b1e65d1d 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__accumulate_last_2_months_metric__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__accumulate_last_2_months_metric__result.txt @@ -5,7 +5,10 @@ GroupByItemResolution( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=(METRIC_TIME,), @@ -19,7 +22,10 @@ GroupByItemResolution( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_different_parent_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_different_parent_time_grains__result.txt index c0ab4fe216..cd50b4c1dc 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_different_parent_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_different_parent_time_grains__result.txt @@ -5,7 +5,10 @@ GroupByItemResolution( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=(DERIVED_TIME_GRANULARITY, METRIC_TIME), @@ -19,7 +22,10 @@ GroupByItemResolution( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), LinkableDimension( properties=(METRIC_TIME,), @@ -33,7 +39,10 @@ GroupByItemResolution( semantic_model_name='yearly_measure_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_same_parent_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_same_parent_time_grains__result.txt index 0450476a29..19b1e65d1d 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_same_parent_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__derived_metric_with_same_parent_time_grains__result.txt @@ -5,7 +5,10 @@ GroupByItemResolution( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=(METRIC_TIME,), @@ -19,7 +22,10 @@ GroupByItemResolution( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_different_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_different_time_grains__result.txt index c0ab4fe216..cd50b4c1dc 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_different_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_different_time_grains__result.txt @@ -5,7 +5,10 @@ GroupByItemResolution( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=(DERIVED_TIME_GRANULARITY, METRIC_TIME), @@ -19,7 +22,10 @@ GroupByItemResolution( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), LinkableDimension( properties=(METRIC_TIME,), @@ -33,7 +39,10 @@ GroupByItemResolution( semantic_model_name='yearly_measure_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_same_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_same_time_grains__result.txt index 0450476a29..19b1e65d1d 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_same_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__metrics_with_same_time_grains__result.txt @@ -5,7 +5,10 @@ GroupByItemResolution( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=(METRIC_TIME,), @@ -19,7 +22,10 @@ GroupByItemResolution( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__no_metrics__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__no_metrics__result.txt index 98dd8771e6..209ac018ef 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__no_metrics__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__no_metrics__result.txt @@ -5,7 +5,10 @@ GroupByItemResolution( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=DAY, + time_granularity=ExpandedTimeGranularity( + name='day', + base_granularity=DAY, + ), ): ( LinkableDimension( properties=(DERIVED_TIME_GRANULARITY, METRIC_TIME), @@ -16,7 +19,10 @@ GroupByItemResolution( semantic_model_name='__VIRTUAL__', ), ), - time_granularity=DAY, + time_granularity=ExpandedTimeGranularity( + name='day', + base_granularity=DAY, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__simple_metric__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__simple_metric__result.txt index 0450476a29..19b1e65d1d 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__simple_metric__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_matching_item_for_filters.py/GroupByItemResolution/test_ambiguous_metric_time_in_query_filter__simple_metric__result.txt @@ -5,7 +5,10 @@ GroupByItemResolution( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=(METRIC_TIME,), @@ -19,7 +22,10 @@ GroupByItemResolution( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter__result_0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter__result_0.txt index b6d9c3f3ca..d3104131e6 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter__result_0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter__result_0.txt @@ -31,7 +31,10 @@ MetricFlowQuerySpec( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=( @@ -48,7 +51,10 @@ MetricFlowQuerySpec( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter_on_input_metric__result_0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter_on_input_metric__result_0.txt index c39e7639ff..a5fd895e42 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter_on_input_metric__result_0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_derived_metric_with_defined_metric_time_filter_on_input_metric__result_0.txt @@ -31,7 +31,10 @@ MetricFlowQuerySpec( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=QUARTER, + time_granularity=ExpandedTimeGranularity( + name='quarter', + base_granularity=QUARTER, + ), ): ( LinkableDimension( properties=( @@ -48,7 +51,10 @@ MetricFlowQuerySpec( semantic_model_name='monthly_measures_source', ), ), - time_granularity=QUARTER, + time_granularity=ExpandedTimeGranularity( + name='quarter', + base_granularity=QUARTER, + ), ), ), }, @@ -100,7 +106,10 @@ MetricFlowQuerySpec( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=( @@ -117,7 +126,10 @@ MetricFlowQuerySpec( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_simple_metric_with_defined_metric_time_filter__result_0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_simple_metric_with_defined_metric_time_filter__result_0.txt index 957321aff2..2bbdd3b918 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_simple_metric_with_defined_metric_time_filter__result_0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_metric_time_granularity.py/MetricFlowQuerySpec/test_simple_metric_with_defined_metric_time_filter__result_0.txt @@ -31,7 +31,10 @@ MetricFlowQuerySpec( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=QUARTER, + time_granularity=ExpandedTimeGranularity( + name='quarter', + base_granularity=QUARTER, + ), ): ( LinkableDimension( properties=( @@ -48,7 +51,10 @@ MetricFlowQuerySpec( semantic_model_name='monthly_measures_source', ), ), - time_granularity=QUARTER, + time_granularity=ExpandedTimeGranularity( + name='quarter', + base_granularity=QUARTER, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure__result0.txt index 8e7a823ed4..56a269375b 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure__result0.txt @@ -1,26 +1,26 @@ Model Join-Path Entity Links Name Time Granularity Date Part Properties ------------------------------------------ --------------------------------------------- --------------------------------------------------- ------------------ ----------- ------------------------------------------- ('listings_latest',) () listing ['ENTITY', 'LOCAL'] -('listings_latest',) () metric_time DAY ['METRIC_TIME'] -('listings_latest',) () metric_time DAY DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time DAY YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('listings_latest',) () metric_time YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day ['METRIC_TIME'] +('listings_latest',) () metric_time day DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time day YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time month YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time quarter ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time quarter YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time week YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time year ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('listings_latest',) () metric_time year YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] ('listings_latest',) () user ['ENTITY', 'LOCAL'] ('listings_latest',) ("('listing',)", "('booking', 'listing')") approximate_continuous_booking_value_p99 ['JOINED', 'METRIC'] ('listings_latest',) ("('listing',)", "('booking', 'listing')") approximate_discrete_booking_value_p99 ['JOINED', 'METRIC'] @@ -210,280 +210,280 @@ Model Join-Path Entity Links ('listings_latest',) ("('user',)", "('visit', 'user')") visit_buy_conversions ['JOINED', 'METRIC'] ('listings_latest',) ('listing',) capacity_latest ['LOCAL'] ('listings_latest',) ('listing',) country_latest ['LOCAL'] -('listings_latest',) ('listing',) created_at DAY ['LOCAL'] -('listings_latest',) ('listing',) created_at DAY DAY ['LOCAL'] -('listings_latest',) ('listing',) created_at DAY DOW ['LOCAL'] -('listings_latest',) ('listing',) created_at DAY DOY ['LOCAL'] -('listings_latest',) ('listing',) created_at DAY MONTH ['LOCAL'] -('listings_latest',) ('listing',) created_at DAY QUARTER ['LOCAL'] -('listings_latest',) ('listing',) created_at DAY YEAR ['LOCAL'] -('listings_latest',) ('listing',) created_at MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at WEEK ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds DAY ['LOCAL'] -('listings_latest',) ('listing',) ds DAY DAY ['LOCAL'] -('listings_latest',) ('listing',) ds DAY DOW ['LOCAL'] -('listings_latest',) ('listing',) ds DAY DOY ['LOCAL'] -('listings_latest',) ('listing',) ds DAY MONTH ['LOCAL'] -('listings_latest',) ('listing',) ds DAY QUARTER ['LOCAL'] -('listings_latest',) ('listing',) ds DAY YEAR ['LOCAL'] -('listings_latest',) ('listing',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('listings_latest',) ('listing',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at day ['LOCAL'] +('listings_latest',) ('listing',) created_at day DAY ['LOCAL'] +('listings_latest',) ('listing',) created_at day DOW ['LOCAL'] +('listings_latest',) ('listing',) created_at day DOY ['LOCAL'] +('listings_latest',) ('listing',) created_at day MONTH ['LOCAL'] +('listings_latest',) ('listing',) created_at day QUARTER ['LOCAL'] +('listings_latest',) ('listing',) created_at day YEAR ['LOCAL'] +('listings_latest',) ('listing',) created_at month ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at quarter ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at week ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at year ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds day ['LOCAL'] +('listings_latest',) ('listing',) ds day DAY ['LOCAL'] +('listings_latest',) ('listing',) ds day DOW ['LOCAL'] +('listings_latest',) ('listing',) ds day DOY ['LOCAL'] +('listings_latest',) ('listing',) ds day MONTH ['LOCAL'] +('listings_latest',) ('listing',) ds day QUARTER ['LOCAL'] +('listings_latest',) ('listing',) ds day YEAR ['LOCAL'] +('listings_latest',) ('listing',) ds month ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds quarter ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds year ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('listings_latest',) ('listing',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] ('listings_latest',) ('listing',) is_lux_latest ['LOCAL'] ('listings_latest',) ('listing',) user ['ENTITY', 'LOCAL'] ('listings_latest', 'companies') ('user',) company ['ENTITY', 'JOINED'] ('listings_latest', 'companies') ('user',) company_name ['JOINED'] ('listings_latest', 'lux_listing_mapping') ('listing',) lux_listing ['ENTITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at HOUR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at HOUR DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at HOUR DOW ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at HOUR DOY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at HOUR MONTH ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at HOUR QUARTER ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at HOUR YEAR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) archived_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MINUTE ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MINUTE DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MINUTE DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MINUTE DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MINUTE MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MINUTE QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MINUTE YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts SECOND ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts SECOND DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts SECOND DOW ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts SECOND DOY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts SECOND MONTH ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts SECOND QUARTER ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts SECOND YEAR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) bio_added_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at DAY DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at DAY DOW ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at DAY DOY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at DAY MONTH ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at DAY QUARTER ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at DAY YEAR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) created_at YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds DAY DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds DAY DOW ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds DAY DOY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds DAY MONTH ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds DAY QUARTER ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds DAY YEAR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned DAY DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned DAY DOW ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned DAY DOY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned DAY MONTH ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned DAY QUARTER ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned DAY YEAR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) ds_partitioned YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at day ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at hour ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at hour DAY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at hour DOW ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at hour DOY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at hour MONTH ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at hour QUARTER ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at hour YEAR ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) archived_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts minute ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts minute DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts minute DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts minute DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts minute MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts minute QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts minute YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts second ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts second DAY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts second DOW ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts second DOY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts second MONTH ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts second QUARTER ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts second YEAR ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) bio_added_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at day ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at day DAY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at day DOW ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at day DOY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at day MONTH ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at day QUARTER ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at day YEAR ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) created_at year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds day ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds day DAY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds day DOW ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds day DOY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds day MONTH ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds day QUARTER ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds day YEAR ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned day ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned day DAY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned day DOW ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned day DOY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned day MONTH ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned day QUARTER ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned day YEAR ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) ds_partitioned year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] ('listings_latest', 'users_ds_source') ('user',) home_state ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MINUTE ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MINUTE DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MINUTE DOW ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MINUTE DOY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MINUTE MONTH ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MINUTE QUARTER ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MINUTE YEAR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_login_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts DAY DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts DAY DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts DAY DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts DAY MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts DAY YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts HOUR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts HOUR DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts HOUR DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts HOUR DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts HOUR MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts HOUR QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts HOUR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND DAY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND DOW ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND DOY ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND MONTH ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND QUARTER ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND YEAR ['JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MINUTE ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MINUTE DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MINUTE DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MINUTE DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MINUTE MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MINUTE QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MINUTE YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts SECOND ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts SECOND DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts SECOND DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts SECOND DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts SECOND MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts SECOND QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts SECOND YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest DAY ['JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest DAY DAY ['JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest DAY DOW ['JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest DAY DOY ['JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest DAY MONTH ['JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest DAY QUARTER ['JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest DAY YEAR ['JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest WEEK ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] -('listings_latest', 'users_latest') ('user',) ds_latest YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts minute ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts minute DAY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts minute DOW ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts minute DOY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts minute MONTH ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts minute QUARTER ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts minute YEAR ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_login_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts day ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts day DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts day DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts day DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts day MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts day QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts day YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts hour ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts hour DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts hour DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts hour DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts hour MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts hour QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts hour YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts millisecond ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts millisecond DAY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts millisecond DOW ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts millisecond DOY ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts millisecond MONTH ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts millisecond QUARTER ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts millisecond YEAR ['JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts minute ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts minute DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts minute DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts minute DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts minute MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts minute QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts minute YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts second ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts second DAY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts second DOW ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts second DOY ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts second MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts second QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts second YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_ds_source') ('user',) last_profile_edit_ts year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest day ['JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest day DAY ['JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest day DOW ['JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest day DOY ['JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest day MONTH ['JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest day QUARTER ['JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest day YEAR ['JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest month ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest month MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest month QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest month YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest quarter ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest quarter YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest week ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest week MONTH ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest week QUARTER ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest week YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest year ['DERIVED_TIME_GRANULARITY', 'JOINED'] +('listings_latest', 'users_latest') ('user',) ds_latest year YEAR ['DERIVED_TIME_GRANULARITY', 'JOINED'] ('listings_latest', 'users_latest') ('user',) home_state_latest ['JOINED'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure_multi_hop_model__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure_multi_hop_model__result0.txt index 427981431b..dffa2a739e 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure_multi_hop_model__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_measure_multi_hop_model__result0.txt @@ -1,48 +1,48 @@ Model Join-Path Entity Links Name Time Granularity Date Part Properties ------------------------------------------------------------- -------------------------------------- ---------------------- ------------------ ----------- ------------------------------------------- ('account_month_txns',) () account_id ['ENTITY', 'LOCAL'] -('account_month_txns',) () metric_time DAY ['METRIC_TIME'] -('account_month_txns',) () metric_time DAY DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time DAY DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time DAY DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time DAY MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time DAY QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time DAY YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time WEEK ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] -('account_month_txns',) () metric_time YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time day ['METRIC_TIME'] +('account_month_txns',) () metric_time day DAY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time day DOW ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time day DOY ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time day MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time day QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time day YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time month ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time month MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time month QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time month YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time quarter ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time quarter YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time week ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time week MONTH ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time week QUARTER ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time week YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time year ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] +('account_month_txns',) () metric_time year YEAR ['DERIVED_TIME_GRANULARITY', 'METRIC_TIME'] ('account_month_txns',) ("('account_id',)", "('account_id',)") txn_count ['JOINED', 'METRIC'] ('account_month_txns',) ('account_id',) account_month ['LOCAL'] -('account_month_txns',) ('account_id',) ds DAY ['LOCAL'] -('account_month_txns',) ('account_id',) ds DAY DAY ['LOCAL'] -('account_month_txns',) ('account_id',) ds DAY DOW ['LOCAL'] -('account_month_txns',) ('account_id',) ds DAY DOY ['LOCAL'] -('account_month_txns',) ('account_id',) ds DAY MONTH ['LOCAL'] -('account_month_txns',) ('account_id',) ds DAY QUARTER ['LOCAL'] -('account_month_txns',) ('account_id',) ds DAY YEAR ['LOCAL'] -('account_month_txns',) ('account_id',) ds MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds MONTH MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds MONTH QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds MONTH YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds QUARTER QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds QUARTER YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds WEEK ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds WEEK MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds WEEK QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds WEEK YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] -('account_month_txns',) ('account_id',) ds YEAR YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds day ['LOCAL'] +('account_month_txns',) ('account_id',) ds day DAY ['LOCAL'] +('account_month_txns',) ('account_id',) ds day DOW ['LOCAL'] +('account_month_txns',) ('account_id',) ds day DOY ['LOCAL'] +('account_month_txns',) ('account_id',) ds day MONTH ['LOCAL'] +('account_month_txns',) ('account_id',) ds day QUARTER ['LOCAL'] +('account_month_txns',) ('account_id',) ds day YEAR ['LOCAL'] +('account_month_txns',) ('account_id',) ds month ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds month MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds month QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds month YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds quarter ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds quarter QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds quarter YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds week ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds week MONTH ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds week QUARTER ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds week YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds year ['DERIVED_TIME_GRANULARITY', 'LOCAL'] +('account_month_txns',) ('account_id',) ds year YEAR ['DERIVED_TIME_GRANULARITY', 'LOCAL'] ('account_month_txns', 'bridge_table') ('account_id',) customer_id ['ENTITY', 'JOINED'] ('account_month_txns', 'bridge_table') ('account_id',) extra_dim ['JOINED'] ('account_month_txns', 'bridge_table', 'customer_other_data') ('account_id', 'customer_id') country ['JOINED', 'MULTI_HOP'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_metrics__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_metrics__result0.txt index 9e424ad035..668a927d9e 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_metrics__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_elements_for_metrics__result0.txt @@ -2,158 +2,158 @@ Model Join-Path Entity Links Nam ------------------------------------------------------ ------------------- -------------------- ------------------ ----------- --------------------------------- ('views_source',) () listing ['ENTITY', 'LOCAL'] ('views_source',) () user ['ENTITY', 'LOCAL'] -('views_source',) ('view',) ds DAY ['LOCAL'] -('views_source',) ('view',) ds DAY DAY ['LOCAL'] -('views_source',) ('view',) ds DAY DOW ['LOCAL'] -('views_source',) ('view',) ds DAY DOY ['LOCAL'] -('views_source',) ('view',) ds DAY MONTH ['LOCAL'] -('views_source',) ('view',) ds DAY QUARTER ['LOCAL'] -('views_source',) ('view',) ds DAY YEAR ['LOCAL'] -('views_source',) ('view',) ds_partitioned DAY ['LOCAL'] -('views_source',) ('view',) ds_partitioned DAY DAY ['LOCAL'] -('views_source',) ('view',) ds_partitioned DAY DOW ['LOCAL'] -('views_source',) ('view',) ds_partitioned DAY DOY ['LOCAL'] -('views_source',) ('view',) ds_partitioned DAY MONTH ['LOCAL'] -('views_source',) ('view',) ds_partitioned DAY QUARTER ['LOCAL'] -('views_source',) ('view',) ds_partitioned DAY YEAR ['LOCAL'] +('views_source',) ('view',) ds day ['LOCAL'] +('views_source',) ('view',) ds day DAY ['LOCAL'] +('views_source',) ('view',) ds day DOW ['LOCAL'] +('views_source',) ('view',) ds day DOY ['LOCAL'] +('views_source',) ('view',) ds day MONTH ['LOCAL'] +('views_source',) ('view',) ds day QUARTER ['LOCAL'] +('views_source',) ('view',) ds day YEAR ['LOCAL'] +('views_source',) ('view',) ds_partitioned day ['LOCAL'] +('views_source',) ('view',) ds_partitioned day DAY ['LOCAL'] +('views_source',) ('view',) ds_partitioned day DOW ['LOCAL'] +('views_source',) ('view',) ds_partitioned day DOY ['LOCAL'] +('views_source',) ('view',) ds_partitioned day MONTH ['LOCAL'] +('views_source',) ('view',) ds_partitioned day QUARTER ['LOCAL'] +('views_source',) ('view',) ds_partitioned day YEAR ['LOCAL'] ('views_source',) ('view',) listing ['ENTITY', 'LOCAL'] ('views_source',) ('view',) user ['ENTITY', 'LOCAL'] ('views_source', 'companies') ('user',) company ['ENTITY', 'JOINED'] ('views_source', 'companies') ('user',) company_name ['JOINED'] ('views_source', 'listings_latest') ('listing',) capacity_latest ['JOINED'] ('views_source', 'listings_latest') ('listing',) country_latest ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DOW ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DOY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY MONTH ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY QUARTER ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY YEAR ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DOW ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DOY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY MONTH ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY QUARTER ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY YEAR ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DAY ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DOW ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DOY ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day MONTH ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day QUARTER ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day YEAR ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DAY ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DOW ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DOY ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day MONTH ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day QUARTER ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day YEAR ['JOINED'] ('views_source', 'listings_latest') ('listing',) is_lux_latest ['JOINED'] ('views_source', 'listings_latest') ('listing',) user ['ENTITY', 'JOINED'] ('views_source', 'listings_latest', 'companies') ('listing', 'user') company ['ENTITY', 'JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'companies') ('listing', 'user') company_name ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day YEAR ['JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') home_state ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day YEAR ['JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'users_latest') ('listing', 'user') home_state_latest ['JOINED', 'MULTI_HOP'] ('views_source', 'lux_listing_mapping') ('listing',) lux_listing ['ENTITY', 'JOINED'] -('views_source', 'users_ds_source') ('user',) archived_at HOUR ['JOINED'] -('views_source', 'users_ds_source') ('user',) archived_at HOUR DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) archived_at HOUR DOW ['JOINED'] -('views_source', 'users_ds_source') ('user',) archived_at HOUR DOY ['JOINED'] -('views_source', 'users_ds_source') ('user',) archived_at HOUR MONTH ['JOINED'] -('views_source', 'users_ds_source') ('user',) archived_at HOUR QUARTER ['JOINED'] -('views_source', 'users_ds_source') ('user',) archived_at HOUR YEAR ['JOINED'] -('views_source', 'users_ds_source') ('user',) bio_added_ts SECOND ['JOINED'] -('views_source', 'users_ds_source') ('user',) bio_added_ts SECOND DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) bio_added_ts SECOND DOW ['JOINED'] -('views_source', 'users_ds_source') ('user',) bio_added_ts SECOND DOY ['JOINED'] -('views_source', 'users_ds_source') ('user',) bio_added_ts SECOND MONTH ['JOINED'] -('views_source', 'users_ds_source') ('user',) bio_added_ts SECOND QUARTER ['JOINED'] -('views_source', 'users_ds_source') ('user',) bio_added_ts SECOND YEAR ['JOINED'] -('views_source', 'users_ds_source') ('user',) created_at DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) created_at DAY DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) created_at DAY DOW ['JOINED'] -('views_source', 'users_ds_source') ('user',) created_at DAY DOY ['JOINED'] -('views_source', 'users_ds_source') ('user',) created_at DAY MONTH ['JOINED'] -('views_source', 'users_ds_source') ('user',) created_at DAY QUARTER ['JOINED'] -('views_source', 'users_ds_source') ('user',) created_at DAY YEAR ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds DAY DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds DAY DOW ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds DAY DOY ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds DAY MONTH ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds DAY QUARTER ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds DAY YEAR ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds_partitioned DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds_partitioned DAY DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds_partitioned DAY DOW ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds_partitioned DAY DOY ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds_partitioned DAY MONTH ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds_partitioned DAY QUARTER ['JOINED'] -('views_source', 'users_ds_source') ('user',) ds_partitioned DAY YEAR ['JOINED'] +('views_source', 'users_ds_source') ('user',) archived_at hour ['JOINED'] +('views_source', 'users_ds_source') ('user',) archived_at hour DAY ['JOINED'] +('views_source', 'users_ds_source') ('user',) archived_at hour DOW ['JOINED'] +('views_source', 'users_ds_source') ('user',) archived_at hour DOY ['JOINED'] +('views_source', 'users_ds_source') ('user',) archived_at hour MONTH ['JOINED'] +('views_source', 'users_ds_source') ('user',) archived_at hour QUARTER ['JOINED'] +('views_source', 'users_ds_source') ('user',) archived_at hour YEAR ['JOINED'] +('views_source', 'users_ds_source') ('user',) bio_added_ts second ['JOINED'] +('views_source', 'users_ds_source') ('user',) bio_added_ts second DAY ['JOINED'] +('views_source', 'users_ds_source') ('user',) bio_added_ts second DOW ['JOINED'] +('views_source', 'users_ds_source') ('user',) bio_added_ts second DOY ['JOINED'] +('views_source', 'users_ds_source') ('user',) bio_added_ts second MONTH ['JOINED'] +('views_source', 'users_ds_source') ('user',) bio_added_ts second QUARTER ['JOINED'] +('views_source', 'users_ds_source') ('user',) bio_added_ts second YEAR ['JOINED'] +('views_source', 'users_ds_source') ('user',) created_at day ['JOINED'] +('views_source', 'users_ds_source') ('user',) created_at day DAY ['JOINED'] +('views_source', 'users_ds_source') ('user',) created_at day DOW ['JOINED'] +('views_source', 'users_ds_source') ('user',) created_at day DOY ['JOINED'] +('views_source', 'users_ds_source') ('user',) created_at day MONTH ['JOINED'] +('views_source', 'users_ds_source') ('user',) created_at day QUARTER ['JOINED'] +('views_source', 'users_ds_source') ('user',) created_at day YEAR ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds day ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds day DAY ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds day DOW ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds day DOY ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds day MONTH ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds day QUARTER ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds day YEAR ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds_partitioned day ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds_partitioned day DAY ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds_partitioned day DOW ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds_partitioned day DOY ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds_partitioned day MONTH ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds_partitioned day QUARTER ['JOINED'] +('views_source', 'users_ds_source') ('user',) ds_partitioned day YEAR ['JOINED'] ('views_source', 'users_ds_source') ('user',) home_state ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_login_ts MINUTE ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_login_ts MINUTE DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_login_ts MINUTE DOW ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_login_ts MINUTE DOY ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_login_ts MINUTE MONTH ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_login_ts MINUTE QUARTER ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_login_ts MINUTE YEAR ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND DAY ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND DOW ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND DOY ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND MONTH ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND QUARTER ['JOINED'] -('views_source', 'users_ds_source') ('user',) last_profile_edit_ts MILLISECOND YEAR ['JOINED'] -('views_source', 'users_latest') ('user',) ds_latest DAY ['JOINED'] -('views_source', 'users_latest') ('user',) ds_latest DAY DAY ['JOINED'] -('views_source', 'users_latest') ('user',) ds_latest DAY DOW ['JOINED'] -('views_source', 'users_latest') ('user',) ds_latest DAY DOY ['JOINED'] -('views_source', 'users_latest') ('user',) ds_latest DAY MONTH ['JOINED'] -('views_source', 'users_latest') ('user',) ds_latest DAY QUARTER ['JOINED'] -('views_source', 'users_latest') ('user',) ds_latest DAY YEAR ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_login_ts minute ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_login_ts minute DAY ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_login_ts minute DOW ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_login_ts minute DOY ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_login_ts minute MONTH ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_login_ts minute QUARTER ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_login_ts minute YEAR ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_profile_edit_ts millisecond ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_profile_edit_ts millisecond DAY ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_profile_edit_ts millisecond DOW ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_profile_edit_ts millisecond DOY ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_profile_edit_ts millisecond MONTH ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_profile_edit_ts millisecond QUARTER ['JOINED'] +('views_source', 'users_ds_source') ('user',) last_profile_edit_ts millisecond YEAR ['JOINED'] +('views_source', 'users_latest') ('user',) ds_latest day ['JOINED'] +('views_source', 'users_latest') ('user',) ds_latest day DAY ['JOINED'] +('views_source', 'users_latest') ('user',) ds_latest day DOW ['JOINED'] +('views_source', 'users_latest') ('user',) ds_latest day DOY ['JOINED'] +('views_source', 'users_latest') ('user',) ds_latest day MONTH ['JOINED'] +('views_source', 'users_latest') ('user',) ds_latest day QUARTER ['JOINED'] +('views_source', 'users_latest') ('user',) ds_latest day YEAR ['JOINED'] ('views_source', 'users_latest') ('user',) home_state_latest ['JOINED'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_set_for_common_dimensions_in_different_models__result0.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_set_for_common_dimensions_in_different_models__result0.txt index 7652399b70..814471405d 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_set_for_common_dimensions_in_different_models__result0.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_semantic_model_container.py/str/test_linkable_set_for_common_dimensions_in_different_models__result0.txt @@ -1,164 +1,164 @@ Model Join-Path Entity Links Name Time Granularity Date Part Properties --------------------------------------------------------- ------------------- -------------------- ------------------ ----------- --------------------------------- ('bookings_source',) () listing ['ENTITY', 'LOCAL'] -('bookings_source',) () metric_time DAY ['METRIC_TIME'] +('bookings_source',) () metric_time day ['METRIC_TIME'] ('bookings_source', 'listings_latest') ('listing',) capacity_latest ['JOINED'] ('bookings_source', 'listings_latest') ('listing',) country_latest ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DOW ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY DOY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY MONTH ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY QUARTER ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) created_at DAY YEAR ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DAY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DOW ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY DOY ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY MONTH ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY QUARTER ['JOINED'] -('bookings_source', 'listings_latest') ('listing',) ds DAY YEAR ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DAY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DOW ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day DOY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day MONTH ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day QUARTER ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) created_at day YEAR ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DAY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DOW ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day DOY ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day MONTH ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day QUARTER ['JOINED'] +('bookings_source', 'listings_latest') ('listing',) ds day YEAR ['JOINED'] ('bookings_source', 'listings_latest') ('listing',) is_lux_latest ['JOINED'] ('bookings_source', 'listings_latest') ('listing',) user ['ENTITY', 'JOINED'] ('bookings_source', 'listings_latest', 'companies') ('listing', 'user') company ['ENTITY', 'JOINED', 'MULTI_HOP'] ('bookings_source', 'listings_latest', 'companies') ('listing', 'user') company_name ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day YEAR ['JOINED', 'MULTI_HOP'] ('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') home_state ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND YEAR ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DAY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOW ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOY ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY MONTH ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY QUARTER ['JOINED', 'MULTI_HOP'] -('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond YEAR ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DAY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOW ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOY ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day MONTH ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day QUARTER ['JOINED', 'MULTI_HOP'] +('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day YEAR ['JOINED', 'MULTI_HOP'] ('bookings_source', 'listings_latest', 'users_latest') ('listing', 'user') home_state_latest ['JOINED', 'MULTI_HOP'] ('bookings_source', 'lux_listing_mapping') ('listing',) lux_listing ['ENTITY', 'JOINED'] ('views_source',) () listing ['ENTITY', 'LOCAL'] -('views_source',) () metric_time DAY ['METRIC_TIME'] +('views_source',) () metric_time day ['METRIC_TIME'] ('views_source', 'listings_latest') ('listing',) capacity_latest ['JOINED'] ('views_source', 'listings_latest') ('listing',) country_latest ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DOW ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY DOY ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY MONTH ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY QUARTER ['JOINED'] -('views_source', 'listings_latest') ('listing',) created_at DAY YEAR ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DAY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DOW ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY DOY ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY MONTH ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY QUARTER ['JOINED'] -('views_source', 'listings_latest') ('listing',) ds DAY YEAR ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DAY ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DOW ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day DOY ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day MONTH ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day QUARTER ['JOINED'] +('views_source', 'listings_latest') ('listing',) created_at day YEAR ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DAY ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DOW ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day DOY ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day MONTH ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day QUARTER ['JOINED'] +('views_source', 'listings_latest') ('listing',) ds day YEAR ['JOINED'] ('views_source', 'listings_latest') ('listing',) is_lux_latest ['JOINED'] ('views_source', 'listings_latest') ('listing',) user ['ENTITY', 'JOINED'] ('views_source', 'listings_latest', 'companies') ('listing', 'user') company ['ENTITY', 'JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'companies') ('listing', 'user') company_name ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at HOUR YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts SECOND YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds DAY YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned DAY YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') archived_at hour YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') bio_added_ts second YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') created_at day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds day YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') ds_partitioned day YEAR ['JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') home_state ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts MINUTE YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts MILLISECOND YEAR ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DAY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOW ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY DOY ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY MONTH ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY QUARTER ['JOINED', 'MULTI_HOP'] -('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest DAY YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_login_ts minute YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_ds_source') ('listing', 'user') last_profile_edit_ts millisecond YEAR ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DAY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOW ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day DOY ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day MONTH ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day QUARTER ['JOINED', 'MULTI_HOP'] +('views_source', 'listings_latest', 'users_latest') ('listing', 'user') ds_latest day YEAR ['JOINED', 'MULTI_HOP'] ('views_source', 'listings_latest', 'users_latest') ('listing', 'user') home_state_latest ['JOINED', 'MULTI_HOP'] ('views_source', 'lux_listing_mapping') ('listing',) lux_listing ['ENTITY', 'JOINED'] diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_derived_metrics_with_common_filtered_metric__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_derived_metrics_with_common_filtered_metric__result.txt index fe217b1e52..a338d53584 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_derived_metrics_with_common_filtered_metric__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_derived_metrics_with_common_filtered_metric__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -44,7 +47,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, @@ -92,7 +98,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -108,7 +117,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_filter__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_filter__result.txt index 680894f346..814d0b4b4c 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_filter__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_filter__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=( @@ -45,7 +48,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), LinkableDimension( properties=( @@ -61,7 +67,10 @@ FilterSpecResolutionLookUp( semantic_model_name='yearly_measure_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_input_filter__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_input_filter__result.txt index 1828fec269..023526cb23 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_input_filter__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_invalid_metric_input_filter__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=( @@ -45,7 +48,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), LinkableDimension( properties=( @@ -61,7 +67,10 @@ FilterSpecResolutionLookUp( semantic_model_name='yearly_measure_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_filter__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_filter__result.txt index c2ffe2a0f9..5d5dd54fd7 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_filter__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_filter__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -44,7 +47,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_input_filter__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_input_filter__result.txt index 7977c5d6e5..5948e80f30 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_input_filter__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_resolution_for_valid_metric_input_filter__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -44,7 +47,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__accumulate_last_2_months_metric__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__accumulate_last_2_months_metric__result.txt index d2edee4213..6d3b86f8b0 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__accumulate_last_2_months_metric__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__accumulate_last_2_months_metric__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -44,7 +47,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_different_parent_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_different_parent_time_grains__result.txt index c08cfc993e..e5ac76a1cd 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_different_parent_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_different_parent_time_grains__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=( @@ -45,7 +48,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), LinkableDimension( properties=( @@ -61,7 +67,10 @@ FilterSpecResolutionLookUp( semantic_model_name='yearly_measure_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_same_parent_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_same_parent_time_grains__result.txt index e6d1c789dd..8f83ab08bc 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_same_parent_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__derived_metric_with_same_parent_time_grains__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -44,7 +47,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_different_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_different_time_grains__result.txt index 7687fd07bf..f833af58e0 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_different_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_different_time_grains__result.txt @@ -31,7 +31,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ): ( LinkableDimension( properties=( @@ -48,7 +51,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), LinkableDimension( properties=( @@ -64,7 +70,10 @@ FilterSpecResolutionLookUp( semantic_model_name='yearly_measure_source', ), ), - time_granularity=YEAR, + time_granularity=ExpandedTimeGranularity( + name='year', + base_granularity=YEAR, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_same_time_grains__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_same_time_grains__result.txt index 32df7d86ae..bcae0cf9e6 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_same_time_grains__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__metrics_with_same_time_grains__result.txt @@ -31,7 +31,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -47,7 +50,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__simple_metric__result.txt b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__simple_metric__result.txt index 686f6fe4a4..f508579985 100644 --- a/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__simple_metric__result.txt +++ b/metricflow-semantics/tests_metricflow_semantics/snapshots/test_spec_lookup.py/str/test_filter_spec_resolution__simple_metric__result.txt @@ -28,7 +28,10 @@ FilterSpecResolutionLookUp( ElementPathKey( element_name='metric_time', element_type=TIME_DIMENSION, - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ): ( LinkableDimension( properties=( @@ -44,7 +47,10 @@ FilterSpecResolutionLookUp( semantic_model_name='monthly_measures_source', ), ), - time_granularity=MONTH, + time_granularity=ExpandedTimeGranularity( + name='month', + base_granularity=MONTH, + ), ), ), }, diff --git a/metricflow-semantics/tests_metricflow_semantics/specs/test_spec_serialization.py b/metricflow-semantics/tests_metricflow_semantics/specs/test_spec_serialization.py index d9795419f1..0dc0d8a252 100644 --- a/metricflow-semantics/tests_metricflow_semantics/specs/test_spec_serialization.py +++ b/metricflow-semantics/tests_metricflow_semantics/specs/test_spec_serialization.py @@ -17,6 +17,7 @@ from metricflow_semantics.specs.time_dimension_spec import TimeDimensionSpec from metricflow_semantics.specs.where_filter.where_filter_spec import WhereFilterSpec from metricflow_semantics.sql.sql_bind_parameters import SqlBindParameter, SqlBindParameters, SqlBindParameterValue +from metricflow_semantics.time.granularity import ExpandedTimeGranularity def test_where_filter_spec_serialization() -> None: # noqa: D103 @@ -45,7 +46,7 @@ def test_where_filter_spec_serialization() -> None: # noqa: D103 ), ), date_part=DatePart.DAY, - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), ), ), ), diff --git a/metricflow/engine/metricflow_engine.py b/metricflow/engine/metricflow_engine.py index 0eedc652e1..c30e0e928a 100644 --- a/metricflow/engine/metricflow_engine.py +++ b/metricflow/engine/metricflow_engine.py @@ -595,12 +595,21 @@ def simple_dimensions_for_metrics( # noqa: D102 entity_reference.element_name for entity_reference in linkable_dimension.entity_links ), - time_granularity=linkable_dimension.time_granularity, + # TODO: Update StructuredLinkableSpecName to use ExpandedTimeGranularity + time_granularity=( + linkable_dimension.time_granularity.base_granularity + if linkable_dimension.time_granularity is not None + else None + ), ).qualified_name, description="Event time for metrics.", metadata=None, type_params=PydanticDimensionTypeParams( - time_granularity=linkable_dimension.time_granularity, + time_granularity=( + linkable_dimension.time_granularity.base_granularity + if linkable_dimension.time_granularity is not None + else None + ), validity_params=None, ), is_partition=False, diff --git a/tests_metricflow/plan_conversion/test_dataflow_to_sql_plan.py b/tests_metricflow/plan_conversion/test_dataflow_to_sql_plan.py index 7b60b7f318..69723a06de 100644 --- a/tests_metricflow/plan_conversion/test_dataflow_to_sql_plan.py +++ b/tests_metricflow/plan_conversion/test_dataflow_to_sql_plan.py @@ -31,6 +31,7 @@ from metricflow_semantics.test_helpers.config_helpers import MetricFlowTestConfiguration from metricflow_semantics.test_helpers.metric_time_dimension import MTD_SPEC_DAY from metricflow_semantics.test_helpers.snapshot_helpers import assert_plan_snapshot_text_equal +from metricflow_semantics.time.granularity import ExpandedTimeGranularity from metricflow.dataflow.builder.dataflow_plan_builder import DataflowPlanBuilder from metricflow.dataflow.dataflow_plan import ( @@ -208,7 +209,7 @@ def test_filter_with_where_constraint_node( dimension_type=DimensionType.TIME, entity_links=(EntityReference(element_name="booking"),), properties=frozenset(), - time_granularity=TimeGranularity.DAY, + time_granularity=ExpandedTimeGranularity.from_time_granularity(TimeGranularity.DAY), date_part=None, join_path=SemanticModelJoinPath( left_semantic_model_reference=SemanticModelReference("bookings_source"), diff --git a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_join_to_time_spine_with_filters__dfp_0.xml b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_join_to_time_spine_with_filters__dfp_0.xml index 553d97b92d..c2a5359ee6 100644 --- a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_join_to_time_spine_with_filters__dfp_0.xml +++ b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_join_to_time_spine_with_filters__dfp_0.xml @@ -26,7 +26,10 @@ - + + + + @@ -67,7 +70,10 @@ - + + + + @@ -119,7 +125,10 @@ - + + + + diff --git a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_to_grain_metric_filter_and_query_have_different_granularities__dfp_0.xml b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_to_grain_metric_filter_and_query_have_different_granularities__dfp_0.xml index 17b6a97992..ddd17b1584 100644 --- a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_to_grain_metric_filter_and_query_have_different_granularities__dfp_0.xml +++ b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_to_grain_metric_filter_and_query_have_different_granularities__dfp_0.xml @@ -26,7 +26,10 @@ - + + + + @@ -65,7 +68,10 @@ - + + + + @@ -112,7 +118,10 @@ - + + + + diff --git a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_window_metric_filter_and_query_have_different_granularities__dfp_0.xml b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_window_metric_filter_and_query_have_different_granularities__dfp_0.xml index 3316ce438a..2a578f548b 100644 --- a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_window_metric_filter_and_query_have_different_granularities__dfp_0.xml +++ b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_offset_window_metric_filter_and_query_have_different_granularities__dfp_0.xml @@ -26,7 +26,10 @@ - + + + + @@ -68,7 +71,10 @@ - + + + + @@ -114,7 +120,10 @@ - + + + + @@ -188,7 +197,10 @@ - + + + + @@ -233,7 +245,10 @@ - + + + + diff --git a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_where_constrained_plan_time_dimension__dfp_0.xml b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_where_constrained_plan_time_dimension__dfp_0.xml index 3c79e8f8dc..03ea5bd452 100644 --- a/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_where_constrained_plan_time_dimension__dfp_0.xml +++ b/tests_metricflow/snapshots/test_dataflow_plan_builder.py/DataflowPlan/test_where_constrained_plan_time_dimension__dfp_0.xml @@ -26,7 +26,10 @@ - + + + + @@ -75,7 +78,10 @@ - + + + + diff --git a/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfp_0.xml b/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfp_0.xml index f6be93d338..cd713d5d7c 100644 --- a/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfp_0.xml +++ b/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfp_0.xml @@ -26,7 +26,10 @@ - + + + + @@ -75,7 +78,10 @@ - + + + + diff --git a/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfpo_0.xml b/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfpo_0.xml index 46f22c90b4..5de7f20594 100644 --- a/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfpo_0.xml +++ b/tests_metricflow/snapshots/test_predicate_pushdown_optimizer.py/DataflowPlan/test_simple_join_metric_time_pushdown_with_two_targets__dfpo_0.xml @@ -26,7 +26,10 @@ - + + + + @@ -75,7 +78,10 @@ - + + + +