我应该为单个项目使用多个数据库吗?

时间:2017-12-04 15:26:32

标签: mysql database database-design

我正在为一个提供在线购物网站优惠券的网站上工作。 它为印度的购物网站提供折扣券。 但现在客户也希望为美国商店提供优惠券。 但是,为印度用户提供的优惠对美国用户没用,反之亦然。

因此,该网站将有两个版本。一个是印度用户,另一个是美国用户。

但是如果来自印度的用户搜索的是印度无法提供但在美国有售的优惠。然后它应该出现在搜索结果中。

现在我正在考虑为美国用户创建一个新数据库,其架构与当前用户(印度用户)的数据库完全相同。

但我想得到专家的建议。

2 个答案:

答案 0 :(得分:2)

从长远来看,您可能希望添加更多国家/地区,因此我会通过添加国家/地区表格来实现此目的,例如offer_valid为offerid国家/地区ID,这样可以使单个商品对某个国家/地区有效。 创建多个数据库会使维护繁忙。

答案 1 :(得分:0)

创建一个单独的数据库或单独的表(通过向表名添加_usa)没有意义..因为可以通过创建映射表来实现相同的目的,该映射表将商品/优惠券映射到国家/地区/国家/地区它是有效的,也更具可扩展性。

以下是我的建议:

  

国家/地区:id,name

     

优惠券:身份证,姓名,折扣

     

coupon_country_mapping:id,country_id,coupon_id,is_active