数据库同步方法及装置的制造方法_3

文档序号:9349991阅读:来源:国知局
的同步完成信息,将同步完成信息发送至前端设备,以使前端设备根据同步完成信息向用户进行操作成功提示,保证了实时性要求高的业务查询时的正确率,从而提高了了用户体验。
[0109]如图3所示,图3是本公开根据一示例性实施例示出的另一种数据库同步方法流程图,该方法可以应用于数据库管理系统中的主数据库上,并建立图1所示方法的基础上,在执行完步骤120之后,还可以包括以下步骤:
[0110]该方法包括以下步骤:
[0111]在步骤310中,当写指令不是针对第一同步表时,根据写数据对第一同步表之外的存储区域进行对应的写操作。
[0112]本公开实施例中,主数据库中不仅包括第一同步表,还可以包括其他的存储区域,比如:普通表。第一同步表和普通表的区别在于:针对第一同步表的写操作需要优先执行,还必须保证各个从数据库实时同步执行该写操作;而针对普通表的写操作可根据自身实际情况确定执行时间,并且根据自身实际情况确定各个从数据库的同步时间,比如,一个小时同步一次。只要在一段时间后,主数据库和从数据库中的数据能够保持一致即可。
[0113]在步骤320中,在预设的时间内将写指令发送至从数据库,以使从数据库根据接收到的写指令同步进行对应的写操作。
[0114]本公开实施例中,预设的时间可以根据实际情况进行设置,比如,一个小时向从数据库发送一次。
[0115]由上述实施例可见,主数据库中包括对实时性要求比较高的第一同步表,还有对实时性没有要求的其他存储区域,当接收到的写指令不是针对第一同步表时,根据写数据对第一同步表之外的存储区域进行对应的写操作,并在预设的时间内将写指令发送至从数据库,以使从数据库根据接收到的写指令同步进行对应的写操作,使得主数据库和从数据库在一段时间后,二者普通存储区域中的数据也能保持一致,从而满足了实时性没有要求的业务操作需求,通过主数据库和从数据库异时同步,节省了数据库资源。
[0116]如图4所示,图4是本公开根据一示例性实施例示出的一种数据库同步方法流程图,该方法可以应用于从数据库上,该从数据库包括第二同步表。
[0117]该方法包括以下步骤:
[0118]在步骤410中,接收主数据库同步发送的写指令,该写指令携带有写数据和数据类型标识。
[0119]本公开实施例中,接收到的写指令可以包括插入指令、修改指令、删除指令中的至少一种。
[0120]在步骤420中,根据写指令携带的数据类型标识判断该写指令是否为针对第二同步表的操作指令。
[0121 ] 本公开实施例中,从数据库包括第二同步表,该第二同步表和主数据库的第一同步表可以是相同的,其中的数据都是对实时性要求比较高的。
[0122]在步骤430中,当写指令是针对第二同步表的操作指令时,根据写指令携带的写数据对第二同步表进行对应的写操作。
[0123]本公开实施例中,针对第二同步表的操作指令优先级最高,从数据库接收针对第二同步表的操作指令时,需要立即执行对第二同步表进行对应的写操作,保证在最短的时间内实现第二同步表中的数据和第一同步表中的数据保持一致,达到二者实时同步的目的。
[0124]在一公开实施例中,该数据库同步方法还包括:
[0125]根据写数据对第二同步表进行对应的写操作之后,当完成写操作后,向主数据库发送同步完成信息。
[0126]本公开实施例中,从数据库向主数据库发送同步完成信息,目的是通知主数据库自身已经完成同步。
[0127]另一公开实施例中,该数据库同步方法还包括:
[0128]根据数据类型标识判断写指令是否为针对第二同步表的操作指令之后,当写指令不是针对第二同步表的操作指令时,在预设的时间内根据写指令携带的写数据对第二同步表之外的存储区域进行对应的写操作。
[0129]本公开实施例中,从数据库中不仅包括第二同步表,还可以包括其他的存储区域,比如:普通表。第二同步表和普通表的区别在于:针对第二同步表的写操作需要优先执行,尽量与主数据库实时同步执行该写操作;而针对普通表的写操作可根据自身实际情况确定执行时间,比如,一个小时执行一次。只要在一段时间后,从数据库中的数据和主数据库能够保持一致即可。
[0130]由上述实施例可见,从数据库中包括对实时性要求比较高的第二同步表,还有对实时性没有要求的其他存储区域,当接收到的写指令是针对第二同步表时,根据写指令携带的写数据对第二同步表进行对应的写操作;当写指令不是针对第二同步表的操作指令时,在预设的时间内根据写指令携带的写数据对第二同步表之外的存储区域进行对应的写操作,使得从数据库针对实时性要求高的业务操作,可以和主数据库实时同步进行对应的写操作,针对实时性没有要求的业务操作,可以和主数据库异时同步进行对应的写操作,从而满足了实时性要求高的业务操作需求和实时性没有要求的业务操作需求,提高了用户体验,并且操作简单,易行,进而提高了数据库同步的效率,还节省了数据库资源。
[0131]如图5所示,图5是本公开根据一示例性实施例示出的另一种数据库同步方法流程图,该方法可以应用于从数据库上,并建立图4所示方法的基础上,还可以包括以下步骤:
[0132]在步骤510中,接收前端设备的查询指令。
[0133]本公开实施例中,查询指令可以是前端设备直接发送至从数据库的,也可以是主数据库转发的前端设备的查询指令。并且,从数据库负责数据查询,并向前端设备返回查询结果。
[0134]在步骤520中,根据查询指令执行对应的查询操作,得到查询结果。
[0135]本公开实施例中,若该查询指令是查找第二同步表中的数据,由于第二同步表中的数据和主数据库中的数据保持实时同步,故此得到的查询结果正确率较高。
[0136]若该查询指令是查找除了第二同步表之外的存储区域中的数据,由于第二同步表之外的存储区域中的数据和主数据库中第一同步表之外的存储区域的数据为异时同步,即可能有一定的时间延迟才能同步,故此得到的查询结果正确率较低。
[0137]在步骤530中,将查询结果发送至前端设备,以使前端设备显示查询结果。
[0138]由上述实施例可见,从数据库可以负责数据查询,通过接收前端设备的查询指令,根据查询指令执行对应的查询操作,得到查询结果,将查询结果发送至前端设备,以使前端设备显示查询结果,从而减轻了主数据库的任务量,提高了数据库同步的效率。
[0139]如图6所示,图6是本公开根据一示例性实施例示出的一种数据库同步方法的应用场景图。该应用场景包括前端设备、主数据库和从数据库。其中,从数据库可以为一个,也可以为多个。
[0140]前端设备会接收用户的写操作,比如:插入数据、修改数据或删除数据等。
[0141]前端设备根据用户的需求向主数据库发送写指令,该写指令携带有写数据和数据类型标识。
[0142]主数据库接收到前端设备的写指令后,会根据写指令携带的数据类型标识判断该写指令对应的写操作是否要求实时性比较强,由于主数据库将要求实时性比较强的数据都保存在第一同步表中,故此主数据库会根据数据类型标识判断接收到的写指令是否为针对第一同步表的操作指令。
[0143]若是,主数据库根据写指令携带的写数据对第一同步表进行对应的写操作,比如:插入数据、修改数据或删除数据等。另外,还需要将写指令同步发送至从数据库,以使从数据库根据写指令同步进行对应的写操作。
[0144]若不是,主数据库根据所述写数据对第一同步表之外的存储区域进行对应的写操作,并在预设的时间内将写指令发送至从数据库,只要保证在一段时间后,从数据库中的数据和主数据库能够保持一致即可。
[0145]从数据库接收主数据库同步发送的写指令后,也要根据写指令携带的数据类型标识判断该写指令对应的写操作是否要求实时性比较强,由于从数据库将要求实时性比较强的数据都保存在第二同步表中,故此从数据库会根据数据类型标识判断接收到的写指令是否为针对第二同步表的操作指令。
[0146]若是,从数据库根据所述写数据对第二同步表进行对应的写操作,比如:插入数据、修改数据或删除数据等。
[0147]若不是,从数据库在预设的时间内根据写指令携带的写数据对第二同步表之外的存储区域进行对应的写操作,只要保证在一段时间后,从数据库中的数据和主数据库能够保持一致即可。
[0148]另外,从数据库还负责数据库查询任务,即从数据库接收前端设备的查询指令;根据所述查询指令执行对应的查询操作,得到查询结果;将所
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1