作者: 小牛,专注于地理信息系统、物联网大数据、云原生
公司:
苍穹数码技术股份有限公司2001年创建于北京,是一家专业从事3S技术研究、开发与应用服务的高新技术企业,更是中国领先的时空信息平台及产品供应商、数字政府及智慧产业解决方案提供商、区域经济及社会发展规划、咨询服务商,拥有自主可控的地理信息平台和专业规划咨询团队,致力于政府、国防和企业信息化建设及数字治理能力的提升。
应用简介:
时空超市是一个类似淘宝的服务超市,各类基础时空数据或二维三维地图服务、人工智能大数据服务、北斗位置服务、室内定位、硬件设备、解决方案等都可以在这个里面进行上架、下订单以及交付。时空超市面向政府用户、企业用户、个人用户的虚拟商品展示和购买服务。
应用场景:
时空超市中提供服务有基于访问次数计费模式,需要记录每一次服务调用信息、购买订单记录、支付记录、用户操作日志等。这类海量时序数据的存储和计算,有着体量大、时间长,写入,查询要求高的特点,传统关系型数据库无法满足实时写入与高性能查询要求。
解决方案:
数据存储采用PostgreSQL关系型数据库 + TDengine时序数据库(Time Series Database)混合存储方案。用户信息、商品信息存储到PostgreSQL,服务调用日志、购买订单记录、支付记录、用户操作日志等存储到TDengine。
按照TDengine建议的数据模型,将数据特征不同的数据单独创建数据库,根据不同数据特征设置不同的参数,例如:BUFFER一个 VNODE 写入内存池大小,CACHEMODEL表示是否在内存中缓存子表的最近数据,CACHESIZE表示每个 vnode中用于缓存子表最近数据的内存大小,DURATION数据文件存储数据的时间跨度等等。在各个数据库内根据业务数据结构去创建超级表,例如用户操作日志、服务调用记录、订单、支付等,结合我们的数据特点和使用场景,创建数据模型如下:
- 以用户操作日志作为超级表,每个用户动态创建子表,方便对同一用户的数据进行分析,进行商品的推荐;
- 以服务调用记录作为超级表,每个用户与服务动态创建子表,方便统计每个用户服务调用情况,进行计费。
- 以订单记录作为超级表,每个用户动态创建子表,方便查询每个用户订单情况。
- 以支付记录作为超级表,每个用户动态创建子表,方便查询统计每个用户支付情况。
写在最后
在时空超市产品中,TDengine展现出了强大的读写性能和数据压缩能力,时间区间查询速度非常快,同时它还带有内建的缓存、流式计算、数据订阅等系统功能,能大幅减少系统设计的复杂度,降低研发和运营成本。TDengine是一个极简的时序数据处理平台,它是我们降本增效利器。特别是TDengine3.0支持了Windows平台,对于我们传统软件厂商GIS行业来说是福音,虽然国家近年来在推国产化软硬件平台,但是还是有相当一部分应用跑在windows环境,目前也能用国产精品时序数据库平台。
百舸争流,奋楫者先;千帆竟发,勇进者胜;祝涛思数据越来越好,做时序大数据界的ORACLE。