有如下:
1、关系型数据库。
2、分布式数据库。
3、云数据库。
4、NoSQL数据库。
5、面向对象的数据库。
6、图形数据库。
城市空间数据库用来表示城市空间实体的位置、形状及其分布特征等方面信息的数据库。它可以用来描述来自现实世界的目标,具有定位、定性、时间和空间关系等特征。
具备现象
空间数据库适用于描述所有呈现二维、三维甚至多维分布的关于区域的现象,它不仅能表示实体本身的空间位置及形态信息,而且还可以表示实体属性和空间关系(如拓扑关系) 的信息。
在空间数据中不可再分的最小单元称为空间实体,空间实体是对存在于这个自然世界中地理实体的抽象,主要包括点、线、面以及实体等基本类型。
在空间对象建立后,还可以进一步定义其相互之间的关系即拓扑关系。空间数据是城市的基础信息,数字城市中的绝大部分信息将以空间数据库为基础。在UGIS中,现有的空间数据库技术已被广泛应用于城市规划、管理和交通等方面。
看你的需求,如果不同城市需要访问的内容不同,(比如房地产,我访问天津房产,那么可以是天津一个库,当然不仅仅是房子可能还有一些什么地图啊,房型啊,交通啊等等很多内容,访问河北石家庄房u产,那么就访问石家庄的数据库,这样能减少数据库查询量,分担数据库负载。)那么就分库。试想一下,如果全国的房产内容,包括所有的相关内容 ,在一个库,而每次调取,都是相关同时调取,一次有每次有10个人查一个省份,那么全国就是300多人,这还仅仅是10个,如果100个呢?1000个呢?只调房产内容容易,可以相关内容同时调取,我想很多机器扛不住吧。(当然不排除集群,和多主机以及多地主机毕竟这也是一个解决问题的办法,如果没那么多钱还是分库好点)当然,如果仅仅是部分内容处理分析,或者基本不存在大量查询内容的情况下,还是部分好些,因为没必要分库。如果我要用全国的数据进行分析,难道每次要读30几个数据库么?那样更慢。
至于你说的公共站点这个可以这么解释,一般来说现在为了提高访问速度,都是多主机异地,比如某某网络公司,可能在全国各地都有主机,你访问的时候,访问的是离你“最近”的主机。虽然他们的域名相同,或者内容想相同,但是他们的ip不同,后台通过技术去同步,可能是数据库异地同步,可能是主机异地同步。比如过去有些网络游戏,会有华南区,华北区,大概就是这样的。都是同一个游戏,但是主机不同。只不过他们没做同步,所以转区时只是简单的清零。
具体的还是看你的需求和成本,还有访问量等等这些因素才能决定到底怎么做比较好。
分库不分库,各有有缺点.分表/分库好处是:
业务量大了,你城市是分库的,不会对性能影响太大, 毕竟一个城市的数据量, 也是有限的.
如果一个数据库数据出错了,也就是一个城市的数据出错,不会影响其他城市.
缺点在于:
如果你以后要修改程序,增加功能, 要修改数据库表结构的时候, 如果你有100个城市, 你就要去修改100个数据库的表.
所以这个楼主要自己权衡一下. 做一下 取舍.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)