• 关于

    保证数据

    的搜索结果

回答

服务高可用存储服务本身是任何IT系统中最基本的服务之一,必须提供高可用性。盘古对外承诺两个层次的高可用性:数据的高可用性,单机、单rack的fail数据必须仍然能够读写;服务的高可用性,盘古文件系统能够不受大部分硬件故障的影响而继续提供服务,这里主要指盘古master的高可用性。盘古通过多master机制来保证master的可用性。盘古的多master机制是主从机制,默认情况下3台master中有一台为primary,两台为其热备secondary master。主从之间通过Paxos算法来保证内存处于一致的状态。使用Paxos能够在2台master达成一致就返回,在保证服务高可用的同时降低服务的延时。数据安全盘古通过数据多副本技术来保证数据安全,并不要求磁盘本身的高可用性。因此盘古可以架设在PC server和SATA盘上,并不要求磁盘本身通过RAID来保证数据安全性。同时,因为盘古将数据打散到整个集群,在发生故障时能更快的做出数据的副本,保证数据安全。盘古默认情况下数据是3副本,能够保证数据极高的安全性。

贺定圆 2019-12-01 23:40:13 0 浏览量 回答数 0

问题

phoenix原数据与索引数据是否是异步写? 如果是,在索引数据写失败的情况下,怎么保证数据原子性?

hbase小助手 2019-12-01 19:22:29 777 浏览量 回答数 1

问题

mySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据

不语奈何 2020-01-09 19:42:55 205 浏览量 回答数 3

Quick BI 数据可视化分析平台

2020年入选全球Gartner ABI魔力象限,为中国首个且唯一入选BI产品

问题

分析型数据库产品使用常见FAQ

nicenelly 2019-12-01 21:26:54 1331 浏览量 回答数 0

问题

分析型数据库产品使用常见FAQ

nicenelly 2019-12-01 21:16:29 1140 浏览量 回答数 0

问题

谁做过批量删除数据库里的表数据吗?不删除数据库及表结构,还要保证系统表里的数据不被删除,几千张表一个一个删不太容易删除

我是小助手 2019-12-01 19:42:27 181 浏览量 回答数 1

问题

如何保证数据安全

快乐的兔子 2019-12-01 21:05:25 4156 浏览量 回答数 0

问题

OSS的数据一致性问题

storage 2019-12-01 22:09:13 4656 浏览量 回答数 4

问题

Hbase集群存储的可用性是AP,异步复制不能保证数据的强一致性

初商 2019-12-01 19:50:06 11 浏览量 回答数 0

回答

关于二维码数据的保存,有两种方式,一种是直接保存图片下来,这个可以直接存在OSS上。另一种就是保存二维码里面的数据,所有的二维码背后都对应于一串字符串,从二维码获得字符串有很多现成的第三方包可以使用,比如Java就可以用QRCode这个包来。扫描出的数据是一个字符串,可以直接保存在阿里云上的数据库里面,有多种数据库可以选择,比如使用RDS数据库(前提是你比较懂数据库),或者使用TableStore(使用比较简单)。你还多了一个需求,就是要保证不重复。存图片的模式无法保证,但是存数据的方式是可以保证的。如果你的数据量不大,可以直接做字符串比对;如果你的数据量比较大,可以对字符串做一个哈希值,但是比对哈希值就可以了。最后有一个提醒,从二维码图片转换为字符串的方式是固定的,转换出来的字符串是唯一的。但是反过来不是,根据二维码生成的不同参数,字符串生成的图片可能会有所不同。

1779591889586184 2019-12-02 01:55:47 0 浏览量 回答数 0

回答

如何保证MQ的消费是幂等性的,需要结合具体的业务来看 :  比如你拿个数据要写库,你先根据主键查一下,如果这数据都有了,你就别插入了,update一下好吧;  比如你是写redis,那没问题了,反正每次都是set,天然幂等性;  比如你不是上面两个场景,那做的稍微复杂一点,你需要让生产者发送每条数据的时候,里面加一个全局唯一的id,类似订单id之类的东西,然后你这里消费到了之后,先根据这个id去比如redis里查一下,之前消费过吗?如果没有消费过,你就处理,然后这个id写redis。如果消费过了,那你就别处理了,保证别重复处理相同的消息即可;  还有比如基于数据库的唯一键来保证重复数据不会重复插入多条,拿到数据的时候,每次重启可能会有重复,因为kafka消费者还没来得及提交offset,重复数据拿到了以后我们插入的时候,因为有唯一键约束了,所以重复数据只会插入报错,不会导致数据库中出现脏数据 。

小川游鱼 2019-12-02 01:49:36 0 浏览量 回答数 0

问题

【Java问答学堂】3期 如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性?

剑曼红尘 2020-04-18 21:44:26 54 浏览量 回答数 1

问题

如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性?【Java问答学堂】21期

剑曼红尘 2020-05-19 13:11:17 0 浏览量 回答数 1

问题

【PDF下载】金融技术峰会之云数据库系统容灾架构设计和实战

云栖技术 2019-12-01 21:01:28 1297 浏览量 回答数 1

问题

怎么保证计算过后小数存入数据库之后精度无损?

蛮大人123 2019-12-01 20:13:17 883 浏览量 回答数 1

问题

数据库使用外键会导致心脏不好?

小柒2012 2019-12-01 21:18:20 9240 浏览量 回答数 4

问题

高性能时间序列数据库HiTSDB的产品功能

云栖大讲堂 2019-12-01 21:31:40 1149 浏览量 回答数 0

回答

原子性(Atomicity) 任何时候MaxCompute会保证在冲突时只会一个作业成功,其它冲突作业失败。 对于单个表/分区的CREATE/OVERWRITE/DROP操作,可以保证其原子性。 跨表操作时不支持原子性(例如MULTI-INSERT)。 在极端情况下,以下操作可能不保证原子性: DYNAMIC INSERT OVERWRITE多于一万个分区,不支持原子性。 INTO类操作:这类操作的失败的原因是事务回滚时数据清理失败,但不会造成原始数据丢失。一致性(Consistency) OVERWRITE类作业可保证一致性。 INTO类作业在冲突失败后可能存在失败作业的数据残留。隔离性(Isolation) 非INTO类操作保证读已提交。 INTO类操作存在读未提交的场景。持久性(Durability) MaxCompute保证数据的持久性。

LiuWH 2020-03-19 15:44:39 0 浏览量 回答数 0

问题

求教各位大神,cassandra做全量数据迁移时,怎么保证数据100%迁移

茶什i 2019-12-01 21:49:46 16 浏览量 回答数 0

问题

redis是单线程模型,如何出现并发访问操作同一份数据呢?

落地花开啦 2019-12-01 20:00:39 2756 浏览量 回答数 1

回答

面试官心理分析 其实这是很常见的一个问题,这俩问题基本可以连起来问。既然是消费消息,那肯定要考虑会不会重复消费?能不能避免重复消费?或者重复消费了也别造成系统异常可以吗?这个是 MQ 领域的基本问题,其实本质上还是问你使用消息队列如何保证幂等性,这个是你架构里要考虑的一个问题。 面试题剖析 回答这个问题,首先你别听到重复消息这个事儿,就一无所知吧,你先大概说一说可能会有哪些重复消费的问题。 首先,比如 RabbitMQ、RocketMQ、Kafka,都有可能会出现消息重复消费的问题,正常。因为这问题通常不是 MQ 自己保证的,是由我们开发来保证的。挑一个 Kafka 来举个例子,说说怎么重复消费吧。 Kafka 实际上有个 offset 的概念,就是每个消息写进去,都有一个 offset,代表消息的序号,然后 consumer 消费了数据之后,每隔一段时间(定时定期),会把自己消费过的消息的 offset 提交一下,表示“我已经消费过了,下次我要是重启啥的,你就让我继续从上次消费到的 offset 来继续消费吧”。 但是凡事总有意外,比如我们之前生产经常遇到的,就是你有时候重启系统,看你怎么重启了,如果碰到点着急的,直接 kill 进程了,再重启。这会导致 consumer 有些消息处理了,但是没来得及提交 offset,尴尬了。重启之后,少数消息会再次消费一次。 举个栗子。 有这么个场景。数据 1/2/3 依次进入 kafka,kafka 会给这三条数据每条分配一个 offset,代表这条数据的序号,我们就假设分配的 offset 依次是 152/153/154。消费者从 kafka 去消费的时候,也是按照这个顺序去消费。假如当消费者消费了 offset=153 的这条数据,刚准备去提交 offset 到 zookeeper,此时消费者进程被重启了。那么此时消费过的数据 1/2 的 offset 并没有提交,kafka 也就不知道你已经消费了 offset=153 这条数据。那么重启之后,消费者会找 kafka 说,嘿,哥儿们,你给我接着把上次我消费到的那个地方后面的数据继续给我传递过来。由于之前的 offset 没有提交成功,那么数据 1/2 会再次传过来,如果此时消费者没有去重的话,那么就会导致重复消费。 如果消费者干的事儿是拿一条数据就往数据库里写一条,会导致说,你可能就把数据 1/2 在数据库里插入了 2 次,那么数据就错啦。 其实重复消费不可怕,可怕的是你没考虑到重复消费之后,怎么保证幂等性。 举个例子吧。假设你有个系统,消费一条消息就往数据库里插入一条数据,要是你一个消息重复两次,你不就插入了两条,这数据不就错了?但是你要是消费到第二次的时候,自己判断一下是否已经消费过了,若是就直接扔了,这样不就保留了一条数据,从而保证了数据的正确性。 一条数据重复出现两次,数据库里就只有一条数据,这就保证了系统的幂等性。 幂等性,通俗点说,就一个数据,或者一个请求,给你重复来多次,你得确保对应的数据是不会改变的,不能出错。 所以第二个问题来了,怎么保证消息队列消费的幂等性? 其实还是得结合业务来思考,我这里给几个思路: 比如你拿个数据要写库,你先根据主键查一下,如果这数据都有了,你就别插入了,update 一下好吧。比如你是写 Redis,那没问题了,反正每次都是 set,天然幂等性。比如你不是上面两个场景,那做的稍微复杂一点,你需要让生产者发送每条数据的时候,里面加一个全局唯一的 id,类似订单 id 之类的东西,然后你这里消费到了之后,先根据这个 id 去比如 Redis 里查一下,之前消费过吗?如果没有消费过,你就处理,然后这个 id 写 Redis。如果消费过了,那你就别处理了,保证别重复处理相同的消息即可。比如基于数据库的唯一键来保证重复数据不会重复插入多条。因为有唯一键约束了,重复数据插入只会报错,不会导致数据库中出现脏数据。 当然,如何保证 MQ 的消费是幂等性的,需要结合具体的业务来看。 往期回顾: 【Java问答学堂】1期 为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么区别,以及适合哪些场景? 【Java问答学堂】2期 如何保证消息队列的高可用? 【Java问答学堂】3期 如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性? 【Java问答学堂】4期 如何保证消息的可靠性传输?(如何处理消息丢失的问题?) 【Java问答学堂】5期 如何保证消息的顺序性? 【Java问答学堂】6期 如何解决消息队列的延时以及过期失效问题? 【Java问答学堂】7期 如果让你写一个消息队列,该如何进行架构设计? 【Java问答学堂】8期 es 的分布式架构原理能说一下么(es 是如何实现分布式的啊)? 【Java问答学堂】9期 es 写入数据的工作原理是什么啊?es 查询数据的工作原理是什么啊? 【Java问答学堂】10期 es 在数据量很大的情况下(数十亿级别)如何提高查询效率啊? 【Java问答学堂】11期 es 生产集群的部署架构是什么?每个索引的数据量大概有多少? 【Java问答学堂】12期 项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果? 【Java问答学堂】13期 redis 和 memcached 有什么区别? 【Java问答学堂】14期 redis 都有哪些数据类型?分别在哪些场景下使用比较合适? 【Java问答学堂】15期redis 的过期策略都有哪些?内存淘汰机制都有哪些? 【Java问答学堂】16期如何保证 redis 的高并发和高可用?redis 的主从复制原理能介绍 为什么使用消息队列?【Java问答学堂】17期 消息队列有什么优点和缺点?【Java问答学堂】18期 Kafka、ActiveMQ、RabbitMQ、RocketMQ的区别?【Java问答学堂】19期 如何保证消息队列的高可用?【Java问答学堂】20期

剑曼红尘 2020-05-19 13:11:25 0 浏览量 回答数 0

回答

高并发,大数据是一个笼统的概念,实际应用场景中药考虑是有多大的并发,读写压力有多大,磁盘IO有多大,根据具体的情况在系统架构上会有很多的不同。通用架构分层做法如下:Requests --> load balancer --> Web Server Cluster --> Middlerware --> DB Cluster根据具体的并发压力,需要有针对性的进行系统扩展。load balancer层:load balancer进行请求转发,根据具体的请求数量,需要考虑使用硬件或软件。通常情况下硬件load balancer性能远高于软件load balancer,软件实现中ngnix性能远高于Apache。当然硬件load balancer价格也会非常昂贵,需要专业维护。如F5, Redware.考虑到页面数据是否可以缓存,需要增加CDN.如淘宝前端页面会直接从CDN读取,12306 80%的访问请求由CDN处理。根据CDN的策略,带宽大小,并发量大小及业务重要程度,需要考虑多机房部署,减轻带宽和load balancer压力。Web Server clusterWeb server可以使用开源的Tomcat, jBoss等,也可以使用商业的WebSphere, WebLogic。区别是开源需要自己创建、维护cluster状态,商业软件会极大的简化cluster创建和维护。稳定,易于维护的Web Server应用服务器是基础,性能则有应用实现决定。应用需要考虑的是线程并发,查询优化,缓存使用,通信代价。应用完成后根据单台应用服务器的实际处理能力,横向和纵向扩展Web Server cluster. 横向扩展:增加Web Server数量(提升能力理论上无上限)纵向扩展:增加硬件机器性能,优化应用性能,提升单台Server性能(提升能力有限,受限于硬件资源)Middlerware当涉及到分布式环境,需要使用中间件来保证集群一致性。Session中间件 :如果业务是无状态,可以直接在load balancer按照轮询或权重策略转发。无需session处理,性能会高很多。如果业务有状态:1)load balancer使用sticky session策略,由同一台server进行后续有状态服务,session无需处理。但如果server失败,转由其他server服务时,需要重新登录。测试需要client有重新登录机制,否则用户体验不好。2)session复制。session复制需要由session中间件进行处理,保证整个集群共享session,会带来额外性能损耗。消息中间件 :分布式系统之间进行数据同步和唤醒,多个业务系统同步,需要使用消息中间件进行时效性保证。远程调用中间件: 远程调用保证分布式系统中高效的数据交换。数据库中间件: 访问数据库层,如果数据库进行了分库分表操作,需要再数据库中间件中进行操作封装。缓存中间件: 缓存数据库数据和业务计算数据。DB Cluster关系数据库为保证数据库稳定性,会考虑创建主备数据库,多个主备数据构成数据库cluster,当主库出现失败时,自动进行主备切换。有多个数据库的时候,根据读写频率进行读写分离。数据量大的时候,进行分表操作。

ericwz 2019-12-02 01:31:26 0 浏览量 回答数 0

问题

如何用多个线程顺序读取缓存队列?

蛮大人123 2019-12-01 20:04:15 1881 浏览量 回答数 1

回答

连接RDS的数据库实例经过了一条数据链路.我们保证实例的域名不变,但是数据链路上的VIP不保证不变.

曾文旌 2019-12-02 01:28:53 0 浏览量 回答数 0

问题

数据传输服务DTS的产品架构

云栖大讲堂 2019-12-01 21:23:54 1044 浏览量 回答数 0

回答

网络数据传输,一般不会这么做的,至少逻辑上不是这样的。网络上传输数据,因为发送端和接收端,通常不能保证是两边是相同的编程语言,就算都是使用C语言,CPU字节序,或者CPU位数不一样,直接讲结构体的数据整理成流发送过去,数据排序或者长度会跟你想象的不一样。解释起来比较费篇幅。这里说下通常的解决办法:约定一个协议,协议规定好数据流中,每个字节的含义。发送端要保证按照协议要求组装好数据流。接收端按照协议规定读取出里面的数据(解析)。

a123456678 2019-12-02 02:40:24 0 浏览量 回答数 0

问题

有没有做数据质量的,数据准确性应该怎么保证?

appetizers 2019-12-01 19:51:31 1377 浏览量 回答数 1

回答

未来云计算的发展将会面临哪些问题呢?1、数据的安全问题数据的安全是企业关心的问题之一。数据的安全包括2个方面:一是保证数据不会丢失,二是保证数据不会被泄露和非法访问。如果数据出现丢失又没有备份或者被泄露和非法访问,都会给企业和客户带来无法估量的损失。因此必须制定出有效的方案来保证数据的安全。虽然云计算为存储数据提供了无限的空间,也为数据的处理提供了无限的计算能力,但是用户对于托管自己加密数据的云计算运营公司能否确保数据的安全仍存在着质疑。在使用云计算服务时,用户往往不清楚自己数据存放的位置,这样就会使用户产生对数据安全的担心,所以要有效地解决数据的安全问题,未来的云计算必须考虑全方位的安全解决方案,提供多用户架构的良好设计,还必须要有确实可信的云计算运营公司。2、互操作问题在对云计算系统进行管理时,应当考虑云系统之间的互操作问题。当一个云系统需要访问另一个云系统的计算资源时,必须要对云计算的接口制定交互协议,这样才能使得不同的云计算服务提供者相互合作,以便提供更好更强大的服务。3、网络的性能问题提高网络性能也是云计算面临的挑战之一。用户使用云计算服务离不开网络,但是接入网络的带宽较低或不稳定都会使云计算的性能大打折扣,因此要大力发展接入网络技术。此外,在云计算网络中完成信息的高效处理,云计算集群服务器要具备较高的性能,同时为了保证云计算的服务高质量地传给需要的用户,网络中通信设施也必须具备高性能。4、公共标准的开放问题目前,云计算还没有开放的公共标准,这给用户造成了许多不便。用户很难将使用的某个公司的云计算应用程序迁移到另一家公司的云计算平台上,这样就大大降低了云计算服务的转移弹性。因此,云计算要想更好的发展,就必须制定出一个统一的云计算公共标准。来自:http://www.enkj.com/idcnews/Article/20180908/14462

dickeylth 2019-12-02 01:48:17 0 浏览量 回答数 0

回答

混合云存储阵列通过专门的高速通道与阿里云OSS相连,提供去重和压缩的数据处理机制,同时支持云缓存和云分层模式。通过云缓存模式,客户的数据全集保存在云端,本地存储空间作为热数据的缓存,提供数据的本地高效访问,保证对上层应用的快速响应。自动云数据分层模式,把客户的数据按照访问频度自动分类,经常访问的热数据保存在本地的SSD或者SAS盘上,保证热数据的快速访问,偶尔访问的冷数据自动存放到云端,不占用本地存储空间。

1934890530796658 2020-03-30 16:57:28 0 浏览量 回答数 0

回答

详细解答可以参考官方帮助文档很多用户希望系统迁移时,尽可能不影响业务提供服务。然而在系统迁移过程中,如果业务不停服,那么迁移数据就会发生变化,无法保证迁移数据的一致性。为了保证迁移数据一致性,很多第三方迁移工具,要求在数据迁移期间,应用停止服务。整个迁移过程,业务可能需要停服数小时甚至上天,这对业务伤害极大。 为了降低数据库迁移门槛, 数据传输提供不停服迁移解决方案,让数据迁移过程中,业务停服时间降低到分钟级别。 不停服迁移的实现原理详见下图。 不停服迁移的迁移类型需包含结构迁移、全量数据迁移及增量数据迁移三个阶段。当进入增量数据迁移阶段时,目标实例会保持跟源数据库之间的数据实时同步,用户可以在目标数据库进行业务验证,当验证通过后,直接将业务切换到目标数据库,从而实现整个系统迁移。 由此可见,在整个迁移过程中,只有当业务从源实例切换到目标实例期间,会产生业务闪断,其他时间业务均能正常服务。

2019-12-01 23:09:37 0 浏览量 回答数 0
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站