在线预约酒店的业务就类似去哪儿、携程那种,可以按照入住的起始时间筛选,并按照房型和数量预约。
关键的问题是不知道如何处理每种房型的库存数量问题,尤其是和日期要关联起来?
使用关系型数据库进行存储,创建三个模型: 第一个模型存放每日在没有订单的情况下可用的房型和数量,第二个模型存放订房记录,包含客户信息,订房开始日期,结束日期,房型,数量。 第三个模型是在第二个模型的基础上进行细化,将以一条订单拆分成多条,即在第二个模型中如果某个客户一次定了三天的房,那么在第三个模型中就需要拆成 三条记录。 最后再把第三个模型和第一个模型按日期,房型进行聚合,得到每日可用的剩余房间数。
如果选用PDA一体机,可在房间类型上创建分布键(提升关联语句性能) ,在日期字段上创建CBT(提升按日期条件进行检索的语句性能) ,从而提升整个查询语句的性能。
收起