本人工科生,最近在编一个流体计算的程序。计算结果分为元件的各种参数(压力、温度)以及全局的参数两种。为了方便处理,建立了多个表分别存储元件和全局的参数。后来由于要加入用户权限,以及用户多次计算结果的保存的功能,发现表的结构明显不太行了。
由于没学过数据结构,对MYSQL钻研得也不深,不知道大家在创建多个表的时候如何进行优化的?
提出以下问题,望大家解答,不胜感激:
1.冗余数据的处理。现在数据库里有用户权限表,元件数据表,全局参数表,以及用户和文件对应的表。因为一次的计算结果就有几百条,而我把每条记录后面都添加了用户以及文件名两个字段,这样,几百条结果都有相同的数据,觉得这些有点冗余,但是不知道怎样优化。
2.多次计算结果保存时表的建立。对于同一个文件,用户可能会计算多次,几次的结果都要保存好,如何高效地实现?(在计算结果后面添加什么字段呢?)
或者大家推荐点MYSQL优化存储的例子,或者是有较复杂数据结构的源码也行,谢谢了!

解决方案 »

  1.   

    1.而我把每条记录后面都添加了用户以及文件名两个字段,这样,几百条结果都有相同的数据,觉得这些有点冗余,但是不知道怎样优化。首先,这个必须有关联,是吧,不然你不知道是哪个用户的记录。一般的处理方法是:每条记录只需记录下用户id和文件id就可以了。2.多次计算结果保存时表的建立。对于同一个文件,用户可能会计算多次,几次的结果都要保存好,如何高效地实现?(在计算结果后面添加什么字段呢?)不知道具体的业务,所以不好推荐!优化需要考虑具体业务,具体的表关系。建议先让程序跑起来,再调优吧!最好是把你的建表语句,还有业务说出来,才能好好分析。
      

  2.   

    好吧,谢谢了!那个东西比较多,不太好说清楚。关于MYSQL建表时的优化有什么好的参考资料可以推荐一下吗?谢谢了
      

  3.   

    好吧,谢谢了!那个东西比较多,不太好说清楚。关于MYSQL建表时的优化有什么好的参考资料可以推荐一下吗?谢谢了这个没什么特别的好办法。方案一,你多花点时间, 用例子把你的需求描述出来 。 仅通过几个字的文字很难让别人明白你的实际应用。
    方案二,你多花点时间,先浏览一下数据库的书籍 《数据库系统概论(第四版)》 王珊 萨师煊   高等教育出版社 掌握ER图和数据库范式。