布局容器并发控制与数据一致性_第1页
布局容器并发控制与数据一致性_第2页
布局容器并发控制与数据一致性_第3页
布局容器并发控制与数据一致性_第4页
布局容器并发控制与数据一致性_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

18/22布局容器并发控制与数据一致性第一部分并发控制在数据库系统中的作用 2第二部分乐观并发控制与悲观并发控制的区别 4第三部分锁机制在并发控制中的应用 7第四部分时间戳机制在并发控制中的应用 9第五部分多版本并发控制的原理及实现 12第六部分读写视图机制在并发控制中的应用 14第七部分分布式系统中数据一致性的挑战 16第八部分分布式系统中实现数据一致性的策略 18

第一部分并发控制在数据库系统中的作用关键词关键要点数据库并发控制的意义

1.保证数据库系统的数据一致性:并发控制的根本目的是确保在并发环境下,对共享数据进行操作时,不会出现数据不一致的情况。

2.提高数据库系统的吞吐量:在多个用户同时对数据库进行操作时,并发控制可以有效避免数据冲突,从而提升数据库系统的吞吐量和性能。

3.增强数据库系统的可伸缩性:良好的并发控制机制可以帮助数据库系统更好地处理高并发场景,从而提高数据库系统的可伸缩性。

数据库并发控制的主要方法

1.锁机制:锁机制是数据库并发控制最常用的一种方法,通过对临界资源加锁,来保证只有一个事务能够访问该资源,从而避免数据冲突。

2.乐观并发控制:乐观并发控制是一种非锁定机制,它假定在事务执行期间,不会发生任何数据冲突。当一个事务提交时,它会检查是否发生了冲突。如果发生了冲突,则事务将回滚并重新执行。

3.悲观并发控制:悲观并发控制是一种锁定机制,它假设在事务执行期间,可能发生数据冲突。因此,它会提前对可能被访问的数据加锁,以防止其他事务对这些数据进行修改。#并发控制在数据库系统中的作用

1.定义

并发控制(ConcurrencyControl)是指在数据库系统中,对并发访问共享数据的多个事务进行协调,以保证数据的完整性和一致性。

2.目标

-隔离性(Isolation):保证每个事务在数据库中的执行如同在没有其他事务的情况下执行一样。

-原子性(Atomicity):保证事务中的所有操作要么全部执行,要么全部不执行。

-一致性(Consistency):保证事务执行前后,数据库处于一致性的状态。

-持久性(Durability):保证已提交事务对数据库所做的修改是永久性的。

3.必要性

-事务并发执行时,可能出现在多个事务同时访问相同的数据库资源,从而导致数据不一致或数据损坏。

-并发控制可以防止事务之间因并发访问而产生数据不一致或数据损坏的问题,保证数据库系统数据的完整性和一致性。

4.并发控制方法

#4.1锁(Locking)

-锁(Locking)是并发控制中最常用的一种方法。

-锁通过对数据库资源进行加锁来控制并发访问,从而保证数据的一致性。

#4.2时间戳(Timestamping)

-时间戳(Timestamping)是并发控制的另一种方法。

-时间戳通过给每个事务一个唯一的时间戳来控制并发访问,从而保证数据的一致性。

#4.3乐观并发控制(OptimisticConcurrencyControl)

-乐观并发控制(OptimisticConcurrencyControl,OCC)是一种并发控制方法,它假设事务之间不会发生冲突。

-OCC在事务提交时检查是否有冲突,如果有冲突,则回滚事务。

#4.4悲观并发控制(PessimisticConcurrencyControl)

-悲观并发控制(PessimisticConcurrencyControl,PCC)是一种并发控制方法,它假设事务之间可能会发生冲突。

-PCC在事务开始时就对数据加锁,以防止其他事务访问数据。

5.总结

并发控制在数据库系统中起着重要作用,它可以防止事务之间因并发访问而产生数据不一致或数据损坏的问题,保证数据库系统数据的完整性和一致性。第二部分乐观并发控制与悲观并发控制的区别关键词关键要点乐观并发控制

1.乐观并发控制是一种并发控制策略,它假设在执行读写操作时,其它事务不会修改相同的数据。

2.在乐观并发控制中,事务在开始执行前不获取任何锁,而是直接读取数据并在写操作完成时才检查是否发生了冲突。

3.如果没有发生冲突,则提交事务;否则,事务将回滚并重新执行。

悲观并发控制

1.悲观并发控制是一种并发控制策略,它假设在执行读写操作时,其它事务可能会修改相同的数据。

2.在悲观并发控制中,事务在开始执行前会获取与数据相关的锁,以防止其它事务修改这些数据。

3.悲观并发控制可以保证数据的一致性,但它可能会导致事务的吞吐量降低。

乐观并发控制与悲观并发控制的比较

1.乐观并发控制适合于读多写少的事务,因为它可以提高事务的吞吐量。

2.悲观并发控制适合于写多读少的事务,因为它可以保证数据的一致性。

3.在实际应用中,可以根据事务的特性选择合适的并发控制策略。#乐观并发控制与悲观并发控制的区别

定义

乐观并发控制(OCC):OCC假定事务很少发生冲突,因此允许事务在未加锁的情况下并发执行。当事务提交时,系统会检查是否存在冲突。如果存在冲突,则回滚事务。

悲观并发控制(PCC):PCC假定事务经常发生冲突,因此在事务执行之前对数据加锁。这样可以防止其他事务访问被锁定的数据,从而避免冲突。

特点

|特征|乐观并发控制|悲观并发控制|

||||

|加锁策略|不加锁|加锁|

|冲突检测|在提交时|在执行前|

|回滚|可能|不可能|

|吞吐量|高|低|

|可伸缩性|好|差|

|复杂性|低|高|

适用场景

OCC适用于冲突较少的场景,例如读多写少的数据集。PCC适用于冲突较多的场景,例如写多的数据集中。

优缺点

乐观并发控制的优点:

*吞吐量高

*可伸缩性好

*复杂性低

乐观并发控制的缺点:

*可能会导致冲突和回滚

*不适合冲突较多的场景

悲观并发控制的优点:

*可以防止冲突和回滚

*适合冲突较多的场景

悲观并发控制的缺点:

*吞吐量低

*可伸缩性差

*复杂性高

常见实现

OCC的常见实现包括:

*使用版本控制来跟踪数据的变化,并在冲突时回滚事务。

*使用时间戳来跟踪数据的变化,并在冲突时回滚事务。

PCC的常见实现包括:

*使用排他锁来防止其他事务访问被锁定的数据。

*使用共享锁来允许其他事务读取被锁定的数据,但不能写入。

总结

OCC和PCC是两种不同的并发控制方法,各有优缺点。OCC适用于冲突较少的场景,而PCC适用于冲突较多的场景。在选择并发控制方法时,需要考虑数据冲突的可能性、吞吐量、可伸缩性和复杂性等因素。第三部分锁机制在并发控制中的应用关键词关键要点【锁机制在并发控制中的应用】:

1.锁机制是一种经典的并发控制技术,其原理是通过引入锁来控制对共享资源的访问,以防止并发操作导致的数据不一致。

2.锁机制通常分为悲观锁和乐观锁。悲观锁假设并发操作之间存在冲突,因此在操作共享资源之前,需要先获得相应的锁,以防止其他并发操作对该资源进行修改。乐观锁则假设并发操作之间不存在冲突,因此在操作共享资源之前,并不获取锁,而是等到操作完成之后,再检查是否有冲突发生。

3.锁机制的应用非常广泛,除了数据库系统之外,在操作系统、分布式系统、多线程编程等领域都有着广泛的应用。

【数据库锁机制】:

锁机制在并发控制中的应用

锁机制是一种常见的并发控制技术,用于协调对共享资源的访问,防止多个进程或线程同时访问同一个资源,从而保证数据的完整性和一致性。锁机制的基本原理是,当一个进程或线程需要访问共享资源时,必须先获取该资源的锁,获取锁成功后,该进程或线程才能访问该资源,其他进程或线程必须等待,直到该资源的锁被释放。

锁机制主要有以下几种类型:

*互斥锁(MutexLock):互斥锁是一种最基本的锁机制,它只允许一个进程或线程同时访问共享资源。互斥锁通常用于保护对临界区的访问,临界区是指必须由一个进程或线程独占访问的代码段。

*读写锁(Read-WriteLock):读写锁是一种允许多个进程或线程同时读共享资源,但只允许一个进程或线程写共享资源的锁机制。读写锁通常用于保护对数据库的访问,因为数据库中的数据通常是只读的,但也有可能被修改。

*共享锁(SharedLock):共享锁是一种允许多个进程或线程同时读共享资源的锁机制,但不允许任何进程或线程写共享资源。共享锁通常用于保护对只读数据的访问,例如,在数据库中,共享锁可以用于保护对只读表或视图的访问。

*排他锁(ExclusiveLock):排他锁是一种只允许一个进程或线程访问共享资源的锁机制。排他锁通常用于保护对需要独占访问的资源的访问,例如,在数据库中,排他锁可以用于保护对需要更新的表的访问。

锁机制可以有效地防止多个进程或线程同时访问同一个资源,从而保证数据的完整性和一致性。但是,锁机制也可能导致性能下降,因为当一个进程或线程需要访问共享资源时,它必须等待其他进程或线程释放该资源的锁。因此,在使用锁机制时,需要仔细考虑锁的粒度和锁的类型,以尽量减少锁机制对性能的影响。

除了锁机制之外,还有其他一些并发控制技术,例如,时间戳机制、乐观并发控制和悲观并发控制。这些并发控制技术各有其优缺点,在不同的场景下,需要选择合适的并发控制技术来保证数据的完整性和一致性。第四部分时间戳机制在并发控制中的应用关键词关键要点时间戳机制的原理

1.时间戳机制是一种并发控制机制,通过为每个事务分配一个唯一的时间戳来实现并发事务的顺序执行。

2.时间戳机制可以防止冲突的事务同时执行,从而保证数据的正确性。

3.时间戳机制可以提高并发性,因为事务可以并行执行,只要它们不冲突。

时间戳机制的类型

1.读时间戳机制:在事务开始时为事务分配一个时间戳,该时间戳用于决定事务可以读取的数据版本。

2.写时间戳机制:在事务提交时为事务分配一个时间戳,该时间戳用于决定事务可以写入的数据版本。

3.读-写时间戳机制:将读时间戳机制和写时间戳机制结合起来,以提供更高的并发性和一致性。

时间戳机制的应用场景

1.数据库管理系统:时间戳机制是数据库管理系统中常用的并发控制机制,可以防止冲突的事务同时执行,从而保证数据的正确性。

2.分布式系统:时间戳机制也可以用于分布式系统中,以实现不同节点之间的事务协调和一致性。

3.实时系统:时间戳机制还可以用于实时系统中,以确保数据的及时性和准确性。

时间戳机制的优势

1.并发性高:时间戳机制可以提高并发性,因为事务可以并行执行,只要它们不冲突。

2.简单易懂:时间戳机制的原理简单易懂,便于理解和实现。

3.实现方便:时间戳机制可以很容易地集成到数据库管理系统和分布式系统中。

时间戳机制的缺点

1.开销大:时间戳机制需要为每个事务分配一个唯一的时间戳,这会增加系统的开销。

2.死锁:时间戳机制可能会导致死锁,因为事务可能会等待其他事务释放锁。

3.复杂性:时间戳机制在处理冲突事务时可能会变得很复杂,特别是当存在多个冲突事务时。

时间戳机制的发展趋势

1.时间戳机制正在向轻量级和分布式方向发展:随着数据库系统和分布式系统的发展,时间戳机制正在向轻量级和分布式方向发展,以提高性能和可扩展性。

2.时间戳机制正在与其他并发控制机制相结合:时间戳机制正在与其他并发控制机制相结合,以提高并发性和一致性。

3.时间戳机制正在用于新的应用场景:时间戳机制正在不断被应用于新的应用场景,如实时系统、物联网和云计算等。#时间戳机制在并发控制中的应用

时间戳机制是一种并发控制技术,用于确保在一个共享数据库中并发执行的事务是按照它们的提交顺序执行的。时间戳机制通过为每个事务分配一个唯一的时间戳来实现这一点,并且事务只能读取和写入带有较早时间戳的数据。

时间戳机制的基本原理

时间戳机制的基本原理是为每个事务分配一个唯一的时间戳,并且事务只能读取和写入带有较早时间戳的数据。时间戳机制通过以下步骤来实现并发控制:

1.当一个事务开始时,数据库系统为它分配一个唯一的时间戳。

2.当一个事务读取数据时,它只能读取带有较早时间戳的数据。

3.当一个事务写入数据时,它只能写入带有较早时间戳的数据。

4.如果一个事务试图读取或写入带有较晚时间戳的数据,则数据库系统会阻止该事务,并强制它等待,直到该数据带有较早的时间戳为止。

时间戳机制的优点

时间戳机制具有以下优点:

*简单性:时间戳机制很简单,易于理解和实现。

*可伸缩性:时间戳机制具有良好的可伸缩性,即使在高并发的情况下也能很好地工作。

*不会产生死锁:时间戳机制不会产生死锁,因为事务只能读取和写入带有较早时间戳的数据。

时间戳机制的缺点

时间戳机制也存在一些缺点,包括:

*开销:时间戳机制会产生一些开销,因为需要为每个事务分配一个唯一的时间戳,并且需要检查每个事务读取和写入的数据的时间戳。

*不适用于长事务:时间戳机制不适用于长事务,因为长事务可能会持有时间戳很长时间,从而阻止其他事务访问数据。

*可能导致幻读:时间戳机制可能会导致幻读问题,即一个事务在读取数据时,另一个事务插入或删除了数据,导致第一个事务读取到不一致的数据。

时间戳机制的应用

时间戳机制被广泛应用于各种数据库系统中,包括关系数据库系统、非关系数据库系统和分布式数据库系统。时间戳机制也被用于其他领域,例如分布式系统、并发控制和多版本并发控制。

结论

时间戳机制是一种有效的并发控制技术,可以确保在一个共享数据库中并发执行的事务是按照它们的提交顺序执行的。时间戳机制具有简单性、可伸缩性和不会产生死锁等优点,但也存在开销、不适用于长事务和可能导致幻读等缺点。尽管如此,时间戳机制仍然被广泛应用于各种数据库系统中。第五部分多版本并发控制的原理及实现关键词关键要点【多版本并发控制的原理】:

1.多版本并发控制是一种乐观并发的并发控制技术,它允许多个事务同时访问和修改相同的数据,而不会产生冲突。

2.多版本并发控制通过维护多个数据版本来实现,每个事务看到的数据版本都是该事务开始时的数据状态。

3.当一个事务修改数据时,它会创建一个新的数据版本,并将旧的数据版本标记为已删除。

【多版本并发控制的实现】:

多版本并发控制的原理及实现

多版本并发控制(MVCC)是一种并发控制机制,它允许多个事务同时对同一个数据进行操作,而不会产生数据不一致的问题。MVCC的基本原理是为每个数据项维护多个版本,每个版本都包含了一个时间戳。当一个事务对数据进行操作时,它会创建一个新的版本,并将其时间戳设置为当前时间戳。其他事务在读取数据时,总是读取数据项的最新版本,而不会受到其他事务正在进行的操作的影响。

MVCC有两种主要的实现方式:

*基于时间戳的MVCC:在这种实现方式中,每个数据项都有一个时间戳,表示该数据项的最新版本。当一个事务读取数据项时,它会将自己的时间戳与数据项的时间戳进行比较。如果事务的时间戳比数据项的时间戳新,则事务会读取数据项的最新版本;否则,事务会读取数据项的旧版本。

*基于快照的MVCC:在这种实现方式中,每个事务都有一个快照,表示该事务可以看到的数据版本。当一个事务读取数据项时,它会将自己的快照与数据项的时间戳进行比较。如果事务的快照比数据项的时间戳新,则事务会读取数据项的最新版本;否则,事务会读取数据项的旧版本。

MVCC的主要优点是它可以提高并发性、隔离性和持久性。

*并发性:MVCC允许多个事务同时对同一个数据进行操作,而不会产生数据不一致的问题。这是因为每个事务都读取数据项的最新版本,而不会受到其他事务正在进行的操作的影响。

*隔离性:MVCC可以保证每个事务都能看到一个一致的数据库状态。这是因为每个事务都有自己的快照,该快照表示该事务可以看到的数据版本。其他事务在该事务提交之前所做的任何更改都不会影响该事务看到的数据。

*持久性:MVCC可以保证一旦一个事务提交,其所做的更改将永久保存下来。这是因为每个数据项都存储了多个版本,因此即使数据项的最新版本被覆盖,旧版本仍然可以被读取。

MVCC的主要缺点是它可能会导致更多的存储开销。这是因为每个数据项都存储了多个版本,这会占用更多的存储空间。此外,MVCC也可能导致更多的计算开销。这是因为在读取数据项时,需要将事务的时间戳或快照与数据项的时间戳进行比较,这可能会增加读取数据的开销。第六部分读写视图机制在并发控制中的应用关键词关键要点【乐观并发控制与读写视图机制】:

1.乐观并发控制下,事务所需的数据在事务执行时加锁,直到事务结束时才释放锁。

2.乐观并发控制在事务执行期间,如果发现数据项被其他事务修改过,则认为发生了冲突,此时事务可以回滚或重试。

3.乐观并发控制的优点是并发度较高、吞吐量较大、系统开销较小。

【读写视图】:

一、读写视图的基本概念

读写视图(Read-WriteView)是一种并发控制技术,它允许多个事务并发执行,同时保证数据的一致性。读写视图机制的核心思想是将数据库中的数据组织成不同的视图,每个事务都可以看到一个与自己相关的视图。事务在执行过程中只能读取和修改自己视图中的数据,从而避免了不同事务之间的数据冲突。

二、读写视图的实现方式

读写视图可以通过多种方式实现,其中最常见的是基于时间戳和基于快照的两种方式。

1.基于时间戳的读写视图

基于时间戳的读写视图机制使用时间戳来对数据进行标记。每个事务在开始执行时都会被分配一个时间戳,该时间戳代表了事务开始执行的时间。事务在执行过程中只能读取和修改那些时间戳小于或等于自己时间戳的数据。这样可以保证事务只能看到在它开始执行之前已经提交的数据,从而避免了不同事务之间的数据冲突。

2.基于快照的读写视图

基于快照的读写视图机制使用快照来对数据进行标记。每个事务在开始执行时都会创建一个快照,该快照包含了在事务开始执行之前已经提交的数据。事务在执行过程中只能读取和修改快照中的数据。这样可以保证事务只能看到在它开始执行之前已经提交的数据,从而避免了不同事务之间的数据冲突。

三、读写视图的优点与缺点

读写视图机制具有以下优点:

1.提高并发性:读写视图机制允许多个事务并发执行,同时保证数据的一致性,这可以极大地提高数据库的并发性。

2.避免死锁:读写视图机制可以避免死锁的发生。因为每个事务只能读取和修改自己视图中的数据,所以不会出现两个事务同时修改同一数据的情况,从而避免了死锁的发生。

3.提高性能:读写视图机制可以提高数据库的性能。因为事务只能读取和修改自己视图中的数据,所以可以减少数据库的I/O操作,从而提高数据库的性能。

读写视图机制也存在以下缺点:

1.增加复杂性:读写视图机制增加了数据库的复杂性。因为需要对数据进行标记,还需要维护事务的视图,这增加了数据库的复杂性。

2.降低吞吐量:读写视图机制可能会降低数据库的吞吐量。因为事务只能读取和修改自己视图中的数据,所以可能会导致某些数据被多次读取,从而降低数据库的吞吐量。

四、读写视图机制在并发控制中的应用

读写视图机制可以用于实现多种并发控制协议,其中最常见的是乐观并发控制协议和悲观并发控制协议。

1.乐观并发控制协议

乐观并发控制协议假设事务不会发生冲突。当一个事务开始执行时,它会创建一个快照,然后在快照中执行自己的操作。当事务提交时,它会检查快照中的数据是否已经被其他事务修改过。如果数据已经被修改过,则事务会回滚,否则事务会提交。

2.悲观并发控制协议

悲观并发控制协议假设事务会发生冲突。当一个事务开始执行时,它会对需要修改的数据加锁。当事务提交时,它会释放锁。其他事务在执行时,如果需要修改已经加锁的数据,则必须等待锁被释放。第七部分分布式系统中数据一致性的挑战关键词关键要点【数据一致性问题】:

1.分布式系统中,数据分布在不同的节点上,每个节点都有自己的副本。当对数据进行更新时,需要保证所有副本的一致性,即所有副本都反映最新的数据。

2.数据一致性问题是分布式系统中的一个核心问题,也是一个非常复杂的问题。因为分布式系统中的节点是独立的,并且可能会发生故障,所以很难保证所有副本的一致性。

3.数据一致性问题会导致各种各样的问题,例如:数据丢失、数据损坏、数据不一致等。这些问题会对应用程序的正确性、可靠性以及性能产生严重的影响。

【数据并发控制问题】:

分布式系统中数据一致性的挑战

在分布式系统中,数据一致性面临着诸多挑战,主要包括:

1.网络分区:分布式系统中的节点之间通过网络相互连接,网络分区是指网络中的一部分节点与其他部分节点之间的通信连接中断,导致这些节点无法相互通信。网络分区可以是临时性的,也可以是永久性的。当发生网络分区时,分布式系统中的数据可能变得不一致,因为每个分区中的节点只能访问本分区内的数据,而无法访问其他分区中的数据。

2.并发访问:分布式系统中的数据可能被多个节点同时访问,如果这些访问操作没有被正确协调,就可能导致数据不一致。例如,两个节点同时对同一份数据进行更新,如果更新操作没有被正确协调,就可能导致数据被覆盖,从而导致数据不一致。

3.副本一致性:分布式系统中的数据可能被复制到多个节点上,以提高数据的可用性和可靠性。但是,当对数据进行更新时,需要确保所有副本的数据都保持一致。如果副本一致性没有得到保证,就可能导致数据不一致。

4.拜占庭错误:拜占庭错误是指节点的行为是任意的、不可预测的,甚至可能是恶意的。在分布式系统中,如果存在拜占庭错误的节点,就可能导致数据不一致。例如,一个拜占庭错误的节点可以向其他节点发送错误的信息,从而导致其他节点做出错误的决策,导致数据不一致。

5.不确定性:分布式系统中的节点可能存在不确定性,例如节点可能宕机、网络可能延迟或丢包等。这些不确定性因素可能导致数据不一致。例如,一个节点可能在更新数据后宕机,导致其他节点无法访问该数据,从而导致数据不一致。

6.时间问题:分布式系统中的节点可能存在时间差异,这可能导致数据不一致。例如,一个节点可能在时间戳为t1时更新数据,而另一个节点可能在时间戳为t2时更新数据,如果t1大于t2,则数据可能不一致。

7.语义问题:分布式系统中的数据可能存在语义问题,即不同节点对数据的理解可能不同,这可能导致数据不一致。例如,一个节点可能将数据解释为整数,而另一个节点可能将数据解释为浮点数,这可能导致数据不一致。第八部分分布式系统中实现数据一致性的策略关键词关键要点分布式事务与一致性协议

1.分布式事务确保分布式系统中多个操作要么全部成功,要么全部失败,保证事务的原子性、一致性、隔离性和持久性。

2.分布式一致性协议,如二阶段提交、三阶段提交、Paxos等,用于协调多个参与者达成一致,确保数据在分布式系统中的一致性。

3.分布式事务通过补偿机制、最终一致性等策略来处理失败情况,保证事务的最终一致性。

数据复制

1.数据复制将数据副本存储在多个节点上,提高数据可用性和容错性,防止单点故障导致数据丢失。

2.数据复制方式包括同步复制、异步复制、半同步复制等,不同方式在数据一致性、性能和可靠性方面各有优劣。

3.数据复制需要解决一致性问题,如一致性级别、副本管理、冲突解决等,以保证副本之间的数据一致性。

分布式锁

1.分布式锁是一种用于协调对共享资源并发访问的机制,防止多个操作同时访问同一资源,导致数据不一致。

2.分布式锁的实现方式包括中心化锁、基于Paxos的锁、基于ZooKeeper的锁等。

3.分布式锁需要考虑锁的性能、可靠性、可扩展性等因素,以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论