根据给定文件信息,以下是关于内存库高可用容灾最佳实践的知识点整理:
一、TimesTen的起源和发展历程
TimesTen起源于1992年惠普实验室的一个研究项目Smallbase,当时是专门针对电信网络应用的内存数据库研究。1996年,TimesTen公司成立,其核心成员都来自惠普实验室。1996年,TimesTen的第一个商业版本(TimesTen2.0)问世。2001年,TimesTen增加了CacheConnect功能,使其产品可以和Oracle无缝集成。2005年,TimesTen被Oracle公司收购,随后发布了多个主要版本,包括TimesTen6.0以及之后的版本,直至TimesTen11.2.2.x。迄今为止,TimesTen已经成为Oracle旗下实时数据管理产品家族中的一员,并在全球拥有超过1500+的企业用户。
二、TimesTen的定位和功能
TimesTen是一种关系型数据库产品,也是第一个商用的内存关系型数据库。TimesTen既可以作为独立的数据库使用,也可以作为Oracle数据库的内存缓存使用。
三、TimesTen体系结构与Oracle基础架构对比
文档并未直接提供TimesTen体系结构与Oracle基础架构的具体对比细节,但可以推断TimesTen作为一个内存关系型数据库,其体系结构设计上可能更优化于内存处理和高速数据访问。
四、TimesTen高可用性设计
TimesTen通过复制代理的方式实现容灾复制功能,这种功能虽然没有Oracle的DataGuard那么强大,但它属于轻量级应用,具有架构简单和形式多样化的特点。TimesTen的复制可以是单向或双向的,可以实现简单的热备用配置或负载平衡配置。
复制代理的基本特征包括:
- 复制代理基于事务日志进行复制,即通过在线日志的应用来实现复制功能,而不是简单的基于SQL语句的复制;
- 复制代理通过TCP/IP流套接字收发更新信息;
- 复制代理支持同步复制或异步复制的模式;
- 复制的粒度可以细到日志的时间戳,有效解决更新版本冲突的问题。
五、TimesTen复制传输模式
TimesTen支持三种数据传输模式,分别是NORETURN(缺省的异步模式)、RETURNRECEIPT(半同步模式)、RETURNTWOSAFE(同步模式)。这三种模式对性能影响和数据一致性有从低到高的区分:
- NORETURN模式下,应用程序操作数据与复制进程分离,性能最好,但存在数据丢失风险;
- RETURNRECEIPT模式下,应用程序操作数据必须等到备节点收到数据才能返回,性能次之,存在数据丢失风险;
- RETURNTWOSAFE模式下,应用程序操作数据必须等到备节点完成数据操作并返回主节点,性能最差,但不存在数据丢失风险。
六、TimesTen复制拓扑形式和复制模式
TimesTen的复制拓扑有多种形式,包括Master-Subscriber、Master-Propagation、Master-Master(split workload)、Master-Master(distributed workload)以及N-Way(update anywhere)模式。对于同一个数据库只能选择一种复制模式,传统复制(Classic Replication)与ASP复制(ActiveStandby Pair Replication)各有特点,主要区别在于复制拓扑、复制元素和DDL支持方面。
七、经典复制(Classic Replication)
Classic Replication支持全数据库复制或选择性复制,可实现单向或双向复制,包括split workload双向复制和distributed workload配置。
通过上述知识点,我们可以深入了解到TimesTen在高可用容灾方面的技术细节和最佳实践,包括它的起源背景、产品定位、高可用架构设计、复制传输模式、拓扑形式以及不同复制模式之间的差异和应用场景。这些知识点对于数据库管理员、系统架构师和技术决策者在选择和部署TimesTen内存关系型数据库时具有重要的参考价值。