具体实施方式
说明本发明的实施方式。首先说明本申请涉及的信息收容形式。此外,以下说明的信息收容形式不过是为了使下述实施例易于理解,当然不是用于限制本发明。
信息收容形式是指,记录任意的数据时的记录介质(例如磁盘(HDD)、半导体存储器、SSD(固态硬盘)等)、记录格式、记录步骤、及软件的至少一个或组合。作为软件包括文件系统、数据库、检索引擎等。不同的信息收容形式是指这些中的至少一个不同。例如,用数据库保持数据时、及用文件保持数据时,信息收容形式彼此不同。
以下以面向办公室的文档文件为例进行说明。作为保持该文档文件的数据的方法,例如包括以下形式,但不用于限定本发明。
(A1)以MicrosoftWord(注册商标)等为代表的处理文件的面向应用程序的二进制形式文件。
(A2)提取了文件内的文字串的文本文件。
(A3)同时保持构造信息的html形式、xml形式的文本文件。
(A4)数据库的记录(例如将各元信息收容到数据库的各字段中,将文件中的数据收容到BLOB(二进制大对象)形式的字段中)。
(A5)检索引擎的索引。
例如以单词等分割文件内的文字串,对文件内的单词的出现次数、出现位置以检索引擎的倒排文件形式收容。
这些均是信息收容形式的一例,将把和同一信息同等或任意的一部分以和原来的形式不同的形式收容这一动作,称为“信息收容形式的变换”。并且,其他例子包括C语言的构造体这样的、由多个数据组合构成的数据。
(其中,int表示整数型,string表示文字串)
作为将上述多个数据作为一个数据保持的方法,存在几种。例如包括以下形式,但不用于限定本发明。
(B1)以提前确定的格式收容数值(例如记录了内容为12345362310name813的文件)。
(B2)以提前排列的状态的格式收容第1个排列(例如记录了内容为23106543321name813的文件)。
(B3)同时记录将第1个排列合计的数值(例如57,12345362310name813)。
(B4)作为数据库的记录来记录。例如存在Parameter1~5个字段,分配到各个中,整体作为一个记录来记录。或者,例如将Parameter1的排列要素分别作为其他记录保持,其他字节和上述一样收容,从而整体上作为9个记录来记录。
(B5)仅部分数据以其他形式记录。例如仅Parameter2收容到数据库中,其他数据以上述文件形式收容。
如上所述,之所以存在各种变化(变形例),是因为数据的利用方法不同而存在适当的保存方式。
例如,对第1个排列进行存取时,如果需要合算值的情况较多,则和第1个(B1)的形式相比,第3个(B3)的形式较有效率。
并且,参照多个数据,在对Parameter3中具有比5大、Parameter4中具有比2小的值的数据进行处理时,作为数据库的记录来记录较为有效。
并且,对Parameter2中的文字串满足条件的数据的进行处理时,存在以下形式较为适当的情况:仅将Parameter2保持到数据库中,与其他数据的收容地同时记录。
因此,在本发明中,在下述实施方式(第2实施方式)中,将Parameter2收容到信息收容形式记录部(22),将其以外的数据收容到信息存储部(6)。
本发明提供一种如下有效的系统:对各种方法混合的数据保持形式,根据应用程序中的数据的利用方式,变换为适当的形式。如在系统设计时可知数据的利用方法,则较容易提供一种高效的系统。当系统设定时数据的利用方法不明,或利用方式和系统设计时相比改变时,则信息收容形式会变得不适于实际的应用方式。
因此,本发明提供一种在系统设定时数据的利用方法不明、或该数据的利用方式和系统设计时相比改变的情况下,也可进行对应的系统。
(实施方式1)
图1是表示本发明的第1实施方式的构成的图。参照图1,本发明的第1实施方式的系统具有:信息处理单元1、信息存取单元2、处理历史存储单元3、信息收容单元4~5、信息存储部6~7、信息收容形式控制单元8。在图1中,是具有二个信息收容单元4、5、信息存储部6、7的构成,当然信息收容单元、信息存储部的个数均不限制为2个,可以是任意的。
信息处理单元1包括软件(程序),其实现使用信息存储部6、7中收容的数据(信息)进行的计算处理,或实现将处理结果收容到信息存储部6、7的计算处理。具体而言,信息处理单元1是执行以任意的编程语言记述的逻辑(源代码)的环境。只要是可实现对到处理历史存储单元3的信息的处理历史的记录的,则可是在任意的OS(操作系统)上动作的执行二进制,也可在信息处理单元1内编译源代码,生成执行二进制。
并且,通过信息处理单元1编译源代码时(或在此之前),也可进行变换使其具有记录到处理历史存储单元3的记录功能。
信息存取单元2具有:信息存取收发单元20、存取地确定单元21、信息收容形式存储部22,其提供信息处理单元1对信息存储部6、7的读出或写入功能。
信息存取收发单元20接受信息处理单元1对任意信息(数据)的存取要求,并响应结果。
存取地确定单元21判断信息处理单元1指定的数据(信息)收容在信息存储部6、7的何处,对收容地的信息收容单元发布存取要求。
用于通过存取地确定单元21判断信息处理单元1指定的数据(信息)是否收容在信息存储部6、7的任意一个中的信息(元信息),存储保持在信息收容形式存储部22中。
信息收容形式存储部22存储与单数的数据(信息)或多个数据组(信息组)存在于哪个信息存储部中相关的信息(元信息)。
信息收容形式存储部22例如以分散文件系统中的元服务器构成,由存储装置及使该存储装置作为该服务器作用的软件来实现。信息收容形式存储部22具体而言由非专利文献1所述的数据管理系统等实现。作为实现信息收容形式存储部22的软件,可以任意的方法实现,但因要求高速的检索性能、响应性能,因此在本实施方式中,使用数据库/软件、检索引擎/软件。信息收容形式存储部22的存储装置使用磁盘装置、半导体存储器装置等。
处理历史存储单元3记录通过信息处理单元1进行的对信息的存取的历史。
在处理历史存储单元3中,该存取历史能够:
*以依次追记文件的日志文件形式保持,或者,
*以任意形式作为数据库保持。
处理历史存储单元3至少记录:
*确定通过信息处理单元1存取的信息的信息(例如数据的唯一的ID、相当于文件路径的信息等);
*对该信息进行的处理的内容(种类)。
作为对该信息进行的处理的内容(种类),例如包括:
*表示和读出类似的处理的信息;
*表示和写入类似的处理的信息;
*表示在程序内调出的函数名(method name)的信息;
*表示存取的特性的信息(例如随机存取、序列存取、新建、更新处理等)。
并且,处理历史存储单元3中也可仅记录进行了存取这一情况。将这些任意一个信息收容到处理历史存储单元3中。
并且,收容到处理历史存储单元3的信息也可中途取消(或删除)。例如,如果超过一定大小则进行动作,以取消旧的信息,或者在进行下述信息形式的变更处理后,取消对该信息的历史。
信息收容单元4、5分别包括对信息存储部6、7进行信息的读出及写入的软件。信息收容单元4、5对各信息存储部6、7以不同方法进行信息的读出和写入。
作为具体例,例如,信息收容单元4包括文件系统/软件,信息收容单元5包括数据库/软件。
并且,信息收容单元4、5使用文件系统/软件、数据库/软件等,可包括安装了信息的读出及写入功能的软件。并且,各信息收容单元4、5也可单独对任意的信息具有多个信息收容方式。例如,在数据库/软件中,对相同的信息用不同的架构(schema)收容。并且,在文件系统中,对作为面向办公文件应用程序的二进制/文件进行收容、及提取文本部分作为文本/文件进行收容分开来使用,或即使是文本/文件也变更内部的收容顺序(例如以开头文字串进行排序)。
并且,将任意的多个信息收容到单一的文件、数据库表格等中,及分别单独以信息作为其他文件、数据库表格收容,也相当于本发明中的信息收容形式的分开利用。
信息存储部6、7作为信息的实际存储部动作。信息存储部6、7使用具有磁存储装置等任意存储元件的任意个数的装置。信息存储部6、7具体而言进一步使用磁盘阵列装置、具有计算装置的由文件系统运行的文件服务器、利用了半导体存储器的存储装置等。也可变更信息收容单元和信息存储部的构成。
在图1所示的例子中,是信息收容单元4和信息存储部6、信息收容单元5和信息存储部7的组合,本发明当然不限于该构成。信息存储部6、7可作为同一装置或系统实现,也可由多个信息收容单元共享。
并且,相反也可是由单一的信息收容单元使用多个信息存储部的形式。信息收容形式存储部22和信息存储部6、7也可相同。并且,也可将任意的信息存储部与信息收容形式存储部22作为同一部件对待。即,也可将信息收容形式存储部22中收容的信息收容到信息存储部6、7内。并且,也可将处理历史存储单元3的记录内容收容到信息存储部6、7中,或收容到信息收容形式存储部22中。
信息收容形式控制单元8使用处理历史存储单元3中记述的历史信息,进行对任意信息的信息收容形式的变更。即,信息收容形式控制单元8起到以下作用:对由信息收容单元4收容的信息,变换为由信息收容单元5收容。并且,信息收容形式控制单元8可具有存储单元,其记录对信息变更信息收容形式的条件。
图2是表示图1的处理历史存储单元3的构成例的图。参照图2,处理历史存储单元3具有:信息接收单元32、信息记录单元33、记录介质31。
信息接收单元32从信息处理单元1接受:
*信息处理单元1进行的计算的种类;以及
*用于确定该计算使用的数据的信息的种类。
如上所述,作为表示信息处理单元1进行的计算的种类的信息的例子,例如包括以下信息:
(C1)表示进行存取的信息;
(C2)表示是和读取类似的处理的信息(Read)
(C3)表示是和写入类似的处理的信息(Write);
(C4)表示存取的特性的信息(例如随机存取(Random-Read、Random-Write)、序列存取(Sequential-Write、Sequential-Read)、新建(Create)、更新处理(Update)等);
(C5)表示在程序内调出的函数名(method name)的信息(例如class#methodname、sort、join、……、或fopen、……等)。
信息收容形式控制单元8使用这些信息,判断是否进行信息收容形式的变更、及变更的种类。对于记录的信息的粒度,可由实现本发明的系统任意设定。但对信息收容形式控制单元8进行的判断所需的信息而言,需要有足够的精度。
例如,通过存取是读出还是写入、其次数、频率来进行形式变更的判断时,例(C2)、(C3)的信息是充分的。利用较精细的信息时,需要记录例(C5)列举的、程序内的称呼方法、method name。
作为用于确定信息处理单元1进行的计算中使用的数据的信息(该信息由信息接收单元32使用)的例子,包括以下例子,但不用于限定本发明:
(D1)数据的文件路径(例如/home/user/~~~.dat等);
(D2)数据的文件路径及收容数据的主机名(IP地址)(例如/home/user/~~~.dat、hostl.abc.com、IP地址:10.**.**.**等);
(D3)数据的ID(用于确定数据的ID信息:例如120321);
(D4)数据的哈希值(ハツシユ值)(例如5a579238e591f8b95569613f8cdc5b26);
(D5)数据的元信息(例如数据的所有者=○○,制作日期时间=YY/MM/DD/hh/mm等)。
信息收容形式控制单元8需要根据这些信息可确定是否收容到了该数据的配置场所(哪个信息存储部(信息收容单元4、5))。
例如,用于确定计算所使用的数据的信息是“数据的文件路径及收容数据的主机名(IP地址)”时,可通过处理历史存储单元3中收容的信息确定数据的配置场所。
并且,也可通过由信息收容形式控制单元8询问信息存取单元2来确定数据的配置场所(与信息收容形式存储部22保持的信息对应解决)。
例如,如果是“数据的文件路径”、“数据的ID”、“数据的哈希值”,则只要信息存取单元2具有根据“数据的文件路径”、“数据的ID”、“数据的哈希值”等信息响应数据的配置场所的功能,那么通过询问信息存取单元2,可确定数据的配置场所。同样,也可根据“元信息”进行询问,确定数据的配置场所。
并且,信息收容形式控制单元8也可单独确定数据的配置场所。例如,根据“数据的哈希值”、“数据的ID”,通过使用consistent Hashing(一致性哈希)等方法,可计算出数据的配置场所。
信息记录单元33将信息接收单元32接收到的信息记录到记录介质31中。记录介质31由磁盘、半导体存储器等存储装置实现。记录到记录介质31的格式可通过任意的方法实现。作为日志文件,例如可采用以下方法,但不用于限定本发明。
说明在处理历史存储单元3中将数据的处理历史记录到日志文件的情况。例如,以Syslog等为代表的日志形式追记到文件末尾,Syslog是将日志消息传送到IP网络的标准规格(日志标准)。例如是以下形式(“_”表示空格)。
Date(日期时间信息)_server名(信息处理单元1的名称等)_Read(表示信息处理单元1进行的计算的种类的信息)/home/user/A.dat(用于确定数据的信息)
Date_server名_Read_/home/user/A.dat
Date_server名_Write_/home/user/B.dat
Date_server名_Read_/home/user/B.dat
可知该例的日志中,记录了A.dat这一文件发生了2次Read,B.dat发生了1次Write、1次Read。
信息记录单元33解释信息接收单元32接收到的信息,以日志格式的形式制作信息,追记到日志文件的末尾。
接着说明在处理历史存储单元3中,以数据库管理数据的处理历史的情况。此时,在处理历史存储单元3中,使用数据库管理软件(数据库管理软件构成图2的信息记录单元33)等,作为数据库的表格形式进行记录。
例如,通过图7所示的表格记录信息。图7是表示在处理历史存储单元3中以数据库管理数据的处理历史时的数据库的表格构成的一例的图。
图7所示的例子中,对于数据id是“1”的数据,可知记录了其进行了1次sort(排序)处理、3次analysis(分析)处理。同样,对于数据id是“2”的数据,可知记录了其进行了3次get(检索)处理。
信息记录单元33解释信息接收单元32接收到的信息,更新表格的必要处。如果必要,也可追加记录(行),或追加列。
并且,也可根据信息收容形式控制单元8的存取特性,制作索引。例如,可以是如下表格构成:主要通过排序次数判断信息收容形式的变更时,在排序次数的列中制作索引。
并且,存储器上也可保持哈希表等形成的联想排列。例如,以数据的id为key(关键词),将进行计算的次数作为Value(值)保持。
并且,可通过日志文件、数据库、联想排列等形式的一个或多个形式记录到记录介质31中。例如可以是具有日志形式和数据库的表格形式这二个的构成等。
或者如上所述,可采用编译模式来实现。此时,信息接收单元32、信息记录单元33起到的作用在信息处理单元1中实现,信息处理单元1对记录介质31提供写出功能。
接着对于本实施方式中的信息收容形式存储部22,说明其详细一例。信息处理单元1为了对数据进行存取,需要知道想存取的数据的收容地。在图1中,数据收容到信息存储部6或信息存储部7的任意一个中(或两者)。
信息存取单元2起到以下作用:回答信息处理单元1存取信息存储部6或7的哪一个好些。具体而言,当信息处理单元1的存取对象的数据(信息)位于信息存储部6、7的任意一个、或收容在两者中时,回答应存取哪一个,并作为响应返回到信息处理单元1。此外,在图1的构成中,是信息处理单元1总是通过信息存取单元2对信息收容单元4或5进行存取的构成,但在信息处理单元1一侧当已知存取对象的数据的收容地时(例如根据以前已经确定完等理由),信息处理单元1可直接存取信息收容单元4或5。这种情况下,信息存取单元2完成来自信息处理单元1的存取要求。
信息收容形式存储部22在信息存取单元2对信息处理单元1起到响应存取对象数据的收容地的功能时,起到必要的存储部的作用。作为由信息收容形式存储部22保持的信息,至少需要以下二个。
(E)用于确定数据的信息;
(F)用于确定数据的收容地的信息。
用于确定数据的信息例包括与上述一样的例子,但不用于限定本发明:
(E1)数据的文件路径;
(E2)数据的文件路径及收容数据的主机名(IP地址);
(E3)数据的ID;
(E4)数据的哈希值;
(E5)数据的元信息;
(E6)数据中含有的关键字、出现的单词(例如“秘密文件”、“存储”等)。
用于确定数据的收容地的信息的例子包括以下,但不用于限定本发明:
(F1)作为数据的收容地的主机的名称、IP地址等(例如主机名:host1,IP地址:192.168.0.1等);
(F2)作为数据的收容地的虚拟容量的名称(例如:/shared/vol1);
(F3)作为数据的收容地的数据库名称、表格名称、唯一记录ID等(例如数据库名称:元数据库(metadatabase),表格名称:主机表格(hosttable),唯一记录ID:123)
(F4)作为数据的收容地的文件名、路径名(例如:home/data/123.obj、host1,/home/data/123.obj等);
(F5)数据的ID、哈希值等(例如数据的ID:123,哈希值:5a579238e591f8b95569613f8cdc5b26);
(F6)数据形式(例如数据库(database)形式、平面文件(planefile)、已排序文件(sorted file))。
作为收容这些信息的方法,可适用利用数据库的方法、利用检索引擎的方法。
在本实施例中,说明利用数据库的方法的例子,但不用于限定本发明。
图8、图9、图10是表示作为图1的信息收容形式存储部22使用数据库时的表格构成示例。
图8是表示从用于确定数据的ID(id)中搜索数据的收容地的表格的例子的图。在图8所示的例子中,前提是其构成是通过数据的id制作了索引。即,数据库中,由主机名和文件路径信息、形式(文件还是数据库)构成的数据的收容地信息(记录),与数据的id建立关联并收容。
存取地确定单元21如果知道要存取的数据的id,则使用图8的表格取得其记录,从而可获得数据的收容地。
该例中,可知数据的id是“1”的数据收容地,在host1的/home/data/1.obj中作为普通的文件被收容。此时,在host1的服务器上动作的文件系统等的软件是信息收容单元4的例子,记录介质(记录了/home/data/1.obj的硬盘(HDD)等)是信息存储部6的例子。
并且,如数据id是“1”的例子所示,数据id是“1”时可自动计算出/home/data/1.obj和文件路径(file path)时,可知该信息不是必须的。
对于主机名(Host name),在采用根据数据的id通过consistenthashing(一致性哈希法)等方法自动决定收容地的主机的方法时也不是必须的。对于形式,实际存取信息收容单元4为止无需知道的则没有必要。
信息收容形式存储部22中只存在图8的信息时,信息处理单元1通过数据的id存取数据的收容地。
图9、图10是表示通过数据id以外的信息存取数据时的表格构成的示例图。在图9所示的例子中,作为确定数据的信息,使元信息(数据的制作年月日)和确定数据的收容地的信息(id)对应并收容。
信息收容形式存储部22具有图9所示的表格时,作为元信息具有数据的制作日期。通过该元信息可实现确定数据并存取的系统。
例如,想对制作日期(年月日)2008.10.1制作的数据进行存取时,对id是“1”、“3”、“5”的数据进行存取即可。
id是“1”、“3”、“5”的数据可分别使用图8的表格获得该数据的收容地。但仅通过数据id即可明白数据的收容地时,无需检索图8的表格。并且,也可是如下方式:对图9的表格,用图8的右3列的列数据替代id来列举。即可以是如下构成:作为确定数据的信息,由元信息(数据的制作年月日)、主机名和文件路径信息、形式(文件还是数据库)构成的数据的收容地信息(记录),彼此建立关联并收容的构成。
图10是表示以下例子的图:从信息处理单元1来看从文件路径获得数据的实际收容地所需的、信息收容形式存储部22的表格构成的例子。作为用于确定数据的信息的文件名、及作为确定数据收容地的信息的数据id建立关联并收容。
例如,从信息处理单元1要求存取/home/hoge/测试数据.dat这一文件时,可知存取地确定单元21使用信息收容形式存储部22的表格(图10),对id是“1”的数据进行存取即可。
并且,通过使用图8的表格,可知/home/hoge/测试数据.dat这一文件是id为“1”的host1的/home/data/1.obj。
如图9、图10的表格的例子所示,在信息收容形式存储部22中,组合(建立关联)并保持确定数据时使用的信息、及确定数据存储地的信息,从而可构建一种可以灵活的形式存取数据的系统。
例如,希望以数据的作者这样的其他元信息存取数据时,只要将使数据的作者和id组合建立关联的表格保持到信息收容形式存储部22即可。
并且,如检索引擎的倒排索引所示,将数据中含有的单词信息作为用于确定数据的信息保持,将含有该单词的数据的id作为确定数据的收容地的信息记录,则可像检索引擎一样,以其中的数据的内容对数据进行存取。
图3是表示在本实施方式的信息处理系统中,进行使用信息存储部6、7中收容的信息进行的计算处理、或进行将处理结果收容到信息存储部6、7的计算处理的步骤的流程图。接着参照图1、图3详细说明本实施例的整体动作。
首先,信息处理单元1读出在信息处理系统上动作的软件的执行二进制或源代码,开始软件执行处理(图3的步骤S101)。该执行二进制或源代码可由信息处理单元1通过具有存储单元来保持,也可从本实施方式的任意一个存储部读出,或者也可从本实施方式以外的系统或用户取得。
接着,信息处理单元1确认软件内的计算处理是否是对数据(信息)的处理(步骤S102)。不是对数据的处理时(不伴随数据操作的处理),执行该处理(不伴随数据操作)(步骤S104),前进到步骤S106。
当是对数据的处理时,信息处理单元1执行伴随该数据操作的处理(步骤S103),将可识别对数据的处理的内容和对象数据的信息,记录到处理历史存储单元3(步骤S105)。
此外,在信息处理单元1中,步骤S103和步骤S105可替换执行,也可同时并列执行。并且,步骤S105无需保障完全记录处理历史,因此在信息处理单元1中,也可以结束步骤S103,不待步骤S105完成,可前进到下一处理(步骤S106)。
在步骤S106中,信息处理单元1确认该软件进行的执行处理是否完成。当完成时,结束程序。当未完成时,前进到下一处理(步骤S107),信息处理单元1确认下一处理的内容是否是对数据的处理(步骤S102)。因此,重复执行软件内的处理步骤。
在图3的流程图中,所谓“处理”,是将
*对机械语言命令等计算机的执行命令;
*包括系统调用等的函数;
*源代码内定义的函数;
*源代码内的任意范围(块组);
*源代码内的文字的任意个数
等,作为处理单位处理。
并且,在步骤S102中,信息处理单元1识别是否是对数据(信息)的处理时,可取代执行命令、解析源代码,而采用以下方法:
*由源代码记述者在源代码内加入任意的提前确定的注释;
*将提前确定的函数作为数据处理自动处理(检测提前确定的函数时,作为数据处理识别);
将提前任意确定的函数名的处理,作为数据处理对待。
这样一来,易于识别是否是数据处理,具有处理高速化的效果。
并且,图3是执行时进行判断及记录的步骤,在编译时也可以下述步骤进行。
首先,信息处理单元1进行源代码的读入,在编译时的源代码解析(Lexical Analysis Phase等)时,提取对数据的处理部分。
并且,由信息处理单元1执行的编译在执行命令(二进制形式)的生成处理时,进行对处理历史存储单元3的记录命令的执行代码的生成处理。
这样一来,在信息处理单元1中,执行编译并链接的软件(执行模块)时,无需执行图3所示的检查处理(步骤S102),信息处理单元1作为通常的执行基础使程序的执行二进制运行即可。因此,实现处理高速化的效果。
并且,也可不通过编译处理生成执行命令,作为进行源代码的字句解析的预编译器,通过输入源代码,输出追加了对处理历史存储单元3的记录处理的源代码的形式来实现。这种情况下,无需进行图2的流程图所示的检查处理,因此具有处理高速化的效果。并且,还具有编译可使用任意的其他编译的效果。
图4是表示图3的流程图中的步骤S103的步骤的流程图。参照图1及图4说明图3的流程图中的伴随着步骤S103的数据操作的处理动作。
首先,将信息处理单元1发出的对数据的存取命令发送到信息存取单元2(图4的步骤S301)。在步骤S301中,信息存储单元2内的信息存取收发单元20接受存取命令。
接着在信息存取单元2中,存取地确定单元21从信息收容形式存储部22中收容的信息中,取得可确定处理对象的数据的收容地(收容单元)的信息(步骤S302)。数据的读出处理等、在任意信息收容地(收容单元)中已经存在数据时,可如上进行。
数据的新写出处理(例如制作新的文件并写出数据)等、写出地的数据不存在于任意的信息收容地(收容单元)时,存取地确定单元21决定新的文件的信息收容地,将收容地信息向信息收容形式存储部22写出。
制作新的文件并写出数据时,例如对表示将新的文件名(文件路径)保存到信息收容单元4的信息,通过任意的形式记录到信息收容形式存储部22即可。其中,所谓任意的形式,例如是:
*以文件名为KEY(关键词);
*以收容地信息(确定信息收容单元4的计算机的IP地址等文件的保持场所的信息)为值的哈希表等。
在步骤S302中,确定了处理对象的数据的存取地后,对该存取地的信息收容单元发布信息存取命令(步骤S303)。
接着,存取地的信息收容单元4或5执行对指定数据的存取命令(步骤S304)。
并且,存取地的信息收容单元4或5将处理对象的数据的存取结果响应到信息存取单元2(步骤S305)。
最后,信息存取单元2向信息处理单元1响应接收到的结果(步骤S306)。
此外,在步骤S305中,存取地的信息收容单元4或5也可不将结果响应到信息存取单元2,直接响应到信息处理单元1。此时,因无需步骤S306,所以性能(存取时间)提高。
并且,在步骤S304中,伴随信息的更新,需要对信息收容形式存储部22更新时,由信息存取单元2(或任意其他单元)进行对信息收容形式存储部22的信息更新。
图5是表示信息收容形式控制单元8的、信息收容形式的变更处理步骤的流程图。参照图1及图5的流程图,说明信息收容形式控制单元8对信息收容形式的变更处理。
信息收容形式控制单元8在任意契机下开始信息收容形式的变更处理。并且,在变换处理的最初,从处理历史存储单元3取得处理历史信息(图5的步骤S401)。
接着从处理历史存储单元3的处理历史信息中,选定处理对象的信息(步骤S402)。此外,变换处理开始时,决定了作为处理对象的信息时,无需步骤S402的处理,在步骤S401中,取得和处理对象的信息相关的处理历史信息即可。
接着从信息收容形式存储部22取得处理对象的信息(数据)的信息收容地(数据收容地)(步骤S403)。
接着,从数据收容地的信息收容单元取得处理对象的信息(数据)(步骤S404)。
接着将处理对象的信息(数据)变形为面向变换地的信息收容单元并收容(步骤S405)。
最后,更新信息收容形式存储部22中收容的、处理对象的信息(数据)的数据收容地信息(步骤S406)。
接着说明信息收容形式控制单元8进行图5的流程图中的信息收容形式的变更处理的契机。在本实施例中,根据以下时刻执行进行信息收容形式的变更处理的契机。
(G1)处理历史存储单元3中收容的处理历史的信息超过任意条件时,以图5所示的执行流程图进行处理;
(G2)每经过一定时间(定期),以图5所示的执行流程图进行处理。
首先说明(G1)的“处理历史存储单元3中收容的处理历史的信息超过任意条件时”。
这是指,在图3的流程图的步骤S105中,在记录处理信息时,确认处理历史存储单元3中收容的处理对象的信息的历史信息,满足任意条件(以下称为“信息收容形式变更条件”)时,开始信息收容形式的变更处理。
其中,作为信息收容形式变更条件,提前确定以下条件:“对于任意的信息,信息收容单元4中收容的信息由信息处理单元1读出三次以上时,变更为信息收容单元5”。该条件由信息收容形式控制单元8保持,或根据处理历史存储单元3的信息变化,由具有通知到信息收容形式控制单元8的作用的单元(例如管理处理历史存储单元3的软件)保持。
表示满足信息收容形式变更条件(其中,3次以上的来自信息处理单元1的信息读出处理是信息收容形式变更条件)的历史信息,收容到处理历史存储单元3时,对该信息进行信息收容形式控制单元8的信息收容形式的变更处理。此时,需要确认在该条件下,该信息被信息收容单元4收容。该确认可通过对信息收容形式存储部22进行存取来确认,也可作为处理历史存储单元3的处理历史信息,记录表示该信息由信息收容单元4收容的信息。
此时,通过信息收容形式控制单元8的动作流程,进行从该信息的信息收容单元4到信息收容单元5的变更处理。此时,完成了图5的步骤S401~403,因此信息收容形式控制单元8执行步骤S404~406的步骤即可。
接着说明(G2)每经过一定时间,通过图5所示的执行流程图进行信息收容形式控制单元8进行的变更处理的情况。通过信息收容形式控制单元8每经过任意时间执行变更处理(参照图5的流程图)来执行。
首先,对处理历史存储单元3中收容的任意信息,确认是否满足信息收容形式变更条件。具体而言,例如通过数据库(参照图7)等,在处理历史存储单元3中收容处理历史,连接到该数据库(图5的步骤S401),选择一个该数据库内收容的信息(步骤S402),取得选择的信息的信息收容地(步骤S403)。
如满足信息收容形式变更条件,则信息收容形式控制单元8执行图5的步骤S404~S406。如不满足信息收容形式变更条件,则信息收容形式控制单元8在步骤S402中选择其他信息,取得对象信息的信息收容地(步骤S403)。
并且,信息收容形式控制单元8再次进行信息收容形式变更条件的判断。这样重复处理,对于处理历史信息内的信息,确认是否满足信息收容形式变更条件,并进行变更处理。
并且,作为信息收容形式变更条件,也可使用信息存储部6、7这样的信息存储部的容量的信息。
或者,对于任意信息,能够根据信息处理单元1的存取方法,切换信息收容单元并使之动作。在存取地确定单元21中,实现该切换处理。例如,和读入类似的处理由信息收容单元5进行,和写入类似的处理由信息收容单元4进行。并且,作为信息收容形式变更条件,对信息收容单元4进行任意次数的写入处理时,将信息收容单元4中收容的信息的内容收容到信息收容单元5中。
通过这样动作,在信息收容单元5中,将信息保持为适于读入的形式,在信息收容单元4中,将信息保持为适于写入的信息,从而可保持较高写入性能的同时,实现读入不是最新、但保持高速性的信息收容系统。
并且,也可进行动作,使某个信息的全部信息收容到信息收容单元4,仅将信息中的任意信息、任意种类的元信息收容到信息收容单元5。
通过信息处理单元1进行和写入类似的信息存取时,可进行动作以收容到两个信息收容单元4、5中,也可如下动作:信息处理单元1进行信息存取时,对信息收容单元4进行写入动作,对信息收容单元5的信息收容通过信息收容形式控制单元8的信息变换处理进行。通过这样动作,与信息收容单元5的信息收容性能的好坏无关,通过对信息收容单元4进行信息收容,可完成信息处理单元1的信息存取处理。
接着说明信息收容形式控制单元8的处理。信息收容形式控制单元8使用处理历史存储单元3中收容的历史信息变换信息收容形式。作为历史信息,记录图7所示的内容。
以下,作为变换规则,说明具有以下规则时的变换处理:排序处理发生3次以上时,从平面文件变换为已排序文件的规则。
其中,作为平面文件的例子,是“以提前确定的格式收容数值”。
作为已排序文件的例子,是“以提前排序的状态的格式收容第一个排列”。
首先,从处理历史存储单元3确定排序处理发生3次以上的数据。
使用图7的表格检索排序处理进行3次以上的数据(适于处理规则的数据)后,可知id:3的数据适合(图5的步骤S401、402)。
关于id:3,参照图8的表格可知id:3的数据收容地和现在的形式是平面文件(图5的步骤S403)。
根据变换规则,是平面文件时,需要从平面文件变更为排序文件,因此从host3读入3.obj文件,变换为排序文件,保存到host3(可向host3发出进行这样的处理的指示)(图5的步骤S404、S405)。并且,变更图8的id:3的形式的记录(图5的步骤S406)。
通过进行这种变换,对于频繁进行排序的数据,将数据变换为提前排序后的形式并保持。因此,对于之后的排序处理,实际上不进行排序,仅通过读出数据即可进行。其结果可获得以下效果:系统性能提高,效率提高。并且,根据系统的动作进行变换,因此可提供如下适应性的系统:即使不知对数据的存取状态,只要排序存取增加,就在该时刻下进行变换。
(实施方式2)
接着说明本发明的第2实施方式。图5是表示本发明的第2实施方式的构成的图。在上述实施例的构成中,作为信息收容单元5的信息收容地的信息存储部6是和信息收容形式存储部22相同的构成。本实施方式和第1实施方式同样运行。
在本实施方式中,在存取地确定单元21中,不进行信息收容形式存储部22的更新,信息收容单元5进行更新即可。进一步,将信息总收容到信息收容单元4中,信息收容形式存储部22通过信息收容形式控制单元8的更新来进行即可。通过这样运行,对于信息收容形式存储部22中收容的信息的更新相伴的处理,通过信息收容单元4的更新来完成更新处理,因此可使处理高速化。
本发明适于信息处理系统、信息收容系统。
此外,上述专利文献、非专利文献的公开内容通过引用加入到本说明书中。在本发明的全部公开(包括权利要求范围)框架内,可进一步根据其基本技术思想,进行实施方式或实施例的变更/调整。并且,在本发明的权利要求范围内,可对各种公开要素进行多种组合或选择。即,本发明当然包括根据包括权利要求范围在内的全部公开内容、技术思想可由本领域技术人员获得的各种变形、修正。
上述本发明及实施方式可总结为以下附记。
(附记1)
.一种信息处理系统,其特征在于,具有:
信息收容单元,能够对应彼此不同的多个信息收容形式,将数据以和上述数据对应的信息收容形式收容;
处理历史存储单元,存储对数据的信息处理的历史;以及
信息收容形式控制单元,根据上述处理历史存储单元中存储的处理历史的信息,控制上述数据的信息收容形式。
(附记2)
根据附记1所述的信息处理系统,其特征在于,具有信息处理单元,其对上述信息收容单元保持的上述数据进行规定的处理,在上述处理历史存储单元中收容对上述数据的处理历史。
(附记3)
根据附记2所述的信息处理系统,其特征在于,包括信息存取单元,在上述信息处理单元对数据进行存取时,确定和存取对象的上述数据对应的信息收容单元,将来自上述信息处理单元的上述存取要求,分配到上述确定的信息收容单元。
(附记4)
根据附记3所述的信息处理系统,其特征在于,上述信息存取单元包括信息收容形式存储部,其将上述数据与确定上述数据的信息收容形式的信息建立关联并保持。
(附记5)
根据附记1至4的任意一项所述的信息处理系统,其特征在于,上述信息收容形式控制单元:
保持用于变更上述数据的信息收容形式的条件,
根据上述处理历史存储单元的处理历史的信息,进行变更上述信息收容形式的条件判断,
根据上述判断结果,进行上述数据的信息收容形式的变更处理。
(附记6)
根据附记2所述的信息处理系统,其特征在于,上述信息处理单元检测对上述数据的处理,在上述处理历史存储单元中收容对上述数据的处理历史信息。
(附记7)
根据附记6所述的信息处理系统,其特征在于,上述信息处理单元在执行处理时检测对上述数据的处理。
(附记8)
根据附记6所述的信息处理系统,其特征在于,
上述信息处理单元具有将记述了处理的程序源代码变换为执行命令组的单元,
生成执行对上述数据的处理的命令,并生成向上述处理历史存储单元收容对上述数据的处理历史的信息的命令。
(附记9)
根据附记6所述的信息处理系统,其特征在于,具有对在上述信息处理单元上执行的程序,赋予向上述处理历史存储单元收容处理历史信息的程序代码的单元。
(附记10)
根据附记1或4所述的信息处理系统,其特征在于,上述信息收容单元实现的多个信息收容形式中至少一个包括上述信息收容形式存储部。
(附记11)
根据附记5所述的信息处理系统,其特征在于,上述信息收容单元包括与彼此不同的多个信息收容形式分别建立关联的多个信息存储介质。
(附记12)
根据附记11所述的信息处理系统,其特征在于,上述信息收容形式控制单元使用信息存储介质的容量作为用于变更上述数据的信息收容形式的条件。
(附记13)
根据附记3所述的信息处理系统,其特征在于,上述信息存取单元根据对数据的存取的种类,选定上述信息收容单元。
(附记14)一种信息处理方法,其特征在于,
能够与彼此不同的多个信息收容形式对应的信息收容单元将数据以和上述数据对应的信息收容形式收容,
将对数据的信息处理的历史存储到处理历史存储单元,
根据上述处理历史存储单元中存储的处理历史的信息,变更数据的信息收容形式。
(附记15)
根据附记14所述的信息处理方法,其特征在于,对上述信息收容单元保持的上述数据进行规定的处理,在上述处理历史存储单元中记录对上述数据的处理历史的信息。
(附记16)
根据附记15所述的信息处理方法,其特征在于,在对数据进行存取时,确定和存取对象的上述数据对应的信息收容单元,将上述存取要求分配到上述确定的信息收容单元。
(附记17)
根据附记16所述的信息处理方法,其特征在于,将上述数据和确定上述数据的信息收容形式的信息建立关联并保持到信息收容形式存储部。
(附记18)
根据附记14至17的任意一项所述的信息处理方法,其特征在于,
保持用于变更上述数据的信息收容形式的条件,
根据上述处理历史存储单元中存储的处理历史的信息,进行信息收容形式的变更的条件判断,
根据上述判断结果,进行上述数据的信息收容形式的变更处理。
(附记19)
根据附记15所述的信息处理方法,其特征在于,检测对上述数据的信息处理,在上述处理历史存储单元中收容对上述数据的信息处理的处理历史信息。
(附记20)
根据附记19所述的信息处理方法,其特征在于,在执行处理时检测对上述数据的信息处理。
(附记21)
根据附记19所述的信息处理方法,其特征在于,
将记述了对上述数据的信息处理的程序源代码变换为执行命令组,
生成执行对上述数据的信息处理的命令,并生成向上述处理历史存储单元收容处理历史信息的命令。
(附记22)
根据附记19所述的信息处理方法,其特征在于,对执行的程序,赋予向上述处理历史存储单元收容处理历史信息的程序代码。
(附记23)
根据附记14或17所述的信息处理方法,其特征在于,上述信息收容单元实现的多个信息收容形式中,至少一个包括上述信息收容形式存储部。
(附记24)
根据附记18所述的信息处理方法,其特征在于,实现上述多个信息收容形式的上述信息收容单元,包括与彼此不同的多个信息收容形式分别建立关联的多个信息存储介质。
(附记25)
根据附记21所述的信息处理方法,其特征在于,控制上述信息收容形式时,使用信息存储介质的容量作为变更上述数据的信息收容形式的条件。
(附记26)
根据附记25所述的信息处理方法,其特征在于,根据对上述数据的存取的种类,选定收容上述数据的信息收容单元。
(附记27)
一种程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:
通过能够对应彼此不同的多个信息收容形式的信息收容单元,将数据以和上述数据对应的信息收容形式收容的处理;
将对数据的信息处理的历史存储到处理历史存储单元的处理;以及
根据上述处理历史存储单元中存储的处理历史的信息,变更上述数据的信息收容形式的处理。
(附记28)
根据附记27所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:对上述信息收容单元保持的上述数据进行规定的处理,在上述处理历史存储单元中收容对上述数据的处理历史的信息。
(附记29)
根据附记28所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:在对数据进行存取时,确定和存取对象的上述数据对应的信息收容单元,将该存取要求分配到上述确定的信息收容单元。
(附记30)
根据附记29所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:将上述数据和确定上述数据的信息收容形式的信息建立关联并保持到信息收容形式存储部。
(附记31)
根据附记27至30的任意一项所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:
保持用于变更上述数据的信息收容形式的条件,
根据上述处理历史存储单元的处理历史的数据,进行信息收容形式的变更的条件判断,
根据上述判断结果,进行上述数据的信息收容形式的变更处理。
(附记32)
根据附记28所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:检测对上述数据的处理,在上述处理历史存储单元中收容对上述数据的处理历史。
(附记33)
根据附记32所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:在执行处理时检测对上述数据的处理。
(附记34)
根据附记32所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:
将程序源代码变换为执行命令组的处理;
生成执行对上述数据的处理的命令,并生成向上述处理历史存储单元收容处理历史信息的命令的处理。
(附记35)
根据附记32所述的程序(或记录了该程序的计算机可读取的记录介质),使计算机执行以下处理:对执行的程序,赋予向上述处理历史存储单元收容处理历史信息的程序代码的处理。
(附记36)
根据附记29所述的程序(或记录了该程序的计算机可读取的记录介质),上述信息收容单元实现的多个信息收容形式中至少一个包括上述信息收容形式存储部。
(附记37)
根据附记31所述的程序(或记录了该程序的计算机可读取的记录介质),实现上述多个信息收容形式的信息收容单元,具有与彼此不同的多个信息收容形式分别建立关联的多个信息存储介质。
(附记38)
根据附记37所述的程序(或记录了该程序的计算机可读取的记录介质),使用信息存储介质的容量作为用于变更上述数据的信息收容形式的条件。
(附记39)
根据附记29所述的程序(或记录了该程序的计算机可读取的记录介质),根据对上述数据的存取的种类,选定上述信息收容单元。
符号的说明
1信息处理单元
2信息存取单元
3处理历史存储单元
4信息收容单元
5信息收容单元
6信息存储部
7信息存储部
8信息收容形式控制单元
20信息存取收发单元
21存取地确定单元
22信息收容形式存储部
31存储介质
32信息接收单元
33信息记录单元