数据库大表求拆解方案
假定大表一张,字段ID、A、B、...一直到Z
字段下面的值对于其余字段都是等价的,就是说在相同ID下面字段A到Z表达的意思是不同但是等价的。
此表目前不易扩展、不易查询。
求各位大神提供拆解方案。
------最佳解决方案--------------------是1000W条数据吧,怎么出来了1000W个表了。
大数据量不怕,以国家id为分区字段分区就是了。
你只能在数据冗余和列冗余上选择一种,各有个的优点
你冗余到列上,好处就是查询一下就把所有国家代码的翻译都在一行显示了
缺点就是,如果我增加一个国家,你就得增加一列
冗余到数据上,刚好相反,你增加一个国家,我就针对每一个字符,增加一条数据就ok了
上千万的数据不算大数据兄弟,有的业务一天产生的数据就上千万条,一个月、一年、两年是多少。
况且词库这种东西,类似于数据仓库一样,怕什么。
------其他解决方案--------------------相同ID下面字段A到Z表达的意思是不同但是等价的,啥意思?
------其他解决方案--------------------
比如说一个id叫变色龙的 在A列 可能就是red 在B列 可能就是yellow 就是这个意思。
这个怎么散分的?潜水几年,首次发帖啊
------其他解决方案--------------------换种说法 就是多语言翻译软件的数据库如何设计,单纯的平行双语结构似乎非常不容易扩展啊
------其他解决方案--------------------我也看看高人怎么拆
------其他解决方案--------------------奇怪,字段a-z就很大么???
字段是可以精简,但有必要做大表也没办法,有的统计报表光统计项就80个,我都不敢说算大表。
表的设计目的是用的方便,有利于出各种查询汇总结果的基础上进行优化字段。
------其他解决方案--------------------
若是此表200列 1000万行呢?
等同于多语言翻译软件的数据库设计问题。求大神解答啊
------其他解决方案--------------------
根据你的描述,拆分很简单啊
id 绿色 黄色 ....
变色龙1 是 否
你拆分成如下两张表,其余类似
id 颜色id
变色龙1 001
颜色id 颜色描述
001 绿色
------其他解决方案--------------------不好意思 我么有描述清楚。
我本来是想描述多语言翻译软件的数据库,然后拆分的。
比如 数据库大表 列当然是国家代码 然后各行对应着语料的各种翻译。
是想拆类似这种大数据表。
------其他解决方案--------------------列是国家就建立洲是上级表,然后就分5个表了。
或者干脆按字母建26个表好了。。。。
先选择洲/字母,然后查询语句中带表名做参数就OK 。
具体情况具体分析。
------其他解决方案--------------------这东西,无非就是行转列,列转行查询的问题
你查询遇到的麻烦应该也是如此。
根据你的描述把国家代码作为数据保存就托了
国家代码 字符 翻译
0001 'A' xxx
0002 'A' yyy
0003 'A' zzz