导航:首页 > 科技大全 > google分布式系统

google分布式系统

发布时间:2023-06-13 10:58:14

A. Google文件系统--GFS详解

  Google File System(简称GFS)是适用于大规模且可扩展的分布式文件系统,可以部署在廉价的商务服务器上,在保证系统可靠性和可用 性的同时,大大降低了系统的成本。GFS的设计目标是高性能、高可靠、高可用性。
  GFS把机器故障视为正常现象,可以很好地处理系统故障。GFS系统通常会部署在上百台甚至上千台廉价服务器上,并会有相当多台廉价服务器上部署GFS Client来访问GFS服务,所以应用故障、操作系统bug、连接故障、网络故障、甚至机器供电故障都是经常发生的故障。GFS系统可以支持系统监控、故障检测、故障容忍和自动恢复,提供了非常高的可靠性。其次,GFS系统中的文件一般都是大文件,且文件操作大部分场景下都是append而不是overwrite。一旦文件写入完成后,大部分操作都是读文件且是顺序读。
  GFS提供了非标准(比如POSIX)的文件系统接口,支持 create、delete、open、close、read以及write。另外GFS支持snapshot和record append操作。snapshot可以以很低的代价创建文件或者目录树的拷贝,record append可以支持多个client并发地向同一个文件append data,同时还能保证每个client的append操作的原子性。

  master记录了文件系统的metadata,包括名字空间、权限控制信息、文件到chunk的mapping以及chunk的分布。master也负责chunk的lease管理、无用chunk的垃圾回收、chunk迁移等。master定期与chunkserver通信,向chunkserver发送指令并搜集chunkserver的状态。GFS client通过GFS的API与GFS系统通信(读写数据)。client向master请求获取metadata,真正的读写数据是直接与chunkserver交互。client和chunkserver都不cache文件数据。因为大部分应用都是基于API来streaming read 大文件且系统的文件数据太多,所以client缓存文件数据没有意义。chunkserver所在机器的linux的buffer cache以及cache了频繁访问的数据,chunkserver也是没有去cache文件数据的。

  单点master大大简化了系统设计,因为master知晓所有的meta信息,所以可以执行更加复杂的chunk位置分配和副本策略。但是,在读写数据时必须降低master的参与,以避免单点的master称为系统瓶颈。client不会通过master来读写文件数据,但是client会向master发送查询chunk位置分布的请求,然后client端缓存chunk的分布信息,然后直接向chunkserver读写数据。大致的读过程如下:
1、client根据文件名、byte offset以及chunk size计算出要读取的文件的chunk index
2、client通过文件名、chunk index向master查询chunk的分布
3、master回复chunk handler以及副本分布
4、client 缓存chunk的meta信息,key由文件名和chunk index组成
5、client从chunk的分布信息中查找距离自己最新的chunkserver,并发送查询请求。查询请求中包括chunk hander以及byte range。后续对相同chunk的查询不需要再次向master查询meta信息,因为client已经缓存了meta信息。

  chunk size是GFS系统的关键参数,通常设置为64MB,远大于文件系统的block大小。每个chunk的副本都chunkserver所在机器上以Linux file存储。之所为将chunk size定为64MB,主要有以下考虑:
1、可以减少client访问master查询meta信息的次数,降低master的访问压力。因为chunk size设计比较大,顺序访问一个超大文件时因为chunk数较少且client缓存了chunk meta信息,所以访问master的次数就会降低。甚至,client可以缓存所有文件的chunk的meta信息,就算是随机读文件,master也不会成为系统性能瓶颈。
2、可以减少网络开销,保持client与chunkserver的TCP连接,可以执行更多的chunk操作。
3、可以减少master上需要在内存中记录的meta data数据量,降低master的内存占用。
   size大的缺点是:小文件包含很少的chunk,甚至只有一个。这样的话,在多个client高并发查询该小文件时对应的chunk会成为热点。实际上,这种情况在GFS系统中很少发生,因为大部分client的操作都是顺序读大文件。但是,考虑以下场景,我们部署一个服务的二进制文件到GFS系统中,然后数百台的服务器同时查询二进制文件并启动服务,此时该二进制文件副本所在的chunkserver立马就会成为查询瓶颈。当然,可以通过增加副本数和分散服务器的查询时间来解决这种场景下的问题。

  master主要存储三种类型的metadata:file和chunk的名字空间,file到chunk的mapping信息以及chunk的副本分布。所有的metadata都在master的内存中存储。前两种meta信息可以持久化存储,将操作日志存储在master的本地磁盘以及将备份日志存储在远端机器上。master不持久化存储chunk的副本分布信息,而是通过与chunkserver交互来获取chunkserver上的chunk信息。
4.1 in-memory data structure
  meta信息在内存中,所有master的操作很快。另外,master可以高效地定期在后台scan所有的meta数据,来执行垃圾回收、副本修复、均衡等。metadata都记录在内存中,所以GFS系统会比较关注chunk的数量以及master的可用内存量。但是在实际场景下,这不是问题。每个64MB的chunk的metadata小于64字节,大部分的chunk都是满负荷存储的,除了文件最后一个chunk的空间是没有完全被占用。由于文件的名字空间采用了前缀压缩的方式存储,单个文件的meta信息也是小于64字节。如果需要扩大系统规模的话,可以很简单地通过增大master的内存就可以了。相比于系统的高可靠、高性能和简洁性,增加内存是很最小的代价了。
4.2 chunk 分布
  并没有持久化存储chunk的副本分布信息,而是在master启动时向chunkserver查询其chunk信息,然后通过heartbeat来持续更新master的副本分布信息,以与chunkserver数据保持一致。GFS起初设计时尝试将chunk的分布信息持久化存储在master端,随后发现通过master启动时拉取然后通过heartbeat同步chunk信息的方式更简单。因为,当chunkserver加入、退出、名字改变、重启等行为经常发生,这会导致维护master的chunk meta数据的正确性是非常困难的。从另一个角度考虑就是,只有chunkserver汇报的chunk信息才是集群中最真实的chunk分布,因为master不需要自己维护一个chunk分布状态,只需要以chunkserver的状态汇报为准即可。
4.3 操作日志
  日志记录了GFS集群数据更改的历史记录。操作日志对GFS来说是至关重要的,因为它不仅是metadata的持久化记录,还记录了并发操作的时序。因为操作日志很重要,所以必须可靠地存储。在metadata的change没有持久化之前,client是不能看到的数据的更改。当client修改数据时,操作记录需要保存在多个远端机器上,而且只有当操作记录持久化存储在本地和远端以后,才会回复client数据更改成功。
  可以通过回放操作日志来恢复文件系统。为了减少系统启动时replay的时间,必须缩减回放的日志量。master可以定期存储metadata的checkpoint,master重启时可以从checkpoint加载metadata,然后回放checkpoint之后的少量日志即可。

1、client向master查询chunk的primary所在的chunkserver以及其他副本的分布,如果没有primary的花,master会选择一个作为该chunk的primary
2、master回复client primary和其他副本的分布信息。client会cache返回的metadata
3、client将数据发送所有的副本。client可以以任意顺序执行。每个chunkserser都会在内存的LRUbuffer中记录数据。
4、当所有的副本都返回已经接收数据成功后,client会向primary发送一个写请求。primary会为每一个数据更改的请求附加一个序列号,数据更改是按照序列号的顺序执行的。
5、primary将数据更改同步到其他副本中,副本也是按照序列号执行数据更改操作。
6、primary接收到其他副本回复的数据操作完成
7、primary返回client结果。期间发生的所有错误都会报给client。

   GFS集群一般都会有上百台的chunkserver,分布在多个机架上。chunkserver也会接收来自本机架或者其他机架的上百个client的查询请求。不同机架的服务器通信可能会途径一个或者多个交换机转发。chunk的副本分布选择策略主要目的是尽量提高数据的可靠性和可用性,同时最大化地充分利用网络带宽。所以,仅仅将副本跨机器部署是不够的。GFS将副本是跨机架部署的,这样可以保证在一个机架被损坏或者下线时,chunk至少会有副本是可用的。
   chunk的副本在下列情况下会被创建:创建chunk、副本修复、rebalance。当master创建chunk时,会选择存储该chunk副本的chunkserver。主要考虑以下几点:
1、新副本所在chunkserver的磁盘利用率低于系统的平均水平
2、限制每个chunkserver最近一段时间创建chunk的数量
3、每个chunk的所有副本不能都在一个机架
   chunk的副本数少于一定数量是,master会复制一个副本。这可能发生在chunkserver宕机或者chunkserver汇报自己的副本损坏或者chunkserver所在机器的磁盘损坏等等。每个chunk 复制任务都有优先级,按照优先级由高到低子master中排队等待执行。master还会定期扫描当前副本的分布情况,一旦发现磁盘使用量或者机器负载不均衡,就会发起负载均衡操作。无论是chunk创建、chunk复制还是负载均衡,选择chunk副本的位置的策略都是相同的,并且需要限制副本修复和均衡的速度,否则会影响系统的正常读写服务。

  Google的成功表明单master的设计师可行的。这不仅简化了系统,而且能够较好地实现一致性,给予性能考虑,GFS提出了“记录至少原子性追加一次”的一致性模型。通过租约的方式将每个chunk的修改授权到chunkserver从而减少了master的负载,通过流水线的方式复制多个副本以减少延时。master维护的元数据很多,需要设计高效的数据结构,且要保证占用内存小和支持快照操作。支持COW的B树可以满足需求,但是实现确实相当复杂。

B. 在大数量级的数据存储上,比较靠谱的分布式文件存储有哪些

一、 Ceph

Ceph最早起源于Sage就读博士期间的工作、成果于2004年发表,并随后贡献给开源社区。经过多年的发展之后,已得到众多云计算和存储厂商的支持,成为应用最广泛的开源分布式存储平台。
二、 GFS

GFS是google的分布式文件存储系统,是专为存储海量搜索数据而设计的,2003年提出,是闭源的分布式文件系统。适用于大量的顺序读取和顺序追加,如大文件的读写。注重大文件的持续稳定带宽,而不是单次读写的延迟。
三、 HDFS

HDFS(Hadoop Distributed File System),是一个适合运行在通用硬件(commodity hardware)上的分布式文件系统,是Hadoop的核心子项目,是基于流数据模式访问和处理超大文件的需求而开发的。该系统仿效了谷歌文件系统(GFS),是GFS的一个简化和开源版本

C. 什么是google的分布式数据存储管理系统

GFS是谷歌的分布式数据储存管理系统。文件系统是计算机存储、管理数据的基本方式,当信息量足够大(单台服务器无法支撑现有业务量时),通过多个文件系统节点组成文件系统网络,通过网络进行节点间的通信。分布式文件系统是建立在客户机/服务器技术基础之上的,一个或多个文件服务器与客户机文件系统协同操作。

D. Google的GFS和开源的HDFS是()中的代表性方案

Hadoop项目。
1、HDFS(HadoopDistributedFileSystem),作为GoogleFileSystem(GFS)的实现,是Hadoop项目的核心子项目,是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大文件的需求而开发的,可以运行于廉价的商用服务器上。它所具有的高容错、高可靠性、高可扩展性、高获得性、高吞吐率等特征为海量数据提供了不怕故障的存储,为超大数据集(LargeDataSet)的应用处理带来了很多便利。
2、GoogleGFS,BigTable,MapRece称为Google的三驾马车,是许多基础服务的基石GFS于2003年提出,是一个分布式的文件系统,与此前的很多分布式系统的前提假设存在很大的不同,适用于以下场景)认为组件失效是一种常态,提供了容错机制,自动负载均衡,使得分布式文件系统可以在廉价机器上运行)面向大文件存储,系统主要的工作负载是大规模的流式读取,写操作主要是追加方式写,很少有随机写)一次写入,多次读取。
3、开源HDFS。分布式文件存储系统,源自于Google的GFS论文,HDFS是GFS的克隆版HDFS是Hadoop中数据存储和管理的基础,是一个高容错的系统,能够自动解决硬件故障。

E. 分布式存储有哪些

问题一:当前主流分布式文件系统有哪些?各有什么优缺点 目前几个主流的分布式文件系统除GPFS外,还有PVFS、Lustre、PanFS、GoogleFS等。
1.PVFS(Parallel Virtual File System)项目是Clemson大学为了运行Linux集群而创建的一个开源项目,目前PVFS还存在以下不足:
1)单一管理节点:只有一个管理节点来管理元数据,当集群系统达到一定的规模之后,管理节点将可能出现过度繁忙的情况,这时管理节点将成为系统瓶颈;
2)对数据的存储缺乏容错机制:当某一I/O节点无法工作时,数据将出现不可用的情况;
3)静态配置:对PVFS的配置只能在启动前进行,一旦系统运行则不可再更改原先的配置。
2.Lustre文件系统是一个基于对象存储的分布式文件系统,此项目于1999年在Carnegie Mellon University启动,Lustre也是一个开源项目。它只有两个元数据管理节点,同PVFS类似,当系统达到一定的规模之后,管理节点会成为Lustre系统中的瓶颈。
3.PanFS(Panasas File System)是Panasas公司用于管理自己的集群存储系统的分布式文件系统。
4.GoogleFS(Google File System)是Google公司为了满足公司内部的数据处理需要而设计的一套分布式文件系统。
5.相对其它的文件系统,GPFS的主要优点有以下三点:
1)使用分布式锁管理和大数据块策略支持更大规模的集群系统,文件系统的令牌管理器为块、inode、属性和目录项建立细粒度的锁,第一个获得锁的客户将负责维护相应共享对象的一致性管理,这减少了元数据服务器的负担;
2)拥有多个元数据服务器,元数据也是分布式,使得元数据的管理不再是系统瓶颈;
3)令牌管理以字节作为锁的最小单位,也就是说除非两个请求访问的是同一文件的同一字节数据,对于数据的访问请求永远不会冲突.

问题二:分布式存储是什么?选择什么样的分布式存储更好? 分布式存储系统,是将数据分散存储在多 *** 立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。
联想超融合ThinkCloud AIO超融合云一体机是联想针对企业级用户推出的核心产品。ThinkCloud AIO超融合云一体机实现了对云管理平台、计算、网络和存储系统的无缝集成,构建了云计算基础设施即服务的一站式解决方案,为用户提供了一个高度简化的一站式基础设施云平台。这不仅使得业务部署上线从周缩短到天,而且与企业应用软件、中间件及数据库软件完全解耦,能够有效提升企业IT基础设施运维管理的效率和关键应用的性能

问题三:什么是分布式存储系统? 就是将数据分散存储在多 *** 立的设备上

问题四:什么是分布式数据存储 定义:
分布式数据库是指利用高速计算机网络将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库。分布式数据库的基本思想是将原来集中式数据库中的数据分散存储到多个通过网络连接的数据存储节点上,以获取更大的存储容量和更高的并发访问量。近年来,随着数据量的高速增长,分布式数据库技术也得到了快速的发展,传统的关系型数据库开始从集中式模型向分布式架构发展,基于关系型的分布式数据库在保留了传统数据库的数据模型和基本特征下,从集中式存储走向分布式存储,从集中式计算走向分布式计算。
特点:
1.高可扩展性:分布式数据库必须具有高可扩展性,能够动态地增添存储节点以实现存储容量的线性扩展。
2 高并发性:分布式数据库必须及时响应大规模用户的读/写请求,能对海量数据进行随机读/写。
3. 高可用性:分布式数据库必须提供容错机制,能够实现对数据的冗余备份,保证数据和服务的高度可靠性。

问题五:分布式文件系统有哪些主要的类别? 分布式存储在大数据、云计算、虚拟化场景都有勇武之地,在大部分场景还至关重要。munity.emc/message/655951 下面简要介绍*nix平台下分布式文件系统的发展历史:
1、单机文件系统
用于操作系统和应用程序的本地存储。
2、网络文件系统(简称:NAS)
基于现有以太网架构,实现不同服务器之间传统文件系统数据共享。
3、集群文件系统
在共享存储基础上,通过集群锁,实现不同服务器能够共用一个传统文件系统。

4、分布式文件系统
在传统文件系统上,通过额外模块实现数据跨服务器分布,并且自身集成raid保护功能,可以保证多台服务器同时访问、修改同一个文件系统。性能优越,扩展性很好,成本低廉。

问题六:分布式文件系统和分布式数据库有什么不同 分布式文件系统(dfs)和分布式数据库都支持存入,取出和删除。但是分布式文件系统比较暴力,可以当做key/value的存取。分布式数据库涉及精炼的数据,传统的分布式关系型数据库会定义数据元组的schema,存入取出删除的粒度较小。
分布式文件系统现在比较出名的有GFS(未开源),HDFS(Hadoop distributed file system)。分布式数据库现在出名的有Hbase,oceanbase。其中Hbase是基于HDFS,而oceanbase是自己内部实现的分布式文件系统,在此也可以说分布式数据库以分布式文件系统做基础存储。

问题七:分布式存储有哪些 华为的fusionstorage属于分布式 您好,很高兴能帮助您,首先,FusionDrive其实是一块1TB或3TB机械硬盘跟一块128GB三星830固态硬盘的组合。我们都知道,很多超极本同样采用了混合型硬盘,但是固态硬盘部分的容量大都只有8GB到32GB之间,这个区间无法作为系统盘来使用,只能作

问题八:linux下常用的分布式文件系统有哪些 这他妈不是腾讯今年的笔试题么
NFS(tldp/HOWTO/NFS-HOWTO/index)
网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS。
NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS, 用户和程序可以象访问本地文件一样访问远端系统上的文件。它的好处是:
1、本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到。
2、用户不必在每个网络上机器里面都有一个home目录。home目录可以被放在NFS服务器上并且在网络上处处可用。
3、诸如软驱、CDROM、和ZIP之类的存储设备可以在网络上面被别的机器使用。可以减少整个网络上的可移动介质设备的数量。
开发语言c/c++,可跨平台运行。
OpenAFS(openafs)
OpenAFS是一套开放源代码的分布式文件系统,允许系统之间通过局域网和广域网来分享档案和资源。OpenAFS是围绕一组叫做cell的文件服务器组织的,每个服务器的标识通常是隐藏在文件系统中,从AFS客户机登陆的用户将分辨不出他们在那个服务器上运行,因为从用户的角度上看,他们想在有识别的Unix文件系统语义的单个系统上运行。
文件系统内容通常都是跨cell复制,一便一个硬盘的失效不会损害OpenAFS客户机上的运行。OpenAFS需要高达1GB的大容量客户机缓存,以允许访问经常使用的文件。它是一个十分安全的基于kerbero的系统,它使用访问控制列表(ACL)以便可以进行细粒度的访问,这不是基于通常的Linux和Unix安全模型。开发协议IBM Public,运行在linux下。
MooseFs(derf.homelinux)
Moose File System是一个具备容错功能的网路分布式文件统,它将数据分布在网络中的不同服务器上,MooseFs通过FUSE使之看起来就 是一个Unix的文件系统。但有一点问题,它还是不能解决单点故障的问题。开发语言perl,可跨平台操作。
pNFS(pnfs)
网络文件系统(Network FileSystem,NFS)是大多数局域网(LAN)的重要的组成部分。但NFS不适用于高性能计算中苛刻的输入书橱密集型程序,至少以前是这样。NFS标准的罪行修改纳入了Parallel NFS(pNFS),它是文件共享的并行实现,将传输速率提高了几个数量级。
开发语言c/c++,运行在linu下。
googleFs
据说是一个比较不错的一个可扩展分布式文件系统,用于大型的,分布式的,对大量数据进行访问的应用。它运行于廉价的普通硬件上,但可以提供容错功能,它可以给大量的用户提供性能较高的服务。google自己开发的。

问题九:分布式存储都有哪些,并阐述其基本实现原理 神州云科 DCN NCS DFS2000(简称DFS2000)系列是面向大数据的存储系统,采用分布式架构,真正的分布式、全对称群集体系结构,将模块化存储节点与数据和存储管理软件相结合,跨节点的客户端连接负载均衡,自动平衡容量和性能,优化集群资源,3-144节点无缝扩展,容量、性能岁节点增加而线性增长,在 60 秒钟内添加一个节点以扩展性能和容量。

问题十:linux 分布式系统都有哪些? 常见的分布式文件系统有,GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等。各自适用于不同的领域。它们都不是系统级的分布式文件系统,而是应用级的分布式文件存储服务。
GFS(Google File System)
--------------------------------------
Google公司为了满足本公司需求而开发的基于Linux的专有分布式文件系统。。尽管Google公布了该系统的一些技术细节,但Google并没有将该系统的软件部分作为开源软件发布。
下面分布式文件系统都是类 GFS的产品。
HDFS
--------------------------------------
Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。 Hadoop是Apache Lucene创始人Doug Cutting开发的使用广泛的文本搜索库。它起源于Apache Nutch,后者是一个开源的网络搜索引擎,本身也是Luene项目的一部分。Aapche Hadoop架构是MapRece算法的一种开源应用,是Google开创其帝国的重要基石。
Ceph
---------------------------------------
是加州大学圣克鲁兹分校的Sage weil攻读博士时开发的分布式文件系统。并使用Ceph完成了他的论文。
说 ceph 性能最高,C++编写的代码,支持Fuse,并且没有单点故障依赖, 于是下载安装, 由于 ceph 使用 btrfs 文件系统, 而btrfs 文件系统需要 Linux 2.6.34 以上的内核才支持。
可是ceph太不成熟了,它基于的btrfs本身就不成熟,它的官方网站上也明确指出不要把ceph用在生产环境中。
Lustre
---------------------------------------
Lustre是一个大规模的、安全可靠的,具备高可用性的集群文件系统,它是由SUN公司开发和维护的。
该项目主要的目的就是开发下一代的集群文件系统,可以支持超过10000个节点,数以PB的数据量存储系统。
目前Lustre已经运用在一些领域,例如HP SFS产品等。

F. 谷歌的分布式文件系统的优缺点

Google File System 文件系统

为了满足Google迅速增长的数据处理需求,Google设计并实现了Google文件系统(GFS,Google File System)。GFS与过去的分布式文件系统拥有许多相同的目标,例如性能、可伸缩性、可靠性以及可用性。然而,它的设计还受到Google应用负载和技术环境的影响。主要体现在以下四个方面:

1. 集群中的节点失效是一种常态,而不是一种异常。由于参与运算与处理的节点数目非常庞大,通常会使用上千个节点进行共同计算,因此,每时每刻总会有节点处在失效状态。需要通过软件程序模块,监视系统的动态运行状况,侦测错误,并且将容错以及自动恢复系统集成在系统中。

2. Google系统中的文件大小与通常文件系统中的文件大小概念不一样,文件大小通常以G字节计。另外文件系统中的文件含义与通常文件不同,一个大文件可能包含大量数目的通常意义上的小文件。所以,设计预期和参数,例如I/O操作和块尺寸都要重新考虑。

3. Google文件系统中的文件读写模式和传统的文件系统不同。在Google应用(如搜索)中对大部分文件的修改,不是覆盖原有数据,而是在文件尾追加新数据。对文件的随机写是几乎不存在的。对于这类巨大文件的访问模式,客户端对数据块缓存失去了意义,追加操作成为性能优化和原子性(把一个事务看做是一个程序。它要么被完整地执行,要么完全不执行)保证的焦点。

4. 文件系统的某些具体操作不再透明,而且需要应用程序的协助完成,应用程序和文件系统API的协同设计提高了整个系统的灵活性。例如,放松了对GFS一致性模型的要求,这样不用加重应用程序的负担,就大大简化了文件系统的设计。还引入了原子性的追加操作,这样多个客户端同时进行追加的时候,就不需要额外的同步操作了。

总之,GFS是为Google应用程序本身而设计的。据称,Google已经部署了许多GFS集群。有的集群拥有超过1000个存储节点,超过300T的硬盘空间,被不同机器上的数百个客户端连续不断地频繁访问着。

阅读全文

与google分布式系统相关的资料

热点内容
微信分身图片缓存在哪个文件 浏览:544
众筹用什么网站 浏览:1
天马座的幻想版本 浏览:536
微云保存文件图片没有了 浏览:236
如何把excel表格图片导出到文件夹 浏览:387
qq三国快速升级攻略 浏览:660
js监听手机home事件 浏览:439
第2章linux的桌面管理副本 浏览:452
qq邮箱手机上登录微信账号密码错误 浏览:627
编程如何让人物重复发射子弹 浏览:853
db2查看表空间文件 浏览:607
ps文件界面设置 浏览:779
c语言12位的数据应该怎么存储 浏览:953
将ape导入iphone 浏览:107
js组合快捷键 浏览:174
linux系统盘默认挂在的文件夹 浏览:667
淘宝数据包如何操作上架 浏览:567
vb编程中输入cls是什么意思 浏览:81
linuxtime服务 浏览:184
疯狂安卓讲义第二版代码 浏览:420

友情链接