主要目标:存取每天的成交订单信息到库里,比如订单标题,价格等商品信息,供用户查询。
用户查询时,最主要的就是通过订单标题查询(商品详情暂时不考虑),用户输入关键字,能在订单标题中查询到所有相关的订单。
每天增量10w左右。
mysql怕量大了会慢,然后最关键的是查询,简单的like查询满足不了需求,希望像全文搜索那种,相关的都能被查到,而不是字符串完全一样才能被查到。。。
看了MongoDB的全文索引,可是不支持中文。。。
大家帮忙看看,用啥比较好呢?
1
Septembers 2015-07-03 02:40:05 +08:00
PostgreSQL
|
2
Septembers 2015-07-03 02:47:32 +08:00
(MySQL 单表1亿行 不分区连表都打不开
(PS:由于数据源/数据结构/硬件参数等问题 此回答仅供参考 |
3
xlrtx 2015-07-03 03:13:25 +08:00
不是很在行, 不知道用solr好不好..
|
6
yangqi 2015-07-03 03:52:36 +08:00
这种量肯定要设计成分布式的吧,不然不管什么数据库迟早会遇到问题
|
7
line 2015-07-03 07:36:47 +08:00 via Android
如果频繁的like,还是全放内存好了
|
8
mringg 2015-07-03 07:37:28 +08:00 via Android
感觉分表就可以,一个月一张表
|
9
wy315700 2015-07-03 07:49:11 +08:00
|
10
zhicheng 2015-07-03 08:00:08 +08:00 via Android
MySQL + ES 毫无疑问的。
|
11
beneo 2015-07-03 08:05:26 +08:00
MySQL + ElasticSearch,还要简单上阿里云吧
|
12
est 2015-07-03 10:21:57 +08:00
@Septembers 谁说的?QQ群那个表我就mysql 跑的。avg() 全表,10多亿行,30秒出结果。
|
13
yakczh 2015-07-03 10:33:26 +08:00
mysql 2000万条 秒查,再往上就要考虑分表
|
14
mozartgho 2015-07-03 10:49:32 +08:00
MySQL InnoDB完全满足你目前的需求,再大了可以考虑下Redis集群
|
15
albertlee 2015-07-03 10:57:27 +08:00
可以使用hbase来做,可以支持lz所说的场景
|
16
realpg 2015-07-03 11:02:32 +08:00
Mysql存数据, Elasticsearch做搜索引擎
|
17
hkbarton 2015-07-03 11:15:46 +08:00
(My/Postgre)Sql + ElasticSearch/Solr
|
18
lilydjwg 2015-07-03 11:21:36 +08:00
@Septembers MySQL 这么弱啊,难怪大家都在讨论 MySQL 分表分库呢。就没见 PostgreSQL 这么折腾。
PostgreSQL + ElasticSearch,虽然是 Java 的。推荐用 bigram 做索引,别折腾分词了。 |
20
caoyue 2015-07-03 11:27:25 +08:00
我觉得 MySQL + ElasticSearch 应该够了
历史数据可以分表 查询所有数据的应该相对比较少,比如淘宝京东都是默认查三个月内的订单 |
21
slogon OP |
22
slogon OP 也谢谢其他给意见的朋友
|
23
hkbarton 2015-07-03 11:34:11 +08:00
@slogon MySQL的话可以看看这个版本: https://www.percona.com/software/percona-server/ps-5.6 比原生的community的版本好一点,而且percona也有很多配套的mysql运维工具
|
24
hkbarton 2015-07-03 11:36:16 +08:00
percona toolkit: https://www.percona.com/software/percona-toolkit mysql ops 很常用的
|
25
Ashitaka4 2015-07-03 16:00:30 +08:00
oracle?
|
26
iyangyuan 2015-07-04 10:27:08 +08:00 via iPhone
mysql按月分表就可以了,就是统计起来比较麻烦,至于全文检索,可以用solr索引标题,可以每个mysql表对应一个solr的core。估计系统能坚持30年以上,才会有性能问题
|