千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 多数据表,大数据量,更新频率较高,以搜索为主的业务,推荐什么搜索服务/系统架构?

多数据表,大数据量,更新频率较高,以搜索为主的业务,推荐什么搜索服务/系统架构?

来源:千锋教育
发布人:xqq
时间: 2023-10-13 18:19:27 1697192367

一、多数据表,大数据量,更新频率较高,以搜索为主的业务,推荐什么搜索服务/系统架构

多数据表,大数据量,更新频率较高,以搜索为主的业务,每个月1000万数据量的增量并不大,主要是每个表里面的冗余字段太多,导致文件比较大,个人觉得针对业务分离列表数据调用和搜索数据调用,另外搜索使用sphinx和lucene做实时增量索引+定时合并不影响业务和性能。

这个是分布式时序数据库的典型场景。提供一个使用DolphinDB解决类似场景的案例。

(1) 客户几百个业务场景,每天产生200多亿条时序日志记录(每条记录10个字段左右,维度+指标),所有数据写入采用双副本,并提供强一致性保证。每天产生数据2个T,双副本大概4个T,压缩之后1个T。数据保留15天左右。

(2)写入的同时有并发的查询和计算。大概分三种。

根据业务场景和时间范围,读取原始数据,每次读取最近一个小时左右的数据,约几十万条数据

按设备或按业务场景等维度进行分类统计过去24小时内每分钟的统计量(均值)

按设备或按业务场景等维度进行分类统计过去24小时内各种指标的95百分位,供实时监控使用。

这三种query涉及的数据量都比较大,每分钟大概2000~3000个这样的query。单个查询和计算的延迟在几十毫秒到2秒之间。

(3)部署了6台(36核,256G内存的服务器)物理机的DolphinDB集群解决上面的场景。实际上内存和cpu的使用率都不是很高,可以使用更少的资源来完成。

你的场景数据量少很多,但是要保留更长的时间。一台16~24核,128~256G内存,6~12个hdd硬盘的物理机(售价6~10万),安装DolphinDB时序数据库就可以搞定。你的业务场景非常简单,数据在DolphinDB中按照日期和设备两个维度分区就可以了。日期采用值分区,每天一个,设备采用范围或哈希分区,分成100个。这样每个分区的数据量大概在100万条左右,非常好的平衡了查询延时和吞吐量。

延伸阅读:

二、SQL是什么

Structured Query Language

‘SQL’是结构化查询语言,是一种用来操作 RDBMS 的数据库语言,当前关系型数据库都支持使用SQL语言进行操作,也就是说可以通过 SQL 操作 oracle,sql server,mysql,sqlite 等等所有的关系型的数据库

SQL语句主要分为:
DQL:数据查询语言,用于对数据进行查询,如select**
DML:数据操作语言,对数据进行增加、修改、删除,如insert、udpate、delete**
TPL:事务处理语言,对事务进行处理,包括begin transaction、commit、rollback
DCL:数据控制语言,进行授权与权限回收,如grant、revoke
DDL:数据定义语言,进行数据库、表的管理等,如create、drop
CCL:指针控制语言,通过控制指针完成表的操作,如declare cursor对于web程序员来讲,重点是数据的crud(增删改查),必须熟练编写DQL、DML,能够编写DDL完成数据库、表的操作,其它语言如TPL、DCL、CCL了解即可SQL 是一门特殊的语言,专门用来操作关系数据库不区分大小写
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT