Files
huheng-research/config/import_templates.json
2026-06-23 18:59:42 +08:00

296 lines
7.8 KiB
JSON

{
"area_monthly_metrics": {
"description": "Monthly area-level housing market metrics.",
"target_table": "silver.area_monthly_metrics",
"primary_key": ["area_id", "month"],
"columns": [
{
"name": "area_id",
"type": "text",
"required": true,
"description": "Stable area identifier from silver.areas."
},
{
"name": "month",
"type": "month",
"required": true,
"description": "Metric month in YYYY-MM format."
},
{
"name": "transaction_count",
"type": "integer",
"required": true,
"min": 0,
"description": "Observed second-hand transaction count."
},
{
"name": "transaction_price_psm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Average transaction price, RMB per square meter."
},
{
"name": "listing_count",
"type": "integer",
"required": true,
"min": 0,
"description": "Active listing count."
},
{
"name": "listing_price_psm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Average listing price, RMB per square meter."
},
{
"name": "median_days_on_market",
"type": "decimal",
"required": true,
"min": 0,
"description": "Median days on market."
},
{
"name": "rent_price_psm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Monthly rent, RMB per square meter."
},
{
"name": "new_supply_units",
"type": "integer",
"required": true,
"min": 0,
"description": "New residential supply units."
},
{
"name": "land_residential_gfa_sqm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Residential land transaction GFA, square meters."
},
{
"name": "mortgage_rate_pct",
"type": "decimal",
"required": true,
"min": 0,
"max": 20,
"description": "Mainstream mortgage rate percentage."
},
{
"name": "policy_signal",
"type": "integer",
"required": true,
"min": -2,
"max": 2,
"description": "Policy direction signal from -2 to 2."
},
{
"name": "source",
"type": "text",
"required": true,
"description": "Human-readable source name or source code."
}
]
},
"neighborhood_monthly_metrics": {
"description": "Monthly neighborhood-level housing market metrics.",
"target_table": "silver.neighborhood_monthly_metrics",
"primary_key": ["neighborhood_id", "month"],
"columns": [
{
"name": "neighborhood_id",
"type": "text",
"required": true,
"description": "Stable neighborhood identifier from silver.neighborhoods."
},
{
"name": "month",
"type": "month",
"required": true,
"description": "Metric month in YYYY-MM format."
},
{
"name": "transaction_count",
"type": "integer",
"required": true,
"min": 0,
"description": "Observed transaction count."
},
{
"name": "transaction_price_psm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Average transaction price, RMB per square meter."
},
{
"name": "listing_count",
"type": "integer",
"required": true,
"min": 0,
"description": "Active listing count."
},
{
"name": "listing_price_psm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Average listing price, RMB per square meter."
},
{
"name": "rent_price_psm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Monthly rent, RMB per square meter."
},
{
"name": "median_days_on_market",
"type": "decimal",
"required": true,
"min": 0,
"description": "Median days on market."
},
{
"name": "available_units",
"type": "integer",
"required": true,
"min": 0,
"description": "Currently available units in the neighborhood sample."
},
{
"name": "source",
"type": "text",
"required": true,
"description": "Human-readable source name or source code."
}
]
},
"policy_events": {
"description": "Policy events that can affect market liquidity, credit or demand.",
"target_table": "raw.policy_events",
"primary_key": ["event_date", "title"],
"columns": [
{
"name": "event_date",
"type": "date",
"required": true,
"description": "Policy event date in YYYY-MM-DD format."
},
{
"name": "level",
"type": "enum",
"required": true,
"allowed_values": ["national", "shanghai", "district"],
"description": "Policy jurisdiction level."
},
{
"name": "title",
"type": "text",
"required": true,
"description": "Short policy title."
},
{
"name": "impact_direction",
"type": "integer",
"required": true,
"min": -2,
"max": 2,
"description": "Expected impact from -2 tightening to 2 easing."
},
{
"name": "notes",
"type": "text",
"required": false,
"description": "Analyst notes and interpretation."
},
{
"name": "source_url",
"type": "url",
"required": false,
"description": "Official notice or source URL."
},
{
"name": "source",
"type": "text",
"required": true,
"description": "Human-readable source name or source code."
}
]
},
"land_sales": {
"description": "Residential land transaction records used for supply pressure analysis.",
"target_table": "raw.land_sales",
"primary_key": ["parcel_id"],
"columns": [
{
"name": "parcel_id",
"type": "text",
"required": true,
"description": "Stable land parcel identifier from the source."
},
{
"name": "area_id",
"type": "text",
"required": true,
"description": "Mapped area identifier from silver.areas."
},
{
"name": "transaction_date",
"type": "date",
"required": true,
"description": "Land transaction date in YYYY-MM-DD format."
},
{
"name": "parcel_name",
"type": "text",
"required": true,
"description": "Land parcel name."
},
{
"name": "residential_gfa_sqm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Residential planned gross floor area, square meters."
},
{
"name": "transaction_price_total_cny",
"type": "decimal",
"required": true,
"min": 0,
"description": "Total transaction price in RMB."
},
{
"name": "floor_price_cny_psm",
"type": "decimal",
"required": true,
"min": 0,
"description": "Implied floor price, RMB per square meter."
},
{
"name": "buyer",
"type": "text",
"required": false,
"description": "Winning bidder or buyer."
},
{
"name": "source_url",
"type": "url",
"required": false,
"description": "Announcement or source URL."
},
{
"name": "source",
"type": "text",
"required": true,
"description": "Human-readable source name or source code."
}
]
}
}