关系型数据库设计小结
前段时间因为项目需要搭建一个web服务器,后端Web框架我调研了几个,比如Python的Flask,Django, NodeJs的Express,JavaEE的Spring,以及C++的CppCMS, 经过权衡拓展性开发效率,最后选择了Django。 也许Python不是最好的选择,但至少目前来看工作的还挺顺利。
但是当时对于数据库的选择,却走了一点弯路。因为平时对于数据库接触不多,所以一开始选择了MongoDB 作为数据库。这在初期是没啥问题的,但后来随着项目推进,产品经理不断地增加需求(我要…我要…我还要…), 数据库中各个collection的耦合度也越来越高,甚至同一个collection也有大量的冗余数据。虽然也有办法进行优化, 但是我经过查阅资料和进度考量,最后还是决定趁着项目尚未release,将NoSQL替换为关系型的数据库。