• 关于

    数据完整性

    的搜索结果

问题

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

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

回答

Android提供了SDK层的数据库API支持,其底层使用的是SQLite数据库.这里的完整概念是Android系统提供的Data持久化方案,完整文档见: https://developer.android.com/guide/topics/data/ 关于数据存储一般有如下一些需要考虑的点:持久性: 本地持久、内存持久、云端持久安全性: 整体数据的隐私性共享性: 数据在应用间、账号间的共享备份性: 目前一般需要考虑数据的云端存储存储效率与成本: 读写与编解码速度(缓存、视图等),占用硬盘空间、内存空间大小,数据规模程序的未来数据演变趋势(变更与扩容)数据增量变更与灾备方案如果使用第三方组件,需要考虑提供方的长远稳定性建议在进行持久化设计时充分考虑上述问题。

itxiaowang 2019-12-02 00:56:00 0 浏览量 回答数 0

回答

同一个业务可以由不同的技术方案实现,其实我倒是建议: 1. 在系统设计期间还是采用范式设计比较好,数据模型非常清晰; 2. 在DEV环境和SIT环境中,数据库的表带有外键,如果测试非常充分,那么数据库会起到数据库完整性校验的补充作用,反过来能促进改善应用代码的数据完整性校验功能; 3. 在PRE和PRD环境中,数据库的表不带外键,此时经过前一轮的完整测试,已经能保证应用的数据完整性,这时就去掉外键保证性能 4. 有时候为了简化查询过程,有可能也需要在子表中添加一些冗余字段

xninja 2019-12-02 02:04:10 0 浏览量 回答数 0

Quick BI 数据可视化分析平台

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

回答

数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。 乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。 悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作 乐观锁:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性

茶什i 2019-12-02 03:14:33 0 浏览量 回答数 0

回答

OSS 使用基于纠删码、多副本的数据冗余存储机制,将每个对象的不同冗余存储在同一个区域内多个设施的多个设备上,确保硬件失效时的数据可靠性和可用性。 OSS Object 操作具有强一致性,用户一旦收到了上传/复制成功的响应,则该上传的 Object 就已经立即可读,且数据已经冗余写入到多个设备中。 OSS 会通过计算网络流量包的校验和,验证数据包在客户端和服务端之间传输中是否出错,保证数据完整传输。 OSS 的冗余存储机制,可支持两个存储设施并发损坏时,仍维持数据不丢失。 当数据存入 OSS 后,OSS 会检测和修复丢失的冗余,确保数据可靠性和可用性。 2 OSS 会周期性地通过校验等方式验证数据的完整性,及时发现因硬件失效等原因造成的 数据损坏。当检测到数据有部分损坏或丢失时,OSS 会利用冗余的数据,进行重建并修复损坏数据。

剑曼红尘 2020-03-26 18:06:39 0 浏览量 回答数 0

问题

MySQL 选择题 以下哪种操作能够实现数据完整性( )

pandacats 2019-12-23 18:44:31 0 浏览量 回答数 1

问题

MySQL选择题 以下哪种操作能够实现数据完整性( )

pandacats 2019-12-23 21:06:28 0 浏览量 回答数 1

问题

数据传输服务DTS中如何对迁移对象进行约束完整性检查

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

回答

但是也有人说尽量不要去使用外键,在程序中控制数据的完整性约束性就可以了,否则不方便维护你要看是什么人说的。很多程序员的数据库水平比不上用户。这些人认为程序是万能的。很多DBA认为数据是最重要的,比程序活的长。程序不能用了,数据仍是企业的重要资产。如果不用外键,数据的完整性得不到保证。如果你觉得这样可以接受,当然可以不用外键。外键是基本的数据库约束,如果这都省略了,那你的数据库根本不能称为数据库。很多人说关系数据库性能差,其实大部分都是他们设计得差。下面谈谈很多人所说的外键的缺点。外键会带来不便比如,删一条数据出错我觉得这不是坏事,尤其是对用户来说。想想编程时,编译器也会报错,我们都知道这不是坏事,反而提前防止了错误。又比如,批量insert如果你可以肯定数据没问题,DBMS提供了忽略外键约束的选择。但是,当数据的输入来源不可靠时,很容易出现数据不一致,所以大部分时间外键(还有其他约束)是必要的。外键需要额外的开销,降低性能任何代码都有开销,关键看值不值得。什么事都不做,是最快的,根本不需要花时间。正因为数据的正确性是至关重要的,用外键当然值得。即使不用外键,你也要在程序中控制数据的正确性。所以这个开销是必须的,不能省掉的。通过程序控制数据完整性有很多缺点,比如1 程序bug基本上没有无bug的程序,这就是说,外键的功能无法可靠地被程序替代。2 数据和程序的强耦合数据库只能被一个程序使用,要支持多个程序,并且保证数据完整性,a) 要么重复逻辑每个程序自己控制数据的一致性,显然是很糟糕的。b) 要么通过共同的接口访问数据库这是比较流行的一种方法。3层架构,SOA,...我不敢说这些架构都是错误的,他们都有特定的用途。但是你要明白,一个系统越复杂,零件越多,出错的可能性就越大,而且性能也越差。总而言之,如果你认为数据正确性是必须要保证的,那么你就必须付出一定的代价来实现。用外键比用程序控制更可靠,同时更简单直接,减轻了程序的负担。DBMS有40年的历史,是顶尖的程序员用C/C++开发出来的,经过重重测试,被无数项目用到,其可靠性和性能已经接近最优状态了。你如果觉得你们项目里的程序员能做得更好,对事务、并发等技术都无比熟悉,又有充足的时间,那你们可以用程序控制。老实说,我接触的项目很多都是不用外键约束的,很多都是不考虑规范化设计的。这样的系统很复杂(没必要这么复杂),性能不好。这是我的切身体会。当然,所有事情都不能一概而论,不用外键的程序也能做得很好,卖得很好。当你做决定时,要想清楚后果。我个人倾向于经典的方法,可靠的方法。

a123456678 2019-12-02 03:02:52 0 浏览量 回答数 0

回答

但是也有人说尽量不要去使用外键,在程序中控制数据的完整性约束性就可以了,否则不方便维护你要看是什么人说的。很多程序员的数据库水平比不上用户。这些人认为程序是万能的。很多DBA认为数据是最重要的,比程序活的长。程序不能用了,数据仍是企业的重要资产。如果不用外键,数据的完整性得不到保证。如果你觉得这样可以接受,当然可以不用外键。外键是基本的数据库约束,如果这都省略了,那你的数据库根本不能称为数据库。很多人说关系数据库性能差,其实大部分都是他们设计得差。下面谈谈很多人所说的外键的缺点。外键会带来不便1.比如,删一条数据出错我觉得这不是坏事,尤其是对用户来说。想想编程时,编译器也会报错,我们都知道这不是坏事,反而提前防止了错误。2.又比如,批量insert如果你可以肯定数据没问题,DBMS提供了忽略外键约束的选择。但是,当数据的输入来源不可靠时,很容易出现数据不一致,所以大部分时间外键(还有其他约束)是必要的。外键需要额外的开销,降低性能任何代码都有开销,关键看值不值得。什么事都不做,是最快的,根本不需要花时间。正因为数据的正确性是至关重要的,用外键当然值得。即使不用外键,你也要在程序中控制数据的正确性。所以这个开销是必须的,不能省掉的。通过程序控制数据完整性有很多缺点,比如1 程序bug基本上没有无bug的程序,这就是说,外键的功能无法可靠地被程序替代。2 数据和程序的强耦合数据库只能被一个程序使用,要支持多个程序,并且保证数据完整性,a) 要么重复逻辑每个程序自己控制数据的一致性,显然是很糟糕的。b) 要么通过共同的接口访问数据库这是比较流行的一种方法。3层架构,SOA,...我不敢说这些架构都是错误的,他们都有特定的用途。但是你要明白,一个系统越复杂,零件越多,出错的可能性就越大,而且性能也越差。总而言之,如果你认为数据正确性是必须要保证的,那么你就必须付出一定的代价来实现。用外键比用程序控制更可靠,同时更简单直接,减轻了程序的负担。DBMS有40年的历史,是顶尖的程序员用C/C++开发出来的,经过重重测试,被无数项目用到,其可靠性和性能已经接近最优状态了。你如果觉得你们项目里的程序员能做得更好,对事务、并发等技术都无比熟悉,又有充足的时间,那你们可以用程序控制。老实说,我接触的项目很多都是不用外键约束的,很多都是不考虑规范化设计的。这样的系统很复杂(没必要这么复杂),性能不好。这是我的切身体会。当然,所有事情都不能一概而论,不用外键的程序也能做得很好,卖得很好。当你做决定时,要想清楚后果。我个人倾向于经典的方法,可靠的方法。

蛮大人123 2019-12-02 01:46:42 0 浏览量 回答数 0

回答

web数据集成技术可以从web上自动获取数据,但是获取的信息存在着大量的脏数据,比如滥用缩写词,惯用语,数据输入错误,重复记录,丢失值,拼写变化,不同的计量单位。这些数据是没有意义的,根本就不可能为以后的数据挖掘决策分析提供任何支持。数据清洗主要是提高数据的可用性,目前,数据清洗主要应用于三个领域: 1 数据仓库(DW) 2数据库中的知识发现(KDD) 3数据质量管理(TDQM) 我在公司里的第一个项目就是数据质量管理,在这里在说下数据质量管理: 通过制定、实施数据质量检核,暴露各系统数据质量问题。持续监控各系统数据质量波动情况及数据质量规则占比分析,定期生成各系统关键数据质量报告,掌握系统数据质量状况。结合系统提供的清洗组件以及数据质量问题处理流程为各系统数据质量提升提供有效支撑。数据质量(DataQuality)管理是贯穿数据生命周期的全过程,覆盖质量评估,数据去噪,数据监控,数据探查,数据清洗,数据诊断等方面。数据度量和变化频度提供了衡量数据质量好坏的手段。数据度量主要包括完整性、唯一性、一致性、准确性、合法性。变化频度主要包括业务系统数据的变化周期和实体数据的刷新周期。数据质量管理准则包括测量、提高组织数据的质量和整合性的方法。数据质量处理包括数据标准化、匹配、生存和质量监测。数据必须具备适当的质量,以解决业务要求问题。 结合大数据的参考框架及数据处理实际需求情况,数据质量管理系统主要功能定位为:数据发现、质量管理、元数据、主数据管理和信息政策管理。在数据生命周期中,数据的获取和使用周期包括系列活动:评估,分析,调整,丢弃数据,目前数据清洗的模型: 基于粗糙集理论数据清洗 基于聚式模式数据清洗 基于模糊匹配数据清洗模型 基于遗传神经网络数据清洗 基于专家系统体系结构等数据校验及转换 数据校验的目的是确保抽取数据本身的正确性和完整性, 数据转换的目的是保证数据的一致性数据清洗流程1数据预处理: 包括数据元素化,保准化 2确定清洗方法: 3校验清洗方法:先验证所用的清洗方法是否合适,抽取小样本进行验证,判断其召回率和准确率 4执行清洗工具: 5数据归档:将新旧数据源进行归档处理,方便以后的清洗一般情况下,模式中反应的元数据对应判断一个数据源的质量远远不够,因此通过具体实例来获得有关数据熟悉和不寻常模式的元数据很重要。这些元数据可以帮助发现数据质量问题,也有助于发现属性间的依赖关系,

xuning715 2019-12-02 01:12:15 0 浏览量 回答数 0

问题

维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑?为什么?

茶什i 2019-12-01 21:57:05 13 浏览量 回答数 1

问题

日志投递MaxCompute后,如何检查数据完整性?

保持可爱mmm 2020-03-26 23:25:39 0 浏览量 回答数 1

回答

数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。   数字签名是非对称密钥加密技术与数字摘要技术的应用。   数字签名了的文件的完整性是很容易验证的(不需要骑缝章,骑缝签名,也不需要笔迹专家),而且数字签名具有不可抵赖性(不需要笔迹专家来验证)。   简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。基于公钥密码体制和私钥密码体制都可以获得数字签名,目前主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字签名。普通数字签名算法有RSA等 所以一句话解释你的问题:主要原因是:RSA具备了公钥、私钥这个特点。

行者武松 2019-12-02 01:26:44 0 浏览量 回答数 0

回答

1、完整性:确保完整性,数据中包含了给出用户对某品牌下发生的所有行为。 2、保序性:不是,数据中用户U在某一天针对品牌B的记录顺序不是与用户实际的行为发生顺序一致

樱木瞎折腾 2019-12-02 02:54:42 0 浏览量 回答数 0

问题

Windows 2012 R2的重复数据删除支持

虎笑 2019-12-01 20:56:08 9362 浏览量 回答数 1

问题

MYISAM怎么保证数据的完整性

蛮大人123 2019-12-01 19:51:45 1078 浏览量 回答数 1

回答

iBATIS、Hibernate和JPA是用于把数据持久到关系数据库中的三种不同的机制,每种都有着自己的优势和局限性。iBATIS不提供完整的ORM解决方案,也不提供任何的对象和关系模型的直接映射。Hibernate提供了一个完整的ORM解决方案,但不提供对查询的控制权。JPA也提供一个完整的ORM解决方案,并提供对诸如继承和多态一类的面向对象编程特性的支持,不过它的性能则取决于持久性提供程序。

xwaby 2019-12-02 01:40:16 0 浏览量 回答数 0

回答

采用公钥加密和私钥加密相结合的办法保证数据的保密性 SET协议中,支付环境的信息保密性是通过公钥加密法和私钥加密法相结合的算法来加密支付信息而获得的。它采用的公钥加密算法是RSA的公钥密码体制,私钥加密算法是采用DES数据加密标准。这两种不同加密技术的结合应用在SET中被形象的成为数字信封,RSA加密相当于用信封密封,消息首先以56位的DES密钥加密,然后装入使用1024位RSA公钥加密的数字信封在交易双方传输。这两种密钥相结合的办法保证了交易中数据信息的保密性。一、采用信息摘要技术保证信息的完整性SET协议是通过数字签名方案来保证消息的完整性和进行消息源的认证的,数字签名方案采用了与消息加密相同的加密原则。即数字签名通过RSA加密算法结合生成信息摘要,信息摘要是消息通过HASH函数处理后得到的唯一对应于该消息的数值,消息中每改变一个数据位都会引起信息摘要中大约一半的数据位的改变。而两个不同的消息具有相同的信息摘要的可能性及其微小,因此HASH函数的单向性使得从信息摘要得出信息的摘要的计算是不可行的。信息摘要的这些特征保证了信息的完整性。二、采用双重签名技术保证交易双方的身份认证SET协议应用了双重签名(Dual Signatures)技术。在一项安全电子商务交易中,持卡人的定购信息和支付指令是相互对应的。商家只有确认了对应于持卡人的支付指令对应的定购信息才能够按照定购信息发货;而银行只有确认了与该持卡人支付指令对应的定购信息是真实可靠的才能够按照商家的要求进行支付。为了达到商家在合法验证持卡人支付指令和银行在合法验证持卡人订购信息的同时不会侵犯顾客的私人隐私这一目的,SET协议采用了双重签名技术来保证顾客的隐私不被侵犯。

美人迟暮 2019-12-02 01:26:18 0 浏览量 回答数 0

回答

由于区块链是一个共享的账本,为了保证电子证照数据的私密性,共享数据不会直接存储在区块链上,而是通过智能合约将其锚定为区块链上的数字资产。当以数据库方式提供时,将政府业务库中共享的数据同步一份到其前置机的ODS中后,再将该部分共享数据在ODS中的访问信息加密后作为数字资产的元数据;当以数据文件方式提供时,是将政府业务库中可共享的数据经过加密后,写到ODS的文件系统中,形成一个共享数据文件,再将该共享数据文件的完整性哈希值作为数字资产的元数据存储在区块链上,而共享数据文件本身依然存储在政府业务库前置机的ODS中。 其中,数字资产包括头信息和数字资产元数据两部分,具体分析如下。 (1)头信息:包括版本号、数据类型、哈希算法。其中,版本号表示数字资产解析标准使用的版本的编号;数据类型表示数字资产是非结构化数据(文件存储方式)还是结构化数据(数据库存储方式);哈希算法表示计算文件完整性所采用的哈希算法,如MD5、SHA1、SHA256、SHA3等,当数据类型为非结构化数据时该字段才生效。 (2)数字资产元数据:如果共享数据为结构化数据,则数字资产元数据表示政府业务系统前置机ODS的访问接口信息的加密字符串;如果共享数据为非结构化数据,则数字资产元数据表示共享数据文件的完整性哈希值。即,结构化数据的数字资产为:版本号+数据类型+数字资产元数据;非结构化数据的数字资产为:版本号+数据类型+哈希算法+数字资产元数据。 数据共享方通过区块链客户端发布数字资产时,数字资产被记录在交易负载中后提交到预置智能合约,实现数字资产的发布。 可信电子证照实际上是采用一种链上链下相结合的存储方式,以此来实现共享数据的存储与接入,并能保障数据在存储上的私密性和区块链的存储效率。这样做的好处是,在区块链的持续记账过程中,可防止区块链的链上数据过度膨胀,保障交易效率。具体而言,对占用空间较小的文本数据直接采用链上存储,对占用空间较大的数据或者文件则将访问这类数据的元数据信息采用链上存储,文件本身采用链下存储。链下存储可以是任意网络文件系统、文件链接、点对点分布式文件系统等,如IPFS等。

问问小秘 2019-12-02 03:10:06 0 浏览量 回答数 0

问题

用DTS转数据时提示预检查失败

bilibibi 2019-12-01 20:57:33 5842 浏览量 回答数 0

问题

mysql热备如何保证数据的完整性

小旋风柴进 2019-12-01 20:14:48 1181 浏览量 回答数 1

回答

详细解答可以参考官方帮助文档因为移动端网络环境的复杂性,数据在客户端和服务器之间传输时有可能会出错。因此OSS SDK提供了基于CRC的端到端的数据完整性效验。 CRC校验在读取下载数据流的时候,如果开启了crc效验,会在数据流读取完毕后自动验证数据完整性。 GetObjectRequest request = new GetObjectRequest(OSSTestConfig.ANDROID_TEST_BUCKET, testFile);//开启CRC效验request.setCRC64(OSSRequest.CRC64Config.YES);//....try{ GetObjectResult result = oss.getObject(request); InputStream in = result.getObjectContent(); ByteArrayOutputStream output = new ByteArrayOutputStream(); byte[] buffer = new byte[BUFFER_SIZE]; int len; while ((len = in.read(buffer)) > -1) { output.write(buffer, 0, len); } output.flush(); in.close();}catch(ClientException e){ //...}catch(InconsistentException e){ //....}

2019-12-01 23:14:05 0 浏览量 回答数 0

问题

用户行为数据完整性和保序性的疑问

ruky 2019-12-01 21:44:45 5735 浏览量 回答数 4

回答

数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。 悲观锁:假定会发生并发冲突,屏蔽一切可能违反数据完整性的操作。在查询完数据的时候就把事务锁起来,直到提交事务。实现方式:使用数据库中的锁机制 乐观锁:假设不会发生并发冲突,只在提交操作时检查是否违反数据完整性。在修改数据的时候把事务锁起来,通过version的方式来进行锁定。实现方式:乐一般会使用版本号机制或CAS算法实现。 两种锁的使用场景 从上面对两种锁的介绍,我们知道两种锁各有优缺点,不可认为一种好于另一种,像乐观锁适用于写比较少的情况下(多读场景),即冲突真的很少发生的时候,这样可以省去了锁的开销,加大了系统的整个吞吐量。 但如果是多写的情况,一般会经常产生冲突,这就会导致上层应用会不断的进行retry,这样反倒是降低了性能,所以一般多写的场景下用悲观锁就比较合适。

剑曼红尘 2020-03-31 11:04:46 0 浏览量 回答数 0

问题

外键在电商网站数据库设计中用的多不多啊?

蛮大人123 2019-12-01 19:53:28 1341 浏览量 回答数 1

问题

外键在电商网站数据库设计中用的多不多啊?

a123456678 2019-12-01 20:16:15 737 浏览量 回答数 1

回答

采取同城容灾双活容灾备份方案,最容易遇到的就是人为因素造成的数据丢失问题,比如,在数据库读写过程中,操作人员在生产机A误删除了部分数据,因为采用了双活方案,则生产机B也会同样删除部分数据来保证A\B机的数据一致性,最终结果就是这些误删除的数据无法找回。防范数据丢失,需要能够在实现数据实时备份的基础上,能够实现数据的任意时间点回退,并保障恢复数据的完整性和可用性,目前只有备特佳 CDP容灾备份软件可以实现。 “答案来源于网络,供您参考” 希望以上信息可以帮到您!

牧明 2019-12-02 02:17:01 0 浏览量 回答数 0

回答

首先说一点,使用外键是为什么? 外键的使用时为了在数据库的层级保证数据的一致性,完整性,更可靠。毕竟使用程序来控制的话,对于程序员的要求是比较高的。 然后再说应用场景: 追求的数据的完整性等,那就用上外键吧。毕竟不可控的因素太多了,还不如让数据库自己来保证。如果数据库都保证不了,那就game over啦。 追求性能,而且是在大数据量的频繁更新操作下。那就让外键去见鬼吧,这个时候外键还存在,不是完全的捣蛋吗?插入一条数据由于外键的存在还要去做一次一致性约束检测,这不是在浪费时间吗?所以在这种条件下,外键就有点不太实用了。 当然你的数据量不大,那么你使用外键是没有问题的(数据量不大也不需要考虑高速写入的问题了 ) 所以说,这是一个权衡,看你用想要什么。 参考:http://www.dewen.org/q/1814/mysql+%E5%A4%96%E9%94%AE%E9%97%AE%E9%A2%98 题外话:如果你要高速写入大数据量,就不要用关系型数据库了,这个解决起来有点麻烦。现在不是NOSQL很火吗,看看这个吧。呵呵

长安归故里. 2020-01-31 14:06:45 0 浏览量 回答数 0

回答

参考ACID:Consistency(一致性):指数据库事务不能破坏关系数据的完整性以及业务逻辑上的一致性。 例如: 对银行转帐事务,不管事务成功还是失败,应该保证事务结束后ACCOUNTS表中Tom和Jack的存款总额为2000元,不应出现多或少.保证数据完全一致.

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