电商项目

一、数据库

1、分库、分表

1)根据几个主要电商天猫、淘宝、京东、亚马逊、1号店进行分库.

分库思想:

先定义1个总库eqis,保存几个电商字典表eb、商品类别表、店铺类别关系表、各个店铺名称表shop、用户管理模块表、查询结果集表。

先对电商进行分库即eqis_tm01、eqis_tb01、eqis_jd01、eqis_ymx01、eqis_yhd01

对于电商里爬虫抓取到的店铺数进行分组,每2000个店铺一个库,例如1-2000店铺存eqis_tm01,2001-4000店铺eqis_tm02

2)根据各个电商的店铺进行分表(每个子库都有一个shopscore)

比如天猫里有个店铺是“天猫化妆品店”,则总库eqis里shop表就存在一条数据id=1,ebId=1(代表天猫),shopname=天猫化妆品店

这张表存在于eqis_tm01里,且表名为1_shop;

比如天猫里有个店铺是“天猫化奶粉店”,则总库eqis里shop表就存在一条数据id=3000,ebId=1(代表天猫),shopname=天猫奶粉店

这张表存在于eqis_tm02里,且表名为3000_shop;

3)shop表也分为5张shop_tm、shop_tb、shop_jd、shop_ymx、shop_yhd

 

具体功能

根据商品的ebId,定位电商,根据商品的shopId,定位到商品属于哪个库,以及哪个表

1.查看商品历史价格(一般只有综合评分很差的表需要查看这个功能)

商品的唯一性质是商品的URL,

 

实际做的时候肯定还需要考虑更多的问题,比如数据库的调优,磁盘IO方式,服务器稳定性;方案的可测试性,可量化等等。

 

导入功能

1.先将各个库创建表,创建完

1、根据商品的店铺选择库和表

如果商品的店铺未能成功爬取到,会记录日志

 

posted @ 2015-07-10 13:53  喝酒骑驴撞城管  阅读(151)  评论(0编辑  收藏  举报