数据模型可能是开发软件最重要的部分,他们不仅影响软件的编写方式,还对如何思考待解决的问题都有深远影响。大多数应用程序是通过一层一层叠加数据模型来构建,每一层都需要考虑屏蔽本层的细节,并对外提供一个简洁的数据模型来隐藏下层的复杂性。 数据模型一般分为:关系模型(SQL),文档模型(NoSql),图模型。数据查询语言:每个数据模型都有自己的查询语言或框架,如SQL、MapReduce、Cypher、Datalog等