精华内容
下载资源
问答
  • NAS存储外网远程访问的方式

    千次阅读 2019-08-06 17:50:52
    使用远程访问功能,您可以随时随地访问您的 TNAS 设备、读取您 TNAS 中的文件或是对您的 TNAS 设备进行配置。远程访问 能给您的工作及生活带来极...

    使用远程访问功能,您可以随时随地访问您的 TNAS 设备、读取您 TNAS 中的文件或是对您的 TNAS 设备进行配置。远程访问 能给您的工作及生活带来极大的便利。

    铁威马 NAS 有提供三种远程访问的方式,可以选择使用。

    1. TNAS.online 推荐 )。 TNAS.online TNAS 设备专用的远程访问工具,允许用户通过互联网连接到 TNAS ,而无需设置端口转发。 TNAS.online 可以与其它 TOS 的应用程序和移动设备应用程序搭配使用。 使用简单方便,不需要额外的折腾,注册就能使用。完成设置后会产生一个 TNAS ID 号,后面的远程登陆就需要这个唯一的身份识别码。

    使用方法:

    进入 TOS 系统,选择桌面远程访问;

     

    勾选 “启用 TNAS.online 远程访问功能” 输入 TNAS ID ”,并牢记您的 TNAS ID 点击 “应用”

     

    启用成功后可以看到 ID 状态为“注册成功”,然后就可以直接进行远程访问了;

     

    使用电脑访问( Windows 电脑与 MAC 电脑均适用) 请在浏览器地址栏中输入: TNAS.online/TNAS ID

    使用移动设备访问 请在 Android iOS 移动设备上安装 TNAS mobile 应用程序 打开 TNAS mobile 应用程序,点击“ + 输入 TNAS ID ,点击 “确认”。

    需要注意的是 在本地网络使用 TNAS mobile 应用程序与 TNAS 设备连接过, TNAS mobile 应用程序将自动记录 TNAS 设备信息,在需要远程访问时, 可以在 TNAS mobile 应用程序上搜索到远程 TNAS 设备。  

    2.DDNS DDNS ( 动态域名服务 ) 是实现远程访问 TNAS 设备的一种方式。 DDNS TNAS 映射到一个域名,您可以访问该动态域名来远程访问 TNAS 提供免费 DDNS 服务的很多,根据需要选择吧,注册完后对 DDNS 界面填入相应的内容

    进入 TOS 系统,选择桌面远程访问 DDNS

    勾选 “启用 DDNS 选择 DDNS 服务器 请将注册 DDNS 服务时得到的信息填入表格中 点击 “应用”   TNAS 设置菜单显示 “ conneted ” 时,表示 DDNS 设置成功

    注意: 启用 DDNS 服务前,请从菜单列表中选择其中一个域名服务提供商,并需前往该提供商的官网注册域名 请记录域名注册时提交的信息,并填写到 DDNS 设置菜单中 在使用 DDNS 访问 TNAS 前,需要在路由器中做端口映射。请前往路由器的设置菜单,将 TNAS 设备的 IP 地址添加到 “DMZ” 选项中,否则 DDNS 访问有可能失败

    使用 DDNS 远程访问( Windows 电脑与 MAC 电脑均适用) 在电脑浏览器的地址栏中输入 DDNS 服务商为你提供的域名 + 端口号,然后回车;输入 TNAS 的用户和密码,点击“登录”。

    3. 花生壳。花生壳动态域名为 TNAS 远程访问的一种方式,客户只需激活花生壳账号,开通后会产生相应的外网访问网、 SN 码、账号等信息,便可实现远程访问 TNAS

     


    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31559187/viewspace-2652876/,如需转载,请注明出处,否则将追究法律责任。

    转载于:http://blog.itpub.net/31559187/viewspace-2652876/

    展开全文
  • 什么是数据结构?

    千次阅读 2019-06-19 20:25:39
    什么是数据结构?数据结构是什么? 数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据...

    什么是数据结构?数据结构是什么?

     

    数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。

     

    定义

    名词定义

    数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。也就是说,数组结构指的是数据集合及数据之间关系的集合,是两个集合。

    记为:Data_Structure=(D,R)

    其中D是数据元素的集合,R是该集合中所有元素之间的关系的有限集合。 

    数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。

     

    其它定义

    Sartaj Sahni在他的《数据结构、算法与应用》一书中称:“数据结构是数据对象,以及存在于该对象的实例和组成实 例的数据元素之间的各种联系。这些联系可以通过定义相关的函数来给出。”他将数据对象(data object)定义为“一个数据对象是实例或值的集合”。
    Clifford A.Shaffer在《数据结构与算法分析》一书中的定义是:“数据结构是ADT(抽象数据类型Abstract Data Type) 的物理实现。”
    Robert L.Kruse在《数据结构与程序设计》一书中,将一个数据结构的设计过程分成抽象层、数据结构层和实现层。其中,抽象层是指抽象数据类型层,它讨论数据的逻辑结构及其运算,数据结构层和实现层讨论一个数据结构的表示和在计算机内的存储细节以及运算的实现。
    数据结构具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构。

     

    研究对象

    一、数据的逻辑结构:指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。逻辑结构包括:
    集合
    数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系;
    2.线性结构
    数据结构中的元素存在一对一的相互关系;
    3.树形结构
    数据结构中的元素存在一对多的相互关系;
    4.图形结构
    数据结构中的元素存在多对多的相互关系。
    二、数据的物理结构:指数据的逻辑结构在计算机存储空间的存放形式。 
    数据的物理结构是数据结构在计算机中的表示(又称映像),它包括数据元素的机内表示和关系的机内表示。由于具体实现的方法有顺序、链接、索引、散列等多种,所以,一种数据结构可表示成一种或多种存储结构。
    数据元素的机内表示(映像方法): 用二进制位(bit)的位串表示数据元素。通常称这种位串为节点(node)。当数据元素有若干个数据项组成时,位串中与个数据项对应的子位串称为数据域(data field)。因此,节点是数据元素的机内表示(或机内映像)。
    关系的机内表示(映像方法):数据元素之间的关系的机内表示可以分为顺序映像和非顺序映像,常用两种存储结构:顺序存储结构和链式存储结构。顺序映像借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系。非顺序映像借助指示元素存储位置的指针(pointer)来表示数据元素之间的逻辑关系。
    三、数据结构的运算。

     

    重要意义

              一般认为,一个数据结构是由数据元素依据某种逻辑联系组织起来的。对数据元素间逻辑关系的描述称为数据的逻辑结构;数据必须在计算机内存储,数据的存储结构是数据结构的实现形式,是其在计算机内的表示;此外讨论一个数据结构必须同时讨论在该类数据上执行的运算才有意义。一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率。

             在许多类型的程序的设计中,数据结构的选择是一个基本的设计考虑因素。许多大型系统的构造经验表明,系统实现的困难程度和系统构造的质量都严重的依赖于是否选择了最优的数据结构。许多时候,确定了数据结构后,算法就容易得到了。有些时候事情也会反过来,我们根据特定算法来选择数据结构与之适应。不论哪种情况,选择合适的数据结构都是非常重要的。

             选择了数据结构,算法也随之确定,是数据而不是算法是系统构造的关键因素。这种洞见导致了许多种软件设计方法和程序设计语言的出现,面向对象的程序设计语言就是其中之一。

     

    研究内容

             在计算机科学中,数据结构是一门研究非数值计算的程序设计问题中计算机的操作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。

             “数据结构”作为一门独立的课程在国外是从1968年才开始设立的。 1968年美国唐纳德·克努特(Donald Ervin Knuth)教授开创了数据结构的最初体系,他所著的《计算机程序设计艺术》第一卷《基本算法》是第一本较系统地阐述数据的逻辑结构和存储结构及其操作的著作。“数据结构”在计算机科学中是一门综合性的专业基础课,数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。

             计算机科学是一门研究用计算机进行信息表示和处理的科学。这里面涉及到两个问题:信息的表示,信息的处理 。

             而信息的表示和组织又直接关系到处理信息的程序的效率。随着计算机的普及,信息量的增加,信息范围的拓宽,使许多系统程序和应用程序的规模很大,结构又相当复杂。因此,为了编写出一个“好”的程序,必须分析待处理的对象的特征及各对象之间存在的关系,这就是数据结构这门课所要研究的问题。众所周知,计算机的程序是对信息进行加工处理。在大多数情况下,这些信息并不是没有组织,信息(数据)之间往往具有重要的结构关系,这就是数据结构的内容。数据的结构,直接影响算法的选择和效率。

             计算机解决一个具体问题时,大致需要经过下列几个步骤:首先要从具体问题中抽象出一个适当的数学模型,然后设计一个解此数学模型的算法(Algorithm),最后编出程序、进行测试、调整直至得到最终解答。

             寻求数学模型的实质是分析问题,从中提取操作的对象,并找出这些操作对象之间含有的关系,然后用数学的语言加以描述。当人们用计算机处理数值计算问题时,所用的数学模型是用数学方程描述。所涉及的运算对象一般是简单的整形、实型和逻辑型数据,因此程序设计者的主要精力集中于程序设计技巧上,而不是数据的存储和组织上。然而,计算机应用的更多领域是“非数值型计算问题”,它们的数学模型无法用数学方程描述,而是用数据结构描述,解决此类问题的关键是设计出合适的数据结构,描述非数值型问题的数学模型是用线性表、树、图等结构来描述的。

             计算机算法与数据的结构密切相关,算法无不依附于具体的数据结构,数据结构直接关系到算法的选择和效率。运算是由计算机来完成,这就要设计相应的插入、删除和修改的算法 。也就是说,数据结构还需要给出每种结构类型所定义的各种运算的算法。

             数据是信息的载体,是可以被计算机识别存储并加工处理的描述客观事物的信息符号的总称。所有能被输入计算机中,且能被计算机处理的符号的集合,它是计算机程序加工处理的对象。客观事物包括数值、字符、声音、图形、图像等,它们本身并不是数据,只有通过编码变成能被计算机识别、存储和处理的符号形式后才是数据。

             数据元素是数据的基本单位,在计算机程序中通常作为一个整体考虑。一个数据元素由若干个数据项组成。数据项是数据结构中讨论的最小单位。有两类数据元素:若数据元素可再分,则每一个独立的处理单元就是数据项,数据元素是数据项的集合;若数据元素不可再分,则数据元素和数据项是同一概念,如:整数"5",字符 "N" 等。例如描述一个学生的信息的数据元素可由下列6个数据项组成。其中的出生日期又可以由三个数据项:"年"、"月"和"日"组成,则称"出生日期"为组合项,而其它不可分割的数据项为原子项。

             关键字指的是能识别一个或多个数据元素的数据项。若能起唯一识别作用,则称之为 "主" 关键字,否则称之为 "次" 关键字。

             数据对象是性质相同的数据元素的集合,是数据的一个子集。数据对象可以是有限的,也可以是无限的。

             数据处理是指对数据进行查找、插入、删除、合并、排序、统计以及简单计算等的操作过程。在早期,计算机主要用于科学和工程计算,进入八十年代以后,计算机主要用于数据处理。据有关统计资料表明,计算机用于数据处理的时间比例达到80%以上,随着时间的推移和计算机应用的进一步普及,计算机用于数据处理的时间比例必将进一步增大。

     

    结构分类

             数据结构是指同一数据元素类中各数据元素之间存在的关系。数据结构分别为逻辑结构、存储结构(物理结构)和数据的运算。数据的逻辑结构是从具体问题抽象出来的数学模型,是描述数据元素及其关系的数学特性的,有时就把逻辑结构简称为数据结构。逻辑结构是在计算机存储中的映像,形式地定义为(K,R)(或(D,S)),其中,K是数据元素的有限集,R是K上的关系的有限集。

             根据数据元素间关系的不同特性,通常有下列四类基本的结构: ⑴集合结构。该结构的数据元素间的关系是“属于同一个集合”。 ⑵线性结构。该结构的数据元素之间存在着一对一的关系。 ⑶树型结构。该结构的数据元素之间存在着一对多的关系。 ⑷图形结构。该结构的数据元素之间存在着多对多的关系,也称网状结构。 从上面所介绍的数据结构的概念中可以知道,一个数据结构有两个要素。一个是数据元素的集合,另一个是关系的集合。在形式上,数据结构通常可以采用一个二元组来表示。

             数据结构的形式定义为:数据结构是一个二元组 :Data_Structure=(D,R),其中,D是数据元素的有限集,R是D上关系的有限集。线性结构的特点是数据元素之间是一种线性关系,数据元素“一个接一个的排列”。在一个线性表中数据元素的类型是相同的,或者说线性表是由同一类型的数据元素构成的线性结构。在实际问题中线性表的例子是很多的,如学生情况信息表是一个线性表:表中数据元素的类型为学生类型; 一个字符串也是一个线性表:表中数据元素的类型为字符型,等等。

             线性表是最简单、最基本、也是最常用的一种线性结构。 线性表是具有相同数据类型的n(n>=0)个数据元素的有限序列,通常记为: (a1,a2,… ai-1,ai,ai+1,…an) ,其中n为表长, n=0 时称为空表。 它有两种存储方法:顺序存储和链式存储,它的主要基本操作是插入、删除和检索等。

             数据结构在计算机中的表示(映像)称为数据的物理(存储)结构。它包括数据元素的表示和关系的表示。数据元素之间的关系有两种不同的表示方法:顺序映象和非顺序映象,并由此得到两种不同的存储结构:顺序存储结构和链式存储结构。

             顺序存储方法:它是把逻辑上相邻的结点存储在物理位置相邻的存储单元里,结点间的逻辑关系由存储单元的邻接关系来体现,由此得到的存储表示称为顺序存储结构。顺序存储结构是一种最基本的存储表示方法,通常借助于程序设计语言中的数组来实现。

             链接存储方法:它不要求逻辑上相邻的结点在物理位置上亦相邻,结点间的逻辑关系是由附加的指针字段表示的。由此得到的存储表示称为链式存储结构,链式存储结构通常借助于程序设计语言中的指针类型来实现

             索引存储方法:除建立存储结点信息外,还建立附加的索引表来标识结点的地址。

             散列存储方法:就是根据结点的关键字直接计算出该结点的存储地址。

             数据结构中,逻辑上(逻辑结构:数据元素之间的逻辑关系)可以把数据结构分成线性结构和非线性结构。线性结构的顺序存储结构是一种顺序存取的存储结构,线性表的链式存储结构是一种随机存取的存储结构。线性表若采用链式存储表示时所有结点之间的存储单元地址可连续可不连续。逻辑结构与数据元素本身的形式、内容、相对位置、所含结点个数都无关。

     

    结构算法

             算法的设计取决于数据(逻辑)结构,而算法的实现依赖于采用的存储结构。数据的存储结构实质上是它的逻辑结构在计算机存储器中的实现,为了全面的反映一个数据的逻辑结构,它在存储器中的映象包括两方面内容,即数据元素之间的信息和数据元素之间的关系。不同数据结构有其相应的若干运算。数据的运算是在数据的逻辑结构上定义的操作算法,如检索、插入、删除、更新和排序等。

             数据的运算是数据结构的一个重要方面,讨论任一种数据结构时都离不开对该结构上的数据运算及其实现算法的讨论。
    数据结构不同于数据类型,也不同于数据对象,它不仅要描述数据类型的数据对象,而且要描述数据对象各元素之间的相互关系。

             数据类型是一个值的集合和定义在这个值集上的一组操作的总称。数据类型可分为两类:原子类型、结构类型。一方面,在程序设计语言中,每一个数据都属于某种数据类型。类型明显或隐含地规定了数据的取值范围、存储方式以及允许进行的运算。可以认为,数据类型是在程序设计中已经实现了的数据结构。另一方面,在程序设计过程中,当需要引入某种新的数据结构时,总是借助编程语言所提供的数据类型来描述数据的存储结构。

             计算机中表示数据的最小单位是二进制数的一位,叫做位。我们用一个由若干位组合起来形成的一个位串表示一个数据元素,通常称这个位串为元素或结点。当数据元素由若干数据项组成时,位串中对应于各个数据项的子位串称为数据域。元素或结点可看成是数据元素在计算机中的映象。

             一个软件系统框架应建立在数据之上,而不是建立在操作之上。一个含抽象数据类型的软件模块应包含定义、表示、实现三个部分。
    对每一个数据结构而言,必定存在与它密切相关的一组操作。若操作的种类和数目不同,即使逻辑结构相同,数据结构能起的作用也不同。

             不同的数据结构其操作集不同,但下列操作必不可缺:
             1,结构的生成;
             2.结构的销毁;
             3,在结构中查找满足规定条件的数据元素;
             4,在结构中插入新的数据元素;
             5,删除结构中已经存在的数据元素;
             6,遍历。

             抽象数据类型:一个数学模型以及定义在该模型上的一组操作。抽象数据类型实际上就是对该数据结构的定义。因为它定义了一个数据的逻辑结构以及在此结构上的一组算法。抽象数据类型可用以下三元组表示:(D,S,P)。D是数据对象,S是D上的关系集,P是对D的基本操作集。ADT的定义为:

             ADT 抽象数据类型名:{数据对象:(数据元素集合),数据关系:(数据关系二元组结合),基本操作:(操作函数的罗列)}; ADT抽象数据类型名;抽象数据类型有两个重要特性:

             数据抽象

             用ADT描述程序处理的实体时,强调的是其本质的特征、其所能完成的功能以及它和外部用户的接口(即外界使用它的方法)。

             数据封装

             将实体的外部特性和其内部实现细节分离,并且对外部用户隐藏其内部实现细节。

             数据(Data)是信息的载体,它能够被计算机识别、存储和加工处理。它是计算机程序加工的原料,应用程序处理各种各样的数据。计算机科学中,所谓数据就是计算机加工处理的对象,它可以是数值数据,也可以是非数值数据。数值数据是一些整数、实数或复数,主要用于工程计算、科学计算和商务处理等;非数值数据包括字符、文字、图形、图像、语音等。数据元素(Data Element)是数据的基本单位。在不同的条件下,数据元素又可称为元素、结点、顶点、记录等。例如,学生信息检索系统中学生信息表中的一个记录等,都被称为一个数据元素。
    有时,一个数据元素可由若干个数据项(Data Item)组成,例如,学籍管理系统中学生信息表的每一个数据元素就是一个学生记录。它包括学生的学号、姓名、性别、籍贯、出生年月、成绩等数据项。这些数据项可以分为两种:一种叫做初等项,如学生的性别、籍贯等,这些数据项是在数据处理时不能再分割的最小单位;另一种叫做组合项,如学生的成绩,它可以再划分为数学、物理、化学等更小的项。通常,在解决实际应用问题时是把每个学生记录当作一个基本单位进行访问和处理的。

             数据对象(Data Object)或数据元素类(Data Element Class)是具有相同性质的数据元素的集合。在某个具体问题中,数据元素都具有相同的性质(元素值不一定相等),属于同一数据对象(数据元素类),数据元素是数据元素类的一个实例。例如,在交通咨询系统的交通网中,所有的顶点是一个数据元素类,顶点A和顶点B各自代表一个城市,是该数据元素类中的两个实例,其数据元素的值分别为A和B。 数据结构(Data Structure)是指互相之间存在着一种或多种关系的数据元素的集合。在任何问题中,数据元素之间都不会是孤立的,在它们之间都存在着这样或那样的关系,这种数据元素之间的关系称为结构。

     

    常用结构

    数组
             在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中, 数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。


             是只能在某一端插入和删除的特殊线性表。它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。

    队列
             一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列是按照“先进先出”或“后进后出”的原则组织数据的。队列中没有元素时,称为空队列。

    链表
             是一种物理存储单元上非连续、非顺序的存储结构,它既可以表示线性结构,也可以用于表示非线性结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。


             是包含n(n>0)个结点的有穷集合K,且在K中定义了一个关系N,N满足 以下条件:
             (1)有且仅有一个结点 K0,他对于关系N来说没有前驱,称K0为树的根结点。简称为根(root)。  
             (2)除K0外,K中的每个结点,对于关系N来说有且仅有一个前驱。
             (3)K中各结点,对关系N来说可以有m个后继(m>=0)。


             图是由结点的有穷集合V和边的集合E组成。其中,为了与树形结构加以区别,在图结构中常常将结点称为顶点,边是顶点的有序偶对,若两个顶点之间存在一条边,就表示这两个顶点具有相邻关系。


             在计算机科学中,堆是一种特殊的树形数据结构,每个结点都有一个值。通常我们所说的堆的数据结构,是指二叉堆。堆的特点是根结点的值最小(或最大),且根结点的两个子树也是一个堆。

    散列表
             若结构中存在关键字和K相等的记录,则必定在f(K)的存储位置上。由此,不需比较便可直接取得所查记录。称这个对应关系f为散列函数(Hash function),按这个思想建立的表为散列表。

     

    简而言之,数据结构说的是:计算机组织数据和存储数据的方式。

    展开全文
  • 对象存储什么?看过就明白了

    千次阅读 2019-12-12 10:52:15
    对象存储什么 对象存储,官方的名词解释是:对象存储是基于对象的存储,是用来描述解决和处理离散单元的方法的通用术语,这些离散单元被称作对象。 说实话看完这段解释,我的内心是这样的: 这时候如果再继续介绍...

    对象存储是什么
    对象存储,官方的名词解释是:对象存储是基于对象的存储,是用来描述解决和处理离散单元的方法的通用术语,这些离散单元被称作对象。
    说实话看完这段解释,我的内心是这样的:

    在这里插入图片描述

    这时候如果再继续介绍:
    对象存储提供了基于分布式系统之上的对象形式的数据存储服务,并且可以通过 RESTful API 数据读写接口及丰富的SDK接口进行数据的访问……
    对不起,我已经想关掉这篇文章了。
    我们可以把它理解为商场的存包服务,顾客将包(数据)交给服务员(API接口),服务员给顾客一个凭证(对象地址URL),顾客想要取包时,只需提供凭证,不需要知道自己的包到底是以什么形式存储在哪里,省时省心省力。

    对象存储有什么特点

    在这里插入图片描述

    · 非结构存储:对象存储适用于存储非结构化的数据,我们日常生活中见到的文档、文本、图片、XML, HTML、各类报表、音视频信息等等都是非结构化数据。据统计,自社交网络发展以来,非结构化数据占总数据量的75%。
    · 多节点:以腾讯云对象存储 COS 为例,COS的存储机房遍布全球,简单来说,不管你身处何处,都可以选择将数据存储在就近的机房,加快数据的传输访问。
    · 扁平结构:对象存储中没有文件夹的概念,所有数据均存储在同一个层级中,如上述介绍提到,对于存在对象存储中的数据,你不需要知道他存在哪里,只需要通过“凭证”就可以快速获取数据。
    · 弹性扩容:对象存储的容量是EB级以上的,EB有多大?1EB ≈ 1*10^9 GB。这个容量还在不断的上升,简单来说,不管你有多少数据,请放心的存,容量管够!

    对象存储有什么用

    前面提到对象存储适用于存储图片视频等非结构化数据,对象存储可以让你方便的将这些数据使用起来!
    举个例子:某新成立教育机构,希望让自己的学员观看教学视频,使用对象存储前后对比:

    在这里插入图片描述

    传统方式:

    1. 教学视频存在各个讲师的电脑中,每次讲课时用U盘拷贝至课堂播放;
    2. 教学视频存在某个网盘中,每次讲课前需要下载,或者需要课堂电脑装有网盘应用,在线预览播放;
    3. 机构自己搭建了一套服务器,开发了一个教育应用,将视频存在服务器中,在应用中播放供学员观看;
      对象存储:
    4. 将视频存在对象存储中,得到对应的对象地址(简单理解就是一条链接),在课堂上,打开浏览器,输入对象地址,在线播放;
    5. 机构自己开发了一个教育应用,将视频存在对象存储中,得到对应的对象地址,将地址放在应用中,通过应用在线播放;

    杉岩对象存储产品MOS

    针对海量非结构化数据存储的最优化解决方案,采用去中心化、分布式技术架构,支持百亿级文件及EB级容量存储,
    具备高效的数据检索、智能化标签和分析能力,轻松应对大数据和云时代的存储挑战,为企业发展提供智能决策。

    政府、金融、医疗、交通等行业随着审计、监管等方面的要求日益严格,行业相关业务系统所产生的视频、音频、图片、文档等海量非结构化数据对存储空间提出更大的挑战,SandStone MOS可以提供无限扩展的存储空间,同时为数据价值的提取分析提供更多智能处理特性。

    展开全文
  • MySQL存储引擎是什么?有什么用?

    千次阅读 2020-05-18 18:33:49
    本文介绍了什么是存储引擎,各类存储引擎说明,并且对功能支持以列表的方式显示,最后说明了如何修改默认的存储引擎。

    存储引擎字面如何理解?

    其实很多名词,把他们拆开的意思组合起来,就可以大致明白组合成的名词是什么意思。就拿存储引擎来说,存储在计算机中的意思是将数据保存到某种介质中,并且保证数据的正常访问。而引擎的是指发动机的核心。

    组合起来的意思大致是保存数据的核心技术,也就是说,存储引擎是服务于存储服务的,通过存储引擎将数据保存。就跟计算机如何将数据保存到磁盘中一样,在数据库中,存储引擎的意思就是通过何种引擎将数据存储在磁盘中。

    数据库存储引擎

    在数据库中,存储引擎是数据库中的底层套件,在创建表中使用,指定通过何种引擎存储数据,MySQL数据库默认使用的存储引擎为InnoDB。

    不同的存储引擎有不同的存储机制,并且支持的功能也不相同。对于存储引擎的选择,基本上都是根据需求来定的。

    以下为引用,地址:MySQL8.0版本参考手册

    MySQL 8.0支持的存储引擎

    InnoDB:MySQL 8.0中的默认存储引擎。 InnoDB是用于MySQL的事务安全(兼容ACID)的存储引擎,具有提交,回滚和崩溃恢复功能以保护用户数据。 InnoDB行级锁定(无需升级为更粗粒度的锁定)和Oracle风格的一致非锁定读取可提高多用户并发性和性能。InnoDB将用户数据存储在聚集索引中,以减少基于主键的常见查询的I / O。为了保持数据完整性, InnoDB还支持FOREIGN KEY引用完整性约束。

    MyISAM:这些表占用的空间很小。 表级锁定 限制了读/写工作负载中的性能,因此它通常用于Web和数据仓库配置中的只读或只读工作负载中。

    Memory:将所有数据存储在RAM中,以便在需要快速查找非关键数据的环境中进行快速访问。该发动机以前称为HEAP发动机。它的用例正在减少;InnoDB借助其缓冲池内存区域,它提供了一种通用且持久的方式来将大多数或所有数据保留在内存中,并 NDBCLUSTER为大型分布式数据集提供了快速的键值查找。

    CSV:其表实际上是带有逗号分隔值的文本文件。CSV表允许您以CSV格式导入或转储数据,以便与读取和写入相同格式的脚本和应用程序交换数据。由于CSV表未建立索引,因此通常InnoDB在正常操作期间将数据保留在表中,并且仅在导入或导出阶段使用CSV表。

    Archive:这些紧凑的,未索引的表旨在用于存储和检索大量很少参考的历史,归档或安全审核信息。

    Blackhole:Blackhole存储引擎接受但不存储数据,类似于Unix /dev/null设备。查询总是返回一个空集。这些表可用于将DML语句发送到从属服务器的复制配置中,但是主服务器不保留其自己的数据副本。

    NDB(也称为 NDBCLUSTER):此集群数据库引擎特别适合于需要尽可能高的正常运行时间和可用性的应用程序。

    Merge:使MySQL DBA或开发人员可以在逻辑上对一系列相同的MyISAM表进行分组并将它们作为一个对象引用。适用于VLDB环境,例如数据仓库。

    Federated:提供了链接单独的MySQL服务器以从许多物理服务器创建一个逻辑数据库的能力。非常适合于分布式或数据集市环境。

    Example:此引擎作为MySQL源代码中的示例,说明了如何开始编写新的存储引擎。它主要是开发人员感兴趣的。存储引擎是什么都不做的 “ 存根 ”。您可以使用此引擎创建表,但是不能在其中存储数据或从中检索数据。

    若不对存储引擎进行限制,那么在创建表的时候可以指定任意存储引擎。

    存储引擎功能表

    功能MyISAMMemoryInnoDBArchiveNDB
    B树索引
    备份/时间点恢复
    集群数据库支持
    聚集索引
    压缩数据
    资料快取
    加密数据
    外键支持
    全文搜索索引
    地理空间数据类型支持
    地理空间索引支持
    哈希索引
    索引缓存
    锁定粒度
    MVCC
    复制支持限量
    储存限制256TB内存64TB384EB
    T树索引
    交易次数
    更新数据字典的统计信息

    设置存储引擎

    在创建表时,通过ENGINE在CREATE TABLE语句中添加表时来指定要使用的存储引擎。

    mysql> create table test(id int)engine=myisam;
    mysql> show create table test\G
    *************************** 1. row ***************************
           Table: test
    Create Table: CREATE TABLE `test` (
      `id` int(11) DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8
    

    若是省略ENGINE选项,将使用默认存储引擎。

    mysql> create table test2(id int);
    mysql> show create table test2\G
    *************************** 1. row ***************************
           Table: test2
    Create Table: CREATE TABLE `test2` (
      `id` int(11) DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8
    

    方式1
    通过default-storage-engine可以在my.cnf配置文件中指定默认存储引擎。

    例如:将默认存储引擎设为myisam

    [root@linux ~]# echo "default-storage-engine=myisam" >> /etc/my.cnf
    

    接下来在MySQL中创建表,不指定存储引擎,默认将是myisam。

    mysql> create table test4(id int);
    mysql> show create table test4\G
    *************************** 1. row ***************************
           Table: test4
    Create Table: CREATE TABLE `test4` (
      `id` int(11) DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8
    

    方式2
    在数据库中,也可使用SET default_storage_engine=存储引擎将默认存储引擎更改,但此方式为临时更改,重新进入数据库中需要重新指定默认的存储引擎。

    例如:将默认存储引擎改为InnoDB。

    在之前修改my.cnf文件中,已经将默认的存储引擎改为myisam。

    mysql> show create table test6;
    mysql> show create table test6\G
    *************************** 1. row ***************************
           Table: test6
    Create Table: CREATE TABLE `test6` (
      `id` int(11) DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8
    

    接下来在数据库中修改默认存储引擎。

    mysql> set default_storage_engine=innodb;
    mysql> create table test7(id int);
    mysql> show create table test7\G
    *************************** 1. row ***************************
           Table: test7
    Create Table: CREATE TABLE `test7` (
      `id` int(11) DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8
    
    展开全文
  • 存储字长是什么

    万次阅读 2019-09-22 11:08:42
    早期计算机的存储字长一般和机器的指令字长与数据字长相等,故访问一次主存便可取一条指令或一个数据。随着计算机的应用范围的不断扩大,解题精度的不断提高,往往要求指令字长是可变的,数据字长也要求可变。为了...
  • Android SAF存储访问框架

    千次阅读 2019-11-16 18:03:27
    Android SAF存储访问框架 SAF存储访问框架 首先介绍下SAF存储访问框架:在Android 4.4中引入的一套存储访问框架(Storage Access Framework),借助 SAF,用户可轻松在其所有首选文档存储提供程序中浏览并打开文档、...
  • 什么是存储过程

    千次阅读 热门讨论 2019-06-30 15:57:26
    在进行机房重构的下机过程时,看到好多人都用到了存储过程这一方法,不过当时自己不是很明白这是用来干什么的,在什么时候可以用。并且在网上看到很多去公司面试的程序员都有这样的一个经历:一些去大公司面试的...
  • 什么是存储过程?用什么来调用?

    万次阅读 2018-08-20 23:34:24
    答:存储过程是一个预编译的SQL语句,比如一些场景的sql比较复杂,并且需要经常使用或者多次使用的。存储过程的优点是说只需创建一次编译一次,以后在该程序中就可以多次直接调用。如果一个sql是经常需要操作的,...
  • 线性表的顺序存储什么是随机存取? 这个就要相比较来理解,拿单项链式存储来进行对比,如果我现在想要在已经存储的“表”中拿出“最后一个”数,那么线性表直接可以通过数组a(n-1)来获取,但链式需要靠不断的指针...
  • 序列化 (Serialization)是将对象的状态信息...序列化使其他代码可以查看或修改,那些不序列化便无法访问的对象实例数据。确切地说,代码执行序列化需要特殊的权限:即指定了 SerializationFormatter 标志的 Securi...
  • 什么是对象存储?OSD架构及原理

    万次阅读 2016-04-07 23:02:05
    什么是对象存储(OSD)? 存储局域网(SAN)和网络附加存储(NAS)是我们比较熟悉的两种主流网络存储架构,而对象存储(Object-based Storage)是一种新的网络存储架构,基于对象存储技术的设备就是对象存储设备...
  • 什么是存储

    千次阅读 2012-03-26 16:50:48
    如今计算机已经渗透到企业运作的各个角落,企业依靠所存放的这些业务数据进行决策,因此企业如何存放数据成为企业信息系统的重中之重,这也掀起了如今的存储热潮,那么到底什么是存储存储的含义究竟是什么?  ...
  • 今天给大家介绍如何在Linux上面搭建IP SAN iscsi存储系统,应且在服务器客户端访问共享存储 首先介绍一下iscsi,iscsi用于将scsi数据块映射为以太网数据包,基于tcp/ip协议来传输数据包,分为iscsi target和iscsi ...
  • 什么是分布式数据存储

    万次阅读 2016-12-14 12:02:05
    传统的集中式存储对搭建和管理的要求较高。由于硬件设备的集中存放,机房的空间、散热和承重等都有严格的要求; 存储设备要求性能较好,对主干网络的带宽也有较高的要求。 而在信息爆炸的时代,人们可以获取的数据呈...
  • 同城冗余ZRS:将您的数据冗余存储在同一个区域的多个可用区,可支持单个可用区(机房)整体故障时(如断电、火灾等),仍维持数据不丢失,可正常访问。 本地冗余LRS:将您的数据冗余存储在同一个可用区的不
  • mysql存储引擎

    万次阅读 多人点赞 2019-07-31 19:28:44
    数据库存储引擎 数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还...
  • FASS分布式全闪存储技术白皮书

    千次阅读 2019-12-17 14:26:18
    传统存储的软硬件架构,都已经不再适合承载高速闪存介质,它们从根本上制约了新型存储介质的生产力。全闪存阵列已经逐步向全NVMe硬件转移,然而其扩展性与灵活性,在云计算时代始终是最大的瓶颈。分布式全闪存储系统...
  • 单机存储系统

    千次阅读 2017-06-05 14:11:59
    单机存储引擎就是哈希表、B树等数据结构在机械磁盘和SSD等持久化介质上的实现。 单机存储系统是单机存储引擎的一种封装,对外提供文件、键值、表格或者关系模型,单机存储系统的理论来源于关系数据库。 哈希存储引擎...
  • 边缘存储

    千次阅读 2019-11-27 13:59:17
    什么是边缘存储 边缘存储(Edge Storage)就是把数据直接存储在数据采集点,而不需要把采集的数据通过网络(即时)传输到存储的中心服务器(或云存储)的数据存储方式。这种存储在端(边缘)的存储方式也就是分布式...
  • 彻底理解android中的内部存储与外部存储

    万次阅读 多人点赞 2015-12-12 10:05:34
    我们先来考虑这样一个问题:打开手机设置,选择应用管理,...在android开发中我们常常听到这样几个概念,内存,内部存储,外部存储,很多人常常将这三个东西搞混,那么我们今天就先来详细说说这三个东西是怎么回事?内
  • 目录 从使用直观感受上来看: 块级: 文件级: 对象级: 技术角度: ...生活中常见的块存储设备(也叫“块设备”)比如,...从使用上来说,块级的存储如果是第一次使用,那么必须需要进行一次格式化的操作(其实不...
  • AWS概述

    千次阅读 2018-12-05 21:47:33
    什么是AWS AWS全称为Amazon Web Services,是亚马逊公司的云计算平台提供的一系列服务 AWS面向用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务 AWS已经为全球190个国家、地区内成百上千家企业...
  • 配置Nginx访问OSS对象存储静态资源

    万次阅读 2018-11-13 13:44:29
    它功能强大并且还是开源软件,支持正则,这也使得它的配置可以十分多样,OSS是阿里云的一种云存储服务,价格便宜,并且不需要考虑性能,支持各种接口,按需收费,本文章将分享一下用Nginx去访问OSS对象存储上的静态资源。...
  • 低频存储,归档存储,大家慎用

    千次阅读 2018-08-15 14:33:16
    阿里在oss中有个生命周期的设置,把历史不经常访问的数据可以存入低频存储或者归档存储,看似一切都很美好,但是,当你执行之后,会让你欲哭无泪,特别是存储中数据量非常大的时候 1,数据存入归档存储,低频存储,...
  • Java集合面试题

    万次阅读 多人点赞 2019-06-25 14:46:19
    Java集合面试题 Java 集合框架的基础接口有哪些? Collection ,为集合层级的根接口。一个集合代表一组对象,这些对象即为它的元素。Java 平台不提供这个...你可以通过它的索引来访问任何元素。List 更像长度动态...
  • HDD是什么意思

    千次阅读 2021-05-29 09:46:49
    硬盘驱动器(HDD)是包含高速旋转的磁盘或盘片的非易失性计算机...磁盘以加速的速度移动,允许立即访问数据。大多数硬盘使用串行 ATA(SATA)或串行连接技术在高速接口上运行。当盘片旋转时,具有读/写头的臂延伸穿过
  • 分布式存储基础知识

    万次阅读 2018-11-11 20:47:42
    分布式存储的数据类型有以下三类: 非结构化的数据:主要是数据之间的关联系不大,像文本图片之类的数据 结构化的数据:数据之间关联系很大,关系型数据库这种,可以用表进行表示的 半结构化的数据:介于上述两种...
  • 对象存储(云存储)概述

    万次阅读 多人点赞 2019-03-08 17:54:09
    文章目录三种存储形态1、块存储2、文件存储3、对象存储对象存储对象存储需求对象存储含义对象存储与传统网络存储的区别扩展知识:NAS与SAN概述1、NAS(Network Attached Storage)优点局限2、SAN(Storage Area ...
  • 海量数据的存储访问解决方案

    万次阅读 2016-05-24 16:34:28
    随着互联网应用的广泛普及,海量数据的存储访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 280,849
精华内容 112,339
关键字:

存储访问是什么意思