Google Cloud Datastore是一种托管的,无模式的,高度可扩展的NoSql数据库,对于希望减少使用量增长的数据库规模的开发人员特别有用。 它建立在Google的Bigtable Database之上,并且具有许多强大的功能,您可能要在下一个项目中考虑它,但是在这样做之前,这里有一些快速提示,您应该知道这些提示,以避免遇到一些陷阱。使用此数据库。
Google Cloud Datastore不是SQL,它甚至没有关闭。
Google Cloud Datastore是一个NOSQL数据库,但是当人们和文档试图解释这一概念时,他们倾向于将其与SQL进行比较,例如,可以将实体与表进行比较,将其属性与列进行比较,因为许多开发人员已经熟悉SQL。 另外,数据存储区还具有强大的查询引擎,可让您查询数据甚至对数据进行相应排序,这可能使开发人员假设他们可以像在SQL中一样对数据进行建模。 但事实是,Datastore的基础实现与SQL完全不同,这是一些关键区别。
I. 没有自动递增主键 :与SQL不同,SQL通常不会随每次写入而递增,而在Google Cloud Datastore中,实体是由KEY标识的,该KEY通过其Kind和标识符标识符是数据存储为您自动生成的ID,或者是密钥名称属性 ,您可以将其提供为数据存储的标识符,该属性是一个字符串,您确定该字符串对于该类型的每个实体都是唯一的。
Google Cloud Datastore利用索引来辅助查询,对实体中的字段建立索引对于在数据存储区中进行查询非常重要,实际上,如果您不对字段建立索引并尝试过滤具有该字段的查询,则不会获得任何结果即使查询与结果匹配,这也是因为数据存储区仅在查询时查找索引,因此它不允许您像其他数据库一样进行全表扫描以获取查询结果。