LBS数据库的架构是怎样的

LBS数据库的架构是怎样的,第1张

架构的话有很多尝试,传统的Oracle和 Postgre用的比较广泛, 很多架构在此基础上同时应用 NoSQL。因为大多数LBS并不涉及更复杂的空间数据存储,例如多边形或者三维数据,因此,大多数generic的数据库架构都可以应用。但是,从产品核心的设计以及发展来看,如果像FourSquare(4SQ)进行数据挖掘并提供收费的数据分析服务,那么基于空间的利用文件数据结构,以空间POI为基础的NoSQL,是比较好的选择。除了其他人介绍的很多LBS,比如街旁和4SQ,应用的Mongo DB, 还有Couch DB, 根据之前来讲课的澳洲政府的一个大型空间数据库项目(集成了多种现有的空间数据库)的构架师介绍,这个项目应用了Couch DB。虽然理论上Graphic的NoSQL对于存储空间数据也有很大优势,但是毕竟相对不成熟,所以实际应用中的NoSQL还是以doc结构的Mongo和Couch为主。

如何提高命中率关键是对存储的空间数据认识程度和对用户query的类型的统计分析,并在此基础上开发出适合的算法,建立缓存或者对传统的空间索引进行组合,例如应用一些refine-filter策略。空间数据的索引与传统的索引不同,但是又部分基于传统索引的基础之上的。这里只介绍一些简单的空间索引入门算法,最后简单谈一下缓存建立的策略。

1),PostgreSQL是通用型数据库。

PG有着丰富的数据类型(数值、字符、时间、布尔、货币、枚举、网络地址、JSONB等等)和索引类型( B-tree、Hash、GiST、SP-GiST 、GIN 和 BRIN等 )。可以存储和计算大多数场景的业务数据,如 ERP、交易系统、财务系统涉及资金、客户等信息,数据不能丢失且业务逻辑复杂,选择 PostgreSQL 作为数据底层存储,一是可以帮助您在数据一致性前提下提供高可用性,二是可以用简单的编程实现复杂的业务逻辑 。适合各种OLTP和部分OLAP场景。

2),PostgreSQL数据库包含许多第三方插件。

如PostGIS等可以直接在数据库里进行地理位置相关的gis类存储和运算(LBS地理位置相关业务等O2O场景),其他的插件如Pg_stat_statements、uuid-ossp、pg_trgm、btree-gist插件、 pgcrypto加密等插件 。

3),中小型企业快速搭建 数据仓库和数据分析平台(TB级别)

PostgreSQL 提供丰富的数据类型和强大的计算能力,能够帮助您更简单搭建数据库仓库或大数据分析平台,为企业运营加分。

4),冷热分离

针对流水类的大表,PG可以使用分区表,线上保留热数据, 历史 数据存放在分区表里或者OSS等冷数据平台,冷热分离。

5),公有云支持度高如阿里云、腾讯云、华为云等公有云都有对应的RDS-PG产品,开箱即用,并提供技术支持。

OLTP:事务处理是PostgreSQL的本行

OLAP:ANSI SQL兼容,窗口函数,CTE,CUBE等高级分析功能,任意语言写UDF,citus分布式插件

流处理:PipelineDB扩展,Notify-Listen,物化视图,规则系统,灵活的存储过程与函数编写

时序数据:timescaledb时序数据库插件,分区表,BRIN索引

空间数据:PostGIS扩展(杀手锏),内建的几何类型支持,GiST索引。

搜索索引:全文搜索索引足以应对简单场景;丰富的索引类型,支持函数索引,条件索引

NoSQL:JSON,JSONB,XML,HStore原生支持,至NoSQL数据库的外部数据包装器

数据仓库:能平滑迁移至同属Pg生态的GreenPlum,DeepGreen,HAWK等,使用FDW进行ETL

LBS又称定位服务,是指通过移动终端和移动网络的相互配合,以空问数据库为基础,确定移动用户的实际地理位置,从而提供用户所需要的与位置相关的服务信息。位置服务由移动通信网络和卫星定位系统结合在一起提供的一种增值业务,它是移动通信技术、空间定位技术、地理信息系统技术等多种技术融合发展到特定历史阶段的产物,是现代科学技术和经济社会发展需求的客观要求。手机优惠券近几年非常流行,主要是因为方便,对于大多数用户来说,像Foursquare、集客买、大众点评优惠券这些产品似乎就成了LBS的代言人。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10854526.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存