《分布式数据库访问层的设计与开发》听课总结

本文提供了一套系统优化方案,包括优化索引和SQL、纵向拆表、迁出不活跃数据和数据分库保存,以应对1000万至4000万数据规模的系统需求。针对2000万数据,引入数据库主从分离,通过多数据源切换、读写请求判断及服务器路由策略来提升性能。在3000万至4000万数据范围内,进行拆库操作以平衡负载。讨论了主从延迟、路由错误及服务挂掉时的数据保护策略。

系统优化方案:

系统基于oracle

1000万数据条件下:

(1)优化索引和sql

(2)纵向拆表,将不相关属性与主要属性分离

(3)迁出不活跃数据,包括删除数据以及不活跃数据

(4)数据进行分库保存。

以上四项可应对1000完数据左右的系统,对系统并没有太大改动。

同时DBA会对数据情况进行抓取,以便及时通知程序对数据库结构和数据进行修改。

2000万数据条件下:

(1)数据库主从分离,结构如下:


主从分离需要注意如何建立连接,如何判断读写请求以及从服务器的路由策略(如果使用mongo将会十分方便)

(1)使用多数据源切换连接,连接配置在配置文件中。

AbstractRoutingDataSource

protected abstract Object determineCurrentLookupKey()

<bean id="cpcDataSource“   class="com.sogou.bizdev.msdb.mydatasource.MyDataSource">

    <property name="targetDataSources">

    <map key-type="java.lang.String">

          <entry key="rds01"value-ref="cpcSlaveDataSource" />

          <entry key="wds01"value-ref="cpcMasterDataSource" />

    </map>

    </property>

(2)读写请求的判断在事务开始的时候进行,因此主要在service层进行判断。

主要有以下几种方式:

1、根据方法名称进行判断:比如约定find为读方法,save为写方法。

2、Annotation 方法:自定义注解

3、特殊配置,进行强制读或写。

出现问题:主从延迟。

解决方案:读后写不切换数据源。可通过ThreadLocal保存信号位

(3)对于服务器路由方面,可以有以下几种方式:

随机、加权、特殊策略。

出现问题:路由错误,导致写入错误数据库问题

解决方案:对读服务器配置只读权限,并进行告警。

出现问题:服务挂掉时,如何让保证不会路由到此处

解决方案:重写getConnection方法或者加入心跳。

对于mongo搭建的主从服务本身包含心跳检测,实现十分方便。


3000万到4000万数据

进行拆库操作,基于负载均衡和易于实现的原则。

多表关联使用oracle的DatabaseLink。

多库查询分页等问题,暂未解决。


代码下载地址: https://pan.quark.cn/s/bc087ffa872a "测控电路课后习题详解"文件.pdf是一份极具价值的学术资料,其中系统地阐述了测控电路的基础理论、系统构造、核心特性及其实际应用领域。 以下是对该文献的深入解读系统梳理:1.1测控电路在测控系统中的核心功能测控电路在测控系统的整体架构中扮演着不可或缺的角色。 它承担着对传感器输出信号进行放大、滤除杂音、提取有效信息等关键任务,并且依据测量控制的需求,执行必要的计算、处理变换操作,最终输出能够驱动执行机构运作的指令信号。 测控电路作为测控系统中最具可塑性的部分,具备易于放大信号、转换模式、传输数据以及适应多样化应用场景的优势。 1.2决定测控电路精确度的关键要素影响测控电路精确度的核心要素包括:(1)噪声干扰的存在;(2)失调现象漂移效应,尤其是温度引起的漂移;(3)线性表现保真度水平;(4)输入输出阻抗的特性影响。 在这些要素中,噪声干扰失调漂移(含温度效应)是最为关键的因素,需要给予高度关注。 1.3测控电路的适应性表现测控电路在测控系统中展现出高度的适应性,具体表现在:* 具备选择特定信号、灵活实施各类转换以及进行信号处理运算的能力* 实现模数转换数模转换功能* 在直流交流、电压电流信号之间进行灵活转换* 在幅值、相位、频率脉宽信号等不同参数间进行转换* 实现量程调整功能* 对信号实施多样化的处理运算,如计算平均值、差值、峰值、绝对值,进行求导数、积分运算等,以及实现非线性环节的线性化处理、逻辑判断等操作1.4测量电路输入信号类型对电路结构设计的影响测量电路的输入信号类型对其电路结构设计产生显著影响。 依据传感器的类型差异,输入信号的形态也呈现多样性。 主要可分为...
(IHAOAVOABPvsAOBPvsAVOABPvsPSOBP)非洲秃鹫融合天鹰优化BP天鹰优化BP非州秃鹫BP粒子群(Matlab代码实现)内容概要:本文档主要围绕多种智能优化算法在不同工程领域的应用展开,重点介绍了非洲秃鹫优化算法(AVOA)、天鹰优化算法(AO)BP神经网络的融合改进,并其他经典算法如粒子群优化(PSO)进行对比分析。所有案例均提供Matlab代码实现,涵盖电力系统优化、路径规划、微电网调度、无人机控制、信号处理等多个方向,强调算法的科研复现能力实际仿真价值。文档还展示了丰富的技术服务体系,涉及机器学习、深度学习、路径规划、通信电力系统等多个前沿领域。; 适合人群:具备一定Matlab编程基础,从事科研工作或工程仿真的研究生、高校教师及企业研发人员,尤其适用于从事智能优化算法研究应用的相关技术人员。; 使用场景及目标:①用于学术论文复现,特别是SCI/EI期刊中关于优化算法的实验部分;②为电力系统、无人机、储能调度等领域提供算法仿真技术支持;③帮助研究人员快速掌握多种智能算法的实现方法并进行性能对比。; 阅读建议:建议结合文档提供的网盘资源下载完整代码,按照目录顺序逐步学习,重点关注算法原理Matlab实现的结合方式,同时可将文中案例作为自身课题的参考模板进行二次开发创新。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值