贝壳热度入库
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_d68814ae/redu-ruku。
技能介绍
解决的问题
贝壳房源热度数据每周更新,现有周更 ETL 流程(如 beike_weekly_ingest.py)并不覆盖热度数据。需要一个独立的入库通道,将每周更新的 xlsx 文件(包含房源、楼盘、租赁三个子表)按快照方式写入 xuzhou_v3.db 的 heat_* 表,且不与现有 ETL 流程耦合。
核心能力与关键步骤
三表入库:技能将 xlsx 的三个子表分别写入三张原始表:
heat_listing:逐套房源的热度数据(22847 行),包含 district、block、community、listingcode、totalprice、areasqm、inquiry30d、showing_30d 等字段。heat_community:楼盘聚合的热度数据(3151 行),包含 community、block、inquiry30d、showing30d 等字段。heat_rental:逐套租赁的热度数据(12344 行),包含 district、community、rentalid、areasqm、monthlyrent、layout、inquirymonth、showing_month 等字段。
关联键解析:heat_listing 和 heat_rental 的 community_id 通过 community_name 精确匹配到 dim_community 表。未匹配的记录 community_id 留 NULL,数据仍可查询,不阻塞入库流程。
快照累加:每周数据以快照形式写入,通过 snapshot_date 区分不同周的数据。历史数据不覆盖,确保热点趋势分析可以通过环比实现。
命名规则:热度表使用 showing_ 前缀(如 showing_30d、showing_month),与 beike_community_weekly.viewing_people_6m 彻底区分。面积、总价、月租等字段单位自明(area_sqm、total_price、monthly_rent)。
适用边界与注意点
- 技能仅处理 xlsx 文件的手动快照入库,不涉及定时调度或自动化流程。
- 入库后不生成视图、不创建
heat_unmatched或heat_meta等辅助表,三张原始表直接查询。 - 每次入库后需输出验证报告,包括各表行数、匹配率、TOP1 带看楼盘。匹配率低于 50% 的社区名需要检查是否需要补充
dim_community。 - 租赁数据的时间窗口为当月,房源和楼盘数据为近 30 日。
使用场景
- 每周收到贝壳房源热度 xlsx,需要把房源、楼盘、租赁三个子表写入 xuzhou_v3.db 的 heat_* 表
- 需要按 snapshot_date 保存历史热度,用于后续环比趋势分析
- xlsx 中 community_name 部分不在 dim_community,仍要把可匹配数据灌入 heat_listing 和 heat_rental
- 完成 heat_* 写入后,要检查各表行数、匹配率和 TOP1 带看楼盘,确认没有异常
适合人员
- 维护 xuzhou_v3.db 和贝壳周更 ETL 的数据工程师,需要隔离处理热度数据
- 做房源带看和咨询趋势分析的分析师,依赖每周快照做环比
- 负责 dim_community 映射质量的数据治理人员,要发现低匹配楼盘并补录
- 构建内部看板或报表的后端开发者,直接查询 heat_listing、heat_community、heat_rental 原始表