KR101282501B1 - Computer readable record medium where broadcast stream with index is recorded, apparatus for generating broadcast stream with index and method of generating broadcast stream with index - Google Patents
Computer readable record medium where broadcast stream with index is recorded, apparatus for generating broadcast stream with index and method of generating broadcast stream with index Download PDFInfo
- Publication number
- KR101282501B1 KR101282501B1 KR1020110021051A KR20110021051A KR101282501B1 KR 101282501 B1 KR101282501 B1 KR 101282501B1 KR 1020110021051 A KR1020110021051 A KR 1020110021051A KR 20110021051 A KR20110021051 A KR 20110021051A KR 101282501 B1 KR101282501 B1 KR 101282501B1
- Authority
- KR
- South Korea
- Prior art keywords
- index
- broadcast
- heterogeneous
- xml
- generating
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8543—Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
Abstract
에너지 효율성 및 접근시간 효율성을 향상시키기 위해 이종의 스키마를 가진 XML 문서 집합으로부터 이종 XML문서들을 색인하는 새로운 인덱스 구조를 갖는 브로드캐스트 스트림 구조, 새로운 인덱스 구조를 갖는 브로드캐스트 스트림을 생성하는 장치 및 방법을 제시한다. 제시된 브로드캐스트 스트림 구조는 이종의 XML문서의 집합으로부터 생성되는 브로드캐스트 스트림 구조로서, 이종의 XML문서의 내용이 실린 XML문서 필드, 및 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스 필드를 포함하고, 인덱스 필드가 XML문서 필드의 앞에 배치된다. 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스를 하나의 방송 주기내의 브로드캐스트 스트림에서 제일 앞쪽에 배치하거나 복수개 배치함으로써, 주어진 질의에 대한 목표 문서로의 접근 시간이 단축되고 에너지 효율성이 향상된다.In order to improve energy efficiency and access time efficiency, a broadcast stream structure having a new index structure for indexing heterogeneous XML documents from an XML document set having a heterogeneous schema, and an apparatus and method for generating a broadcast stream having a new index structure are provided. present. The proposed broadcast stream structure is a broadcast stream structure generated from a set of heterogeneous XML documents, and includes an XML document field containing contents of heterogeneous XML documents, and an address value satisfying a location path and a location path for heterogeneous XML documents. It includes an index field including, and the index field is placed in front of the XML document field. By placing a position path for a heterogeneous XML document and an index including an address value satisfying the position path at the front of the broadcast stream in one broadcast period or by placing a plurality of indexes, the access time to the target document for a given query is improved. It is shortened and energy efficiency is improved.
Description
본 발명은 인덱스를 갖는 브로드캐스트 스트림 구조, 인덱스를 갖는 브로드캐스트 스트림 생성 장치 및 방법에 관한 것으로, 보다 상세하게는 무선환경에서 XML 데이터를 브로드캐스팅할 수 있는 인덱스를 갖는 브로드캐스트 스트림 구조, 및 이러한 인덱스를 갖는 브로드캐스트 스트림을 생성하는 장치 및 방법에 관한 것이다.The present invention relates to a broadcast stream structure having an index, an apparatus and a method for generating a broadcast stream having an index, and more particularly, to a broadcast stream structure having an index capable of broadcasting XML data in a wireless environment, and An apparatus and method for generating a broadcast stream having an index.
XML(eXtensible Markup Language) 문서는 요소(Elements), 태그(Tags), 속성(Attributes), 엔터티(Entities),PCDATA 및 CDATA 와 같은 구성 요소를 가지고 있다.EXtensible Markup Language (XML) documents have components such as Elements, Tags, Attributes, Entities, PCDATA, and CDATA.
다음은 각각의 구성 요소에 대한 간략한 설명이다. The following is a brief description of each component.
요소(Elements)는 XML 문서나 HTML 문서 모두에 있어 핵심 구성 요소이다. 요소(Elements)를 쉽게 이해하려면 HTML 문서의 요소를 살펴보면 된다. HTML 문서에서 "body", "table" 태그가 요소의 한 예이다. 지금까지 살펴본 XML 문서 예제에서 "note", "to" 등도 요소이다. 요소는 텍스트, 또 다른 요소를 포함할 수 있으며 비어 있을 수도 있다. 비어있는 HTML 요소의 예로 "hr", "br", "img" 등을 들 수 있다.Elements are key components in both XML and HTML documents. To make the elements easier to understand, look at the elements in the HTML document. In an HTML document, the "body" and "table" tags are examples of elements. In the XML document example we have seen so far, "note", "to", etc. are also elements. An element can contain text, another element, or it can be empty. Examples of empty HTML elements include "hr", "br", and "img".
태그(Tags)는 요소를 구성하기 위해 사용된다. <요소이름>과 같은 시작 태그가 요소의 시작을 나타내고, </요소이름> 같은 마침 태그가 요소의 마지막을 나타낸다.Tags are used to construct elements. A start tag such as <element name> indicates the beginning of an element, and a end tag such as </ element name> indicates the end of an element.
속성(Attributes)은 요소(element)에 대한 부가적인 정보를 제공한다. 속성은 요소의 시작 태그 안에 위치한다. 속성은 name/value 쌍으로 나타난다. 다음 예는 img 요소에 소스 파일에 대한 부가 정보를 제공하는 속성에 대한 것이다Attributes provide additional information about an element. The attribute is placed within the start tag of the element. Attributes appear as name / value pairs. The following example is for an attribute that provides additional information about the source file in the img element:
<img src="computer.gif" /><img src = "computer.gif" />
이때, 요소의 이름은 img이다. 속성의 이름(name)은 src이다. 속성의 값(value)은 computer.gif이다. 이 요소는 빈 요소(empty element)이기 때문에 /로 끝 마친다.In this case, the element name is img. The name of the attribute is src. The value of the property is computer.gif. This element ends with / because it is an empty element.
PCDATA는 parsed character data를 의미한다. 캐릭터 데이터(character data)는 XML 요소의 시작 태그와 마침 태그 사이에 위치한 텍스트라고 보면 된다. PCDATA는 파서(해석기, parser)에 의해 해석이 될 텍스트이다. 텍스트 안에 있는 태그는 마크업(markup)으로 취급될 것이며 엔터티(entity)는 확장될 것이다. 이 말을 쉽게 풀어 쓰면, <, >같은 태그를 XML 파서가 해석할 것이며 엔터티도 XML 파서가 해석하여 엔터티가 가리키는 값으로 참조시킬 것이라는 뜻이다.PCDATA stands for parsed character data. Character data is the text placed between the start and end tags of an XML element. PCDATA is the text to be interpreted by the parser. Tags in the text will be treated as markup and entities will be expanded. In simpler terms, this means that tags such as <and> will be parsed by the XML parser, and the entity will also be parsed and referenced by the value pointed to by the entity.
CDATA는 character data를 의미한다. CDATA는 파서(해석기, parser)에 의해 해석이 되지 않을 텍스트이다. 사실 XML 문서에 있는 모든 텍스트들은 XML 파서에 의해 해석 과정을 거치게 되지만 CDATA 만큼은 해석되지 않고 있는 모습 그대로 출력된다. 텍스트 안에 있는 태그는 마크업(markup)으로 취급되지 않을 것이며 엔터티(entity)는 확장되지 않을 것이다. 이 말을 쉽게 풀어 쓰면, <, >같은 태그 및 엔터티를 XML 파서가 해석하지 않을 것이므로 <, > 같은 문자와 엔터티 자체가 그대로 출력될 것임을 의미한다.CDATA stands for character data. CDATA is text that won't be interpreted by the parser. In fact, all text in the XML document is interpreted by the XML parser, but is output as it is, not as much as CDATA. Tags within text will not be treated as markup and entities will not be expanded. This can easily be interpreted to mean that tags and entities such as <and> will not be interpreted by the XML parser, so characters and entities such as <and> will be output as is.
엔터티(Entities)는 변수와 비슷한 개념으로 생각할 수 있다. 엔터티는 문서 내에서 참조 될 수 있는 문자 집합의 단위를 말한다. 예를 들어 반복해서 사용하는 어구가 있다면 엔터티를 사용해 쉽게 표현할 수 있다. 엔터티에는 일반 엔터티, 파라미터(매개변수) 엔터티가 있다. 정의되어 있는 엔터티를 참조하는 것을 엔터티 참조(Entity Reference)라고 한다.Entities can be thought of as variables. An entity is a unit of character set that can be referenced within a document. For example, if you have a phrase that you use repeatedly, you can easily represent it using an entity. Entities include regular entities and parameter (parameter) entities. References to defined entities are called entity references.
종래의 XML 데이터 방송 방법 중의 하나는 S-Node 이다. S-Node 에서는 XML 데이터를 방송을 위한 스트림 데이터로 변환시 원본 XML 데이터내의 중복된 구조정보를 그대로 남겨둔다.One conventional XML data broadcasting method is an S-Node. In the S-Node, when XML data is converted into stream data for broadcasting, duplicate structure information in the original XML data is left as it is.
도 1은 서버와 방송되는 데이터를 수신하는 다수의 이동 클라이언트가 존재하는 환경을 도시한 것이다. 서버(10)는 XML 데이터를 포함하는 각종의 데이터를 스트림으로 브로드 캐스트한다. 노트북, 핸드폰, PDA 등과 같은 이동 클라이언트(12)들은 브로드 캐스트된 데이터 스트림(14)을 수신하여 질의를 충족시킨다.1 illustrates an environment in which a plurality of mobile clients that receive data broadcast with a server exist. The
도 2는 원본 XML 데이터의 예를 도식화한 도면으로서 XML 데이터를 트리형태로 나타낸 것이다. XML 데이터에서 원하는 데이터를 얻기 위해서는 월드 와이드 컨소시엄(World Wide Consortium)의 표준화된 질의 언어인 XQuery를 사용하게 된다. FIG. 2 is a diagram schematically showing an example of original XML data, showing XML data in a tree form. To get the data you want from XML data, you use XQuery, the world wide consortium's standardized query language.
예를 들어, 도 2의 XML 데이터에 대해 /dblp/article/title/ 와 같은 단순 경로 질의(simple XPath query)에 대한 결과값은 도 2의 3번, 14번, 17번 노드(element)의 텍스트 값인 ABC, HI, JKL 이다. 이때, 질의에 해당하는 결과값을 얻기 위해서는 /dblp/article/title/ 경로를 가지는 모든 경로를 검색해야 한다.For example, the result of a simple XPath query such as / dblp / article / title / for the XML data of FIG. 2 is the text of
따라서, 종래의 XML 스트림 생성 및 수신 방법은 서버(10)가 계속해서 데이터 스트림(14)을 브로드캐스팅하고, 이를 필요로 하는 이동 클라이언트(12)가 방송 채널로부터 필요한 데이터를 수신한다. Thus, in the conventional XML stream generation and reception method, the
이 경우, 데이터 스트림(14)으로부터 원하는 데이터를 얻기 위해 이동 클라이언트(12)가 대기하는 시간이 길게 되어 접근시간 효율성(latency-efficiency) 측면에서 단점으로 지적된다.In this case, the waiting time for the
또한, 이동 클라이언트는 제한적인 배터리 자원을 가진 휴대용 기기인데, 불필요한 데이터의 수신으로 에너지 보존이 어렵다는 문제점이 있다.
In addition, the mobile client is a portable device having limited battery resources, there is a problem that it is difficult to conserve energy by receiving unnecessary data.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로, 에너지 효율성 및 접근시간 효율성을 향상시키기 위해 이종의 스키마를 가진 XML 문서 집합으로부터 이종 XML문서들을 색인하는 새로운 인덱스 구조를 갖는 브로드캐스트 스트림 구조를 제공함에 그 목적이 있다.The present invention has been proposed to solve the above-described problems, and has a broadcast stream structure having a new index structure for indexing heterogeneous XML documents from an XML document set having heterogeneous schemas to improve energy efficiency and access time efficiency. The purpose is to provide.
본 발명의 다른 목적은 상기의 새로운 인덱스 구조를 갖는 브로드캐스트 스트림을 생성하는 장치 및 방법을 제공함에 있다.Another object of the present invention is to provide an apparatus and method for generating a broadcast stream having the new index structure.
상기와 같은 목적을 달성하기 위하여 본 발명의 바람직한 실시양태에 따른 인덱스를 갖는 브로드캐스트 스트림 구조는, 이종의 XML문서의 집합으로부터 생성되는 브로드캐스트 스트림 구조로서, 이종의 XML문서의 내용이 실린 XML문서 필드, 및 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스 필드를 포함하고, 인덱스 필드가 XML문서 필드의 앞에 배치되는 것을 특징으로 한다.In order to achieve the above object, a broadcast stream structure having an index according to a preferred embodiment of the present invention is a broadcast stream structure generated from a set of heterogeneous XML documents, and an XML document containing contents of heterogeneous XML documents. A field, and an index field including a location path for a heterogeneous XML document and an address value satisfying the location path, wherein the index field is disposed in front of the XML document field.
주소값은 위치 경로를 만족하는 모든 응답 노드들중에서 최초의 XML노드를 포함하는 버킷의 주소를 의미한다.The address value means the address of the bucket that contains the first XML node among all the response nodes that satisfy the location path.
버킷의 주소는 무선 방송 채널에서 해당 버킷이 방송되는 시간을 나타낸다.The address of the bucket indicates the time when the bucket is broadcast in the wireless broadcast channel.
인덱스 필드는 이종의 XML문서의 식별정보를 추가로 포함한다.The index field further includes identification information of heterogeneous XML documents.
인덱스 필드는 하나의 방송 주기내에서 적어도 한 개 이상 배치된다.At least one index field is disposed in one broadcast period.
인덱스 필드가 하나의 방송 주기내에 두 개 있는 경우, 두번째의 인덱스 필드는 하나의 방송 주기에 후속하는 다음 방송 주기에 실린 이종의 XML문서에 대한 위치 경로 및 상기 위치 경로를 만족하는 주소값을 포함한다.
If there are two index fields in one broadcast period, the second index field includes a location path for heterogeneous XML documents carried in the next broadcast period following one broadcast period and an address value satisfying the location path. .
본 발명의 바람직한 실시양태에 따른 인덱스를 갖는 브로드캐스트 스트림 생성 장치는, 수신되는 이종의 XML문서에 대한 데이터 스트림을 생성하는 데이터 스트림 생성부; 데이터 스트림에서 서로 다른 위치 경로를 갖는 XML요소들의 위치를 식별하는 위치 식별부; 위치 식별부로부터의 정보에 근거하여 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스 엔트리를 생성하는 인덱스 엔트리 생성부; 및 생성되는 인덱스 엔트리의 집합이 되는 인덱스를 생성하는 인덱스 생성부;를 포함한다.Broadcast stream generation apparatus having an index according to a preferred embodiment of the present invention, the data stream generation unit for generating a data stream for the received heterogeneous XML document; A location identifier which identifies a location of XML elements having different location paths in the data stream; An index entry generation unit for generating an index entry including a location path for a heterogeneous XML document and an address value satisfying the location path based on the information from the location identification unit; And an index generator for generating an index that is a set of generated index entries.
데이터 스트림 생성부는 생성된 데이터 스트림을 이전에 생성시킨 XML문서들에 대한 데이터 스트림에 연결시킨다.The data stream generator connects the generated data stream to a data stream for XML documents previously generated.
인덱스 생성부는 이종의 XML문서의 내용이 실린 필드를 포함하는 브로드캐스트 스트림에서 인덱스를 이종의 XML문서의 내용이 실린 필드의 앞에 배치한다.The index generator places the index in front of the field containing the content of the heterogeneous XML document in the broadcast stream including the field containing the content of the heterogeneous XML document.
주소값은 위치 경로를 만족하는 모든 응답 노드들중에서 최초의 XML노드를 포함하는 버킷의 주소를 의미한다.The address value means the address of the bucket that contains the first XML node among all the response nodes that satisfy the location path.
버킷의 주소는 무선 방송 채널에서 해당 버킷이 방송되는 시간을 나타낸다.The address of the bucket indicates the time when the bucket is broadcast in the wireless broadcast channel.
인덱스 엔트리 생성부는 이종의 XML문서의 식별정보를 인덱스 엔트리에 추가한다.The index entry generating unit adds identification information of heterogeneous XML documents to the index entry.
인덱스 생성부는 인덱스를 하나의 방송 주기내에서 적어도 한 개 이상 배치시킨다.
The index generator arranges at least one index within one broadcast period.
본 발명의 바람직한 실시양태에 따른 인덱스를 갖는 브로드캐스트 스트림 생성 방법은, 수신되는 이종의 XML문서에 대한 데이터 스트림을 생성하는 단계; 데이터 스트림에서 서로 다른 위치 경로를 갖는 XML요소들의 위치를 식별하는 단계; 위치 식별된 정보에 근거하여 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스 엔트리를 생성하는 단계; 및 생성되는 인덱스 엔트리의 집합이 되는 인덱스를 생성하는 단계;를 포함한다.According to a preferred embodiment of the present invention, a method of generating a broadcast stream having an index includes: generating a data stream for a received heterogeneous XML document; Identifying locations of XML elements having different location paths in the data stream; Generating an index entry including a location path for a heterogeneous XML document and an address value satisfying the location path based on the location identified information; And generating an index that is a set of generated index entries.
데이터 스트림 생성 단계는 생성된 데이터 스트림을 이전에 생성시킨 XML문서들에 대한 데이터 스트림에 연결시킨다.The data stream generation step connects the generated data stream to the data stream for the XML documents previously generated.
인덱스 생성 단계는 이종의 XML문서의 내용이 실린 필드를 포함하는 브로드캐스트 스트림에서 인덱스를 이종의 XML문서의 내용이 실린 필드의 앞에 배치한다.The index generation step places the index in front of the field containing the content of the heterogeneous XML document in the broadcast stream including the field containing the content of the heterogeneous XML document.
주소값은 위치 경로를 만족하는 모든 응답 노드들중에서 최초의 XML노드를 포함하는 버킷의 주소를 의미한다.The address value means the address of the bucket that contains the first XML node among all the response nodes that satisfy the location path.
버킷의 주소는 무선 방송 채널에서 해당 버킷이 방송되는 시간을 나타낸다.The address of the bucket indicates the time when the bucket is broadcast in the wireless broadcast channel.
인덱스 엔트리 생성 단계는 이종의 XML문서의 식별정보를 인덱스 엔트리에 추가한다.The index entry generation step adds identification information of heterogeneous XML documents to the index entry.
인덱스 생성 단계는 인덱스를 하나의 방송 주기내에서 적어도 한 개 이상 배치시킨다.The index generation step arranges at least one index within one broadcast period.
이러한 구성의 본 발명에 따르면, 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스를 하나의 방송 주기내의 브로드캐스트 스트림에서 제일 앞쪽에 배치하거나 복수개 배치함으로써, 주어진 질의에 대한 목표 문서로의 접근 시간이 단축되고 에너지 효율성이 향상된다.According to the present invention having such a configuration, by placing a plurality of indexes including position paths for heterogeneous XML documents and address values satisfying the position paths in front of the broadcast stream in one broadcast period or by placing a plurality of indexes, The access time to the target document is shortened and the energy efficiency is improved.
도 1은 서버와 다수의 이동 클라이언트가 존재하는 환경을 나타낸 도면이다.
도 2는 원본 XML 데이터를 트리형태로 도시한 도면이다.
도 3은 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 구조를 설명하는 도면이다.
도 4는 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 생성 장치의 블럭구성도이다.
도 5는 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 생성 방법을 설명하는 플로우차트이다.
도 6은 이동 클라이언트측에서 본 발명의 실시예에 따른 브로드캐스트 스트림을 수신하고 질의 처리하는 동작을 설명하는 플로우차트이다.
도 7은 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 구조의 변형예를 설명하는 도면이다.
도 8은 종래의 브로드캐스트 스트림과 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 구조와의 차이를 설명하는 도면이다.1 is a diagram illustrating an environment in which a server and a plurality of mobile clients exist.
2 is a diagram illustrating original XML data in a tree form.
3 is a diagram illustrating a broadcast stream structure having an index according to an embodiment of the present invention.
4 is a block diagram of an apparatus for generating a broadcast stream having an index according to an embodiment of the present invention.
5 is a flowchart illustrating a method of generating a broadcast stream having an index according to an embodiment of the present invention.
6 is a flowchart illustrating an operation of receiving and querying a broadcast stream according to an embodiment of the present invention on the mobile client side.
7 is a view for explaining a modification of the broadcast stream structure having an index according to an embodiment of the present invention.
8 is a diagram illustrating a difference between a conventional broadcast stream and a broadcast stream structure having an index according to an embodiment of the present invention.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 구조, 인덱스를 갖는 브로드캐스트 스트림 생성 장치 및 방법에 대하여 설명하면 다음과 같다. 본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니된다. 따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
Hereinafter, a broadcast stream structure having an index, a broadcast stream generating apparatus having an index, and a method according to an embodiment of the present invention will be described with reference to the accompanying drawings. Prior to the detailed description of the present invention, terms and words used in the present specification and claims should not be construed as limited to ordinary or dictionary terms. Therefore, the embodiments described in this specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention and do not represent all the technical ideas of the present invention. Therefore, It is to be understood that equivalents and modifications are possible.
도 3은 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 구조를 설명하는 도면이다.3 is a diagram illustrating a broadcast stream structure having an index according to an embodiment of the present invention.
본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림은 이종의 스키마(schemas)를 가진 XML문서 집합으로부터 생성된다.A broadcast stream with an index according to an embodiment of the invention is generated from a set of XML documents with heterogeneous schemas.
본 발명의 실시예의 브로드캐스트 스트림(20)은 프리픽스섬머리(PrefixSummary)로 불리우는 새로운 형태의 인덱스가 실리는 인덱스 필드(22) 및 이종의 XML문서의 내용이 실린 XML문서 필드(24a, 24b, 24c, 24d)를 포함한다. 도 3에서는 인덱스 필드(22)가 하나의 방송 주기(1cycle)내에 제일 앞쪽에 배치되고, 후속하여 XML문서 필드(24a, 24b, 24c, 24d)가 배치된다. 즉, 인덱스 필드(22)는 XML 데이터 스트림의 앞에 첨부된다. 도 3에서는 XML문서 필드가 4개인 것으로 도시하였으나, 그 수는 가감될 수 있다.The
인덱스 필드(22)에 실리는 인덱스의 구조에 대해 설명하면 하기와 같다. 먼저, 깊이(depth)가 h인 프리픽스섬머리(PrefixSummary)를 PS(h)라고 하였을 경우, PS(h)는 인덱스 엔트리(p, a)의 집합이다. 여기서, p는 주어진 이종의 XML문서들로부터 추출된 길이 h의 위치 경로를 의미한다. a는 브로드캐스트 스트림에서 위치 경로 p를 만족하는 모든 응답 노드들중에서 처음으로 나타나는 XML노드를 포함하는 버킷의 주소를 의미한다. 이와 같이 인덱스의 구조는 인덱스 엔트리(p, a)의 집합인 PS(h)로 표현된다.The structure of the index carried in the
위치 경로의 길이는 경로에 포함된 위치 단계(location steps)의 수를 의미한다. 본 발명의 실시예에서는 인덱스를 위해 고려되어야 하는 위치 경로들은 XML문서에서 루트 엘리먼트부터 시작되는 것으로 가정한다. 또한, 버킷의 주소는 무선 방송 채널에서 해당 버킷이 방송되는 시간(또는 해당 버킷의 배달시간)을 나타낸다.The length of the location path means the number of location steps included in the path. In the embodiment of the present invention, it is assumed that the location paths to be considered for the indexes start from the root element in the XML document. In addition, the address of the bucket indicates the time (or delivery time of the bucket) when the bucket is broadcast in the wireless broadcast channel.
도 3의 인덱스 필드(22)에 실리는 인덱스는 이종의 XML문서의 식별정보(DocID)를 나타내는 제 1인덱스 엔트리, 이종의 XML문서에 대한 위치 경로(path)를 나타내는 제 2인덱스 엔트리, 및 위치 경로를 만족하는 주소값(Ari.)을 나타내는 제 3인덱스 엔트리를 포함한다.The index shown in the
도 3은 깊이 2의 프리픽스섬머리가 포함된 브로드캐스트 스트림을 나타내고 있다. 인덱스는 XML 데이터 스트림에서 파생된 길이 2에 해당하는 서로 다른 위치 경로에 대한 링크 어드레스들을 포함한다. 예를 들어, 위치 경로 "/S/Z"에 해당하는 인덱스 엔트리는 해당 위치 경로를 만족하는 엘리먼트가 XML 데이터 스트림에서 최초로 나타나는 버킷(bucket)에 대한 주소(t6)를 포함하고 있다.
Figure 3 shows a broadcast stream with a prefix summation of depth two. The index contains link addresses for different location paths corresponding to
도 4는 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 생성 장치의 블럭구성도이다. 인덱스를 갖는 브로드캐스트 스트림 생성 장치는 서버에 갖추어지는 것으로 이해하면 된다4 is a block diagram of an apparatus for generating a broadcast stream having an index according to an embodiment of the present invention. It is understood that a broadcast stream generating device having an index is provided in a server.
도 4의 브로드캐스트 스트림 생성 장치는 수신부(30), 데이터 스트림 생성부(32), 위치 식별부(34), 인덱스 엔트리 생성부(36), 및 인덱스 생성부(38)를 포함한다.The broadcast stream generating apparatus of FIG. 4 includes a
수신부(30)는 다수의 이종의 XML문서를 수신한다.The
데이터 스트림 생성부(32)는 수신부(30)에 수신되는 각각의 이종의 XML문서에 대해 스트리밍 기법(σ)을 이용하여 데이터 스트림을 생성한다. 여기서, 스트리밍 기법은 단순 텍스트 나열 방법 또는 일반적으로 널리 사용하는 스트리밍 방법을 사용하여도 무방하다. 한편으로는, 스트리밍 기법은 S-Node 또는 DIX와 같은 분산 색인들을 이용하는 기존의 XML 스트리밍 방법이어도 된다. 데이터 스트림 생성부(32)는 생성한 데이터 스트림을 이전에 생성된 XML문서들에 대한 데이터 스트림에 연결시킨다.The
위치 식별부(34)는 데이터 스트림 생성부(32)에 의해 생성된 XML 데이터 스트림에서 서로 다른 위치 경로를 갖는 XML요소들의 위치를 식별(검출)한다.The
인덱스 엔트리 생성부(36)는 위치 식별부(34)로부터의 정보에 근거하여 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스 엔트리를 생성한다.The
인덱스 생성부(38)는 인덱스 엔트리 생성부(36)에 의해 생성되는 인덱스 엔트리의 집합이 되는 인덱스를 생성한다. 즉, 인덱스 생성부(38)는 전체 XML 데이터 스트림에서 추출된 인덱스 엔트리에 기반하여 인덱스(도 3의 PS(h))를 생성한다. 인덱스 생성부(38)는 생성한 인덱스를 배치함에 있어서 이종의 XML문서의 내용이 실린 필드를 포함하는 브로드캐스트 스트림에서 이종의 XML문서의 내용이 실린 필드의 앞에 배치한다. 인덱스 생성부(38)는 인덱스를 하나의 방송 주기내에서 적어도 한 개 이상 배치시킬 수도 있다.
The
도 5는 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 생성 방법을 설명하는 플로우차트이다.5 is a flowchart illustrating a method of generating a broadcast stream having an index according to an embodiment of the present invention.
먼저, 수신부(30)는 다수의 이종의 XML문서를 수신한다(S10). 수신되는 다수의 이종의 XML문서는 데이터 스트림 생성부(32)에게로 전달된다.First, the
데이터 스트림 생성부(32)는 수신부(30)로부터의 각각의 이종의 XML문서에 대해 스트리밍 기법을 이용하여 데이터 스트림을 생성한다(S12). 데이터 스트림 생성부(32)에서의 스트리밍 기법은 단순 텍스트 나열 방법일 수도 있고 S-Node 또는 DIX와 같은 분산 색인들을 이용하는 기존의 XML 스트리밍 방법일 수도 있다.The
데이터 스트림 생성부(32)는 생성한 데이터 스트림을 이전에 생성된 XML문서들에 대한 데이터 스트림에 연결시킨다(S14).The
이후, 위치 식별부(34)는 데이터 스트림 생성부(32)에 의해 생성된 XML 데이터 스트림에서 서로 다른 위치 경로를 갖는 XML요소들의 위치를 식별(검출)한다(S16).Thereafter, the
인덱스 엔트리 생성부(36)는 위치 식별부(34)에서 위치 식별된 정보를 근거로 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스 엔트리를 생성한다(S18). 여기서, 위치 경로는 데이터 스트림에서 해당 XML문서의 내용이 실린 위치까지의 접근 경로를 의미하고, 주소값은 데이터 스트림에서 해당 위치 경로를 만족하는 모든 응답 노들중에서 처음으로 나타나는 XML노드를 포함하는 버킷의 주소(즉, 무선 방송 채널에서 해당 버킷이 방송되는 시간(또는 해당 버킷의 배달시간))를 의미한다. The index
생성된 인덱스 엔트리는 인덱스 생성부(38)에게로 전달된다.The generated index entry is transferred to the
그에 따라, 인덱스 생성부(38)는 인덱스 엔트리 생성부(36)로부터의 인덱스 엔트리의 집합이 되는 인덱스를 생성한다(S20). 즉, 인덱스 생성부(38)는 전체 XML 데이터 스트림에서 추출된 인덱스 엔트리에 기반하여 PS(h)로 표현되는 인덱스를 생성한다. Accordingly, the
이후, 인덱스 생성부(38)는 생성한 인덱스를 이종의 XML문서의 내용이 실린 필드를 포함하는 브로드캐스트 스트림에서 이종의 XML문서의 내용이 실린 필드의 앞에 첨부시킨다. 인덱스 생성부(38)는 인덱스가 첨부된 브로드캐스트 스트림을 최종의 브로드캐스트 스트림으로 하여 출력한다(S22).Thereafter, the
하기의 표 1에는 브로드캐스트 스트림 생성 알고리즘을 예시한다.Table 1 below illustrates a broadcast stream generation algorithm.
OUTPUT:XML broadcast stream S
1 IndexEntries:=φ; DataStream:=φ;
2 FOR-EACH(XML document d in D){
3 Generate broadcast stream Sd of d using a streaming method σ;
4 DataStream:=DataStream∥Sd;
5 Paths:=φ;
6 FOR-EACH(element E in Sd in the order of appearance in Sd){
7 p:=prefix of length h of the location path specification of E;
8 IF(p is not in paths){
9 a:=address of the bucket in DataStream which contains E;
10 IndexEntries:=IndexEntries U(p,a);
11 Paths:=Paths U p;
12 }
13 }
14 }
15 Construct PS(h) from IndexEntries;
16 Place PS(h) and DataStream into a broadcast stream S;
17 RETURN S; INPUT : a set D of XML documents, path length h
OUTPUT : XML broadcast stream S
1 IndexEntries : = φ ; DataStream : = φ ;
2 FOR-EACH (XML document d in D ) {
3 Generate broadcast stream Sd of d using a streaming method σ;
4 DataStream : = DataStream ∥ Sd ;
5 Paths : = φ ;
6 FOR-EACH (element E in Sd in the order of appearance in Sd ) {
7 p: = prefix of length h of the location path specification of E ;
8 IF ( p is not in paths ) {
9 a: = address of the bucket in DataStream which contains E ;
10 IndexEntries : = IndexEntries U (p, a);
11 Paths : = Paths U p;
12}
13}
14}
15 Construct PS (h) from IndexEntries ;
16 Place PS (h) and DataStream into a broadcast stream S ;
17 RETURN S ;
표 1의 경우, 각 XML문서에 대해 특정 스트리밍 기법(σ)을 이용하여 브로드캐스트 스트림(Sd)을 생성하고, 생성한 브로드캐스트 스트림을 이전에 생성된 XML문서들에 대한 스트림에 연결시킨다(라인 3~4 참조). 라인 6~12에 나타낸 바와 같이 생성된 XML 데이터 스트림에 대해, 서로 다른 위치 경로를 가진 XML 엘리먼트들의 위치를 식별하여 (위치 경로, 최초 결과 노드에 대한 주소값) 형식의 프리픽스섬머리 인덱스 엔트리를 생성한다. 마지막으로, 전체 XML데이터 스트림으로부터 추출된 인덱스 엔트리에 기반하여 프리픽스섬머리 인덱스 구조를 생성하여 XML 스트림 앞부분에 첨부한다(라인 15~16 참조).
In Table 1, for each XML document, a broadcast stream S d is generated using a specific streaming scheme (σ), and the generated broadcast stream is connected to the streams for previously generated XML documents ( See lines 3-4). For the XML data stream generated as shown in lines 6-12, identify the locations of XML elements with different location paths and create a prefix summation index entry of the form (location path, address value for the first result node). do. Finally, based on the index entry extracted from the entire XML data stream, a prefix summation index structure is created and attached to the beginning of the XML stream (see lines 15-16).
도 6은 이동 클라이언트측에서 본 발명의 실시예에 따른 브로드캐스트 스트림을 수신하고 질의 처리하는 동작을 설명하는 플로우차트이다. 6 is a flowchart illustrating an operation of receiving and querying a broadcast stream according to an embodiment of the present invention on the mobile client side.
이하에서는 이동 클라이언트가 단순 위치 경로에 대한 질의를 사용하는 것으로 가정한다. 또한, 이동 클라이언트에는 프리픽스섬머리(PrefixSummary)를 이용하여 브로드캐스트 스트림을 수신하고 질의 처리할 수 있는 프로그램이 저장된 모듈이 내장된 것으로 간주한다. 이동 클라이언트와 서버간에는 프로토콜이 맞추어진 것으로 한다.In the following, it is assumed that a mobile client uses a query for a simple location path. In addition, the mobile client is considered to have a built-in module that stores a program capable of receiving and querying a broadcast stream using a prefixsummary. It is assumed that the protocol is matched between the mobile client and the server.
이동 클라이언트는 서버에서 브로드캐스팅되는 브로드캐스트 스트림의 최초 수신 위치에서 가장 근접한 인덱스(프리픽스섬머리)를 검색한다(S30). 이때, 각 버킷은 가장 근접한 인덱스의 위치를 나타내는 주소(PSLink)와 버킷의 형식을 나타내는 유형(TYPE)을 포함하는 것으로 가정한다. 따라서, 이동 클라이언트는 스트림 수신 시점과 상관없이 언제든지 인덱스의 가장 첫 버킷을 수신가능하다.The mobile client searches for the index (prefix sumhead) closest to the initial reception position of the broadcast stream broadcast from the server (S30). In this case, it is assumed that each bucket includes an address PSLink indicating the location of the nearest index and a type indicating the type of the bucket. Therefore, the mobile client can receive the first bucket of the index at any time, regardless of when the stream is received.
이후, 이동 클라이언트는 주어진 질의에 부합되는 위치 경로에 해당하는 엔트리를 검색한다(S32).Thereafter, the mobile client searches for an entry corresponding to a location path corresponding to the given query (S32).
해당 엔트리가 존재하면 해당 엔트리에 포함된 주소값을 이용하여 다른 버킷의 수신을 생략하고 해당 버킷을 직접 수신한다(S34).If the entry exists, the reception of another bucket is omitted using the address value included in the entry and the bucket is directly received (S34).
그리고 나서, 관련 XML문서에서 위치 경로를 만족하는 첫번째 노드를 수신한다(S36).Then, the first node that satisfies the location path in the associated XML document is received (S36).
그 후, 이동 클라이언트는 위치 경로를 만족하는 모든 결과 집합을 탐색하기 위해 선택된 XML문서를 계속해서 탐색한다(S38). 그에 따라, 스트림에서 질의의 결과값들만 선택적으로 수신할 수 있게 된다.Thereafter, the mobile client continues to search the selected XML document to search all the result sets satisfying the location path (S38). Accordingly, only the results of the query in the stream can be selectively received.
하기의 표 2에는 이동 클라이언트가 프리픽스섬머리(PrefixSummary)를 이용하여 브로드캐스트 스트림을 수신하고 질의 처리하는 알고리즘을 예시한다.Table 2 below illustrates an algorithm for a mobile client to receive and query a broadcast stream using a prefixsummary.
OUTPUT:a set of XML nodes satisfying p
1 Result:=φ;
2 Read the current bucket B on the broadcast channel;
3 IF(B.Type!=PS-BUCKET){
4 Read the next nearest PrefixSummary using B.PSLink;
5 }
6 Find the index entry IE in PrefixSummary that matches a prefix of p;
//Find the first answer node a1 in the stream based on IE.address
7 a1:=getFirstAnswer(IE.address);
8 Result:=Result U a1;
9 an:=a1;
10 WHILE(there exists a remaining answer in the stream){
//Find the next answer node an+1 in the stream;
11 an+1:=getNextAnswer(an);
12 Result:=Result Uan+1;
13 an:=an+1;
14 }
15 RETURN Result; INPUT : a user query in the form of a location path p
OUTPUT : a set of XML nodes satisfying p
1 Result : = φ ;
2 Read the current bucket B on the broadcast channel;
3 IF ( B.Type ! = PS-BUCKET) {
4 Read the next nearest PrefixSummary using B.PSLink ;
5}
6 Find the index entry IE in PrefixSummary that matches a prefix of p ;
// Find the first answer node a 1 in the stream based on IE.address
7 a 1 : = getFirstAnswer (IE.address) ;
8 Result : = Result U a 1 ;
9 a n : = a 1 ;
10 WHILE (there exists a remaining answer in the stream) {
// Find the next answer node a n + 1 in the stream;
11 a n + 1 : = getNextAnswer (a n );
12 Result : = Result U an + 1 ;
13 a n : = a n + 1 ;
14}
15 RETURN Result ;
표 2의 경우, 먼저 이동 사용자는 방송 스트림 최초 수신 위치에서 가장 근접한 PrefixSummary를 검색한다(라인 2~5 참조). 이때, 각 버킷은 가장 근접한 PrefixSummary의 위치를 나타내는 주소(PSLink)와 버킷의 형식을 나타내는 TYPE을 포함하는 것으로 가정한다. 따라서, 이동 사용자는 스트림 수신 시점과 상관 없이 가장 가까운 PrefixSummary를 수신 가능하다. 다음으로 이동 사용자는 주어진 질의에 부합하는 위치 경로 p에 해당하는 엔트리를 검색한다(라인 6 참조). 해당 엔트리(즉, p를 만족하는 엔트리)가 존재하면 엔트리에 포함된 주소 값을 이용하여 다른 버킷의 수신을 생략하고 해당 버킷을 직접 수신한다. 라인 7에 기재된 getFirstAnswer() 연산을 이용하여 관련 XML 문서에서 위치 경로 p 를 만족하는 첫 번째 노드를 수신한다. 그 후, 이동 사용자는 p를 만족하는 모든 결과 집합을 탐색하기 위해 선택된 XML 문서를 계속해서 탐색한다(라인 9~14 참조). 여기서 11번째 줄에 기술된 getNextAnswer() 연산은 스트림에서 XML스트림 구조에서 사용된 접근 방법을 이용하여 다음 결과 노드를 효율적으로 검색한다. 예를 들어, S-Node 기법 에서는 S-node들에 포함된 인덱스들 즉, 같은 이름을 가진 다음 노드에 대한 인덱스 주소인 same-tag sibling link와 같은 경로를 가진 다음 노드에 대한 인덱스 주소인 same-path link를 사용하여 스트림에서 질의의 결과 값들만 선택적으로 수신할 수 있다.
In the case of Table 2, the mobile user first searches for the PrefixSummary closest to the broadcast stream first reception position (see
도 7은 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 구조의 변형예를 설명하는 도면이다.7 is a view for explaining a modification of the broadcast stream structure having an index according to an embodiment of the present invention.
도 7에서는 인덱스를 여러 번 복제함으로써 인덱스까지의 접근 시간을 단축시킨다. 따라서, 이동 클라이언트는 접근 시간 효율성이 개선된다. 본 발명의 변형예에서는 효율성 측면을 고려하여 (1, M) 인덱스 복제 기법을 이용하였다. (1, M) 인덱스 복제 기법은 인덱스 정보를 하나의 방송 주기에 M번에 걸쳐 중복적으로 배치함으로써, 전체 데이터의 1/M 부분 마다 동일하게 인덱스가 출현하도록 한다. 이와 같은 (1, M) 인덱스 복제 기법은 인덱스 생성부(38)에서 사용된다. 즉, 인덱스 생성부(38)는 인덱스를 하나의 방송 주기내에서 적어도 한 개 이상 배치시킨다. 이러한 (1, M) 인덱스 복제 기법이 이용될 경우에는 상기의 표 1에 기재된 브로드캐스트 스트림 생성 알고리즘은 수정되어야 하겠으나, 표 2의 질의 처리 알고리즘은 수정이 필요없게 된다.In FIG. 7, the access time to the index is shortened by replicating the index several times. Thus, the mobile client has improved access time efficiency. In the modified example of the present invention, the (1, M) index replication technique is used in consideration of efficiency. The (1, M) index duplication scheme allows the index information to appear in every 1 / M portion of the entire data by repeatedly arranging the index information in one broadcasting period. This (1, M) index replication scheme is used in the
도 7은 PrefixSummary PS(2)를 하나의 방송 주기에 복제하여 배치한 예이다. 도 7에서 복제된 PrefixSummary를 PS2라고 할 때, 위치 경로 "/a/b", "/a/c", "/r/a", "/r/s"에 해당하는 인덱스 엔트리의 주소값은 원래의 PrefixSummary PS1과는 다르게 표현된다. 왜냐하면 이 경로들에 대한 주소값들은 다음 방송 주기에 해당하기 때문에 전달되는 시간값이 달라지기 때문이다. 7 shows an example in which
도 7에 나타난 바와 같이 만약 이동 사용자가 질의 처리를 위해 브로드캐스트 스트림을 수신하기 시작한 시점(tune-in point)이 문서 d1 또는 d2의 스트림상에 있고, 질의에 대한 목표 문서가 d4에 존재한다고 할 때, 이동 사용자는 다음 방송 주기의 PS1까지 대기할 필요 없이 다음에 나오는 PS2의 인덱스 엔트리를 이용하여 같은 주기에 존재하는 d4의 첫 번째 결과(즉, 응답 노드)를 찾을 수 있다, 따라서 데이터 스트림에 대한 접근 시간은 복제된 인덱스들을 이용하여 단축된다. 즉, 이에 의해 질의 처리에 있어서 대기시간(latency)를 줄일 수 있게 된다.As shown in FIG. 7, if the mobile user starts to receive a broadcast stream for query processing (tune-in point) on the stream of document d 1 or d 2 , and the target document for the query is on d 4 . When present, the mobile user can find the first result of d 4 (that is, the response node) that exists in the same period using the next PS 2 index entry without having to wait until PS 1 of the next broadcast period. Therefore, access time to the data stream is shortened by using replicated indexes. In other words, latency can be reduced in query processing.
도 7에서는 인덱스 생성과 질의 처리 방법의 단순화를 위해 d3내에 존재하는 PS2와 같이 PrefixSummary의 복제본이 특정 문서의 스트림내에 위치할 경우 다음 방송 주기에서 문서 브로드캐스트를 위한 주소들을 저장하고 있다고 가정한다.
In FIG. 7, it is assumed that a copy of PrefixSummary is stored in the next broadcast period when a copy of PrefixSummary is located in a stream of a specific document such as PS 2 existing in d 3 to simplify index generation and query processing. .
도 8은 종래의 브로드캐스트 스트림과 본 발명의 실시예에 따른 인덱스를 갖는 브로드캐스트 스트림 구조와의 차이를 설명하는 도면으로서, 도 8의 (a)는 프리픽스섬머리(PrefixSummary)없이 기존의 스트리밍 방법에 의해 생성된 이종의 XML문서들의 스트림상에서의 질의 평가 과정을 도시한 것이고, 도 8의 (b)는 프리픽스섬머리(PrefixSummary)를 가진 브로드캐스트 스트림상에서의 질의 평가 과정을 도시한 것이다 FIG. 8 is a diagram illustrating a difference between a conventional broadcast stream and a broadcast stream structure having an index according to an embodiment of the present invention. FIG. 8 (a) shows a conventional streaming method without a prefixsummary. FIG. 8B illustrates a query evaluation process on a stream of heterogeneous XML documents generated by FIG. 8B. FIG. 8B illustrates a query evaluation process on a broadcast stream having a prefix summation.
도 8의 (a)의 경우, 이동 클라이언트는 브로드캐스트 스트림상에서 목표 데이터에 액세스하기 위해, 제일 먼저 스트림상에서 첫번째 수신 지점(tune-in point)(즉, probe wait)에 근접한 XML문서의 시작 버킷을 찾는다. XML문서의 시작 버킷을 도달한 후에는 이동 클라이언트는 무선으로 전송되는 후속의 XML문서들의 시작 버킷을 조사하는 것에 의해 그 주어진 사용자 질의에 응답할 수 있는 관련 XML문서를 찾는다.In the case of Fig. 8A, the mobile client first accesses the starting bucket of the XML document close to the first tune-in point (i.e. probe wait) on the stream to access the target data on the broadcast stream. Find. After reaching the start bucket of the XML document, the mobile client finds the relevant XML document that can respond to the given user query by examining the start bucket of subsequent XML documents sent over the air.
이와 같이, 도 8의 (a)는 원하는 목표 문서(target document)를 액세스하기 위해서는 목표 문서의 앞에 존재하는 여러 문서들의 시작 버킷을 순차적으로 검색하여 원하는 목표 문서를 찾는다. As such, FIG. 8A sequentially searches the starting buckets of various documents existing in front of the target document to find the desired target document in order to access the desired target document.
이와 같이 하게 되면 원하는 목표 문서가 제일 뒤에 있는 경우 모든 XML문서들의 시작 버킷을 찾는 과정에 의해 목표 문서까지의 도달 시간이 상당히 길게 된다.In this case, if the desired target document is at the end, the arrival time to the target document is considerably longer by finding the starting bucket of all XML documents.
그러나, 도 8의 (b)에서와 같이 이종의 XML문서에 대한 위치 경로 및 위치 경로를 만족하는 주소값을 포함하는 인덱스(프리픽스섬머리(PrefixSummary))를 이용하게 되면 원하는 목표 문서가 아닌 문서의 버킷 수신은 생략하고 원하는 목표 문서에게로 바로 이동하게 된다. 그에 따라, 도 8의 (a)에 비해서는 원하는 목표 문서에게로 신속하게 접근할 수 있게 된다.
However, when using the index (PrefixSummary) including the location path and the address value satisfying the location path for heterogeneous XML documents as shown in FIG. It will skip the bucket reception and go directly to the desired target document. Accordingly, it is possible to quickly access a desired target document as compared with FIG. 8A.
한편, 본 발명은 상술한 실시예로만 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위내에서 수정 및 변형하여 실시할 수 있고, 그러한 수정 및 변형이 가해진 기술사상 역시 이하의 특허청구범위에 속하는 것으로 보아야 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. You must see.
30 : 수신부 32 : 데이터 스트림 생성부
34 : 위치 식별부 36 : 인덱스 엔트리 생성부
38 : 인덱스 생성부30: receiver 32: data stream generator
34: location identification unit 36: index entry generation unit
38: index generator
Claims (12)
상기 브로드캐스트 스트림은 상기 이종의 XML문서의 내용이 실린 XML문서 필드, 및 상기 이종의 XML문서에 대한 위치 경로 및 상기 위치 경로를 만족하는 주소값을 포함하는 인덱스 필드를 포함하고,
상기 인덱스 필드가 상기 XML문서 필드의 앞에 배치되며,
하나의 방송 주기 내에 두 개 이상의 상기 인덱스 필드가 포함되며, 두 번째 이상의 인덱스 필드는 상기 하나의 방송 주기에 후속하는 다음 방송 주기에 실린 이종의 XML문서에 대한 위치 경로 및 상기 위치 경로를 만족하는 주소값을 포함하는 구조를 갖는 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림을 기록한 컴퓨터 판독 가능 기록매체.A computer-readable recording medium that records a broadcast stream generated from a set of heterogeneous XML documents.
The broadcast stream includes an XML document field containing contents of the heterogeneous XML document, and an index field including a location path for the heterogeneous XML document and an address value satisfying the location path.
The index field is placed in front of the XML document field,
Two or more index fields are included in one broadcast period, and the second or more index fields correspond to a location path for a heterogeneous XML document carried in the next broadcast period following the one broadcast period and an address satisfying the location path. A computer-readable recording medium having recorded therein a broadcast stream having an index, the structure comprising a value.
상기 주소값은 상기 위치 경로를 만족하는 모든 응답 노드들중에서 최초의 XML노드를 포함하는 버킷의 주소인 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림을 기록한 컴퓨터 판독 가능 기록매체.The method according to claim 1,
And the address value is an address of a bucket including the first XML node among all the response nodes satisfying the location path.
상기 데이터 스트림에서 서로 다른 위치 경로를 갖는 XML요소들의 위치를 식별하는 위치 식별부;
상기 위치 식별부로부터의 정보에 근거하여 상기 이종의 XML문서에 대한 위치 경로 및 상기 위치 경로를 만족하는 주소값을 포함하는 인덱스 엔트리를 생성하는 인덱스 엔트리 생성부; 및
상기 생성되는 인덱스 엔트리의 집합이 되는 인덱스를 생성하는 인덱스 생성부;를 포함하며,
상기 인덱스 엔트리 생성부는 하나의 방송 주기 내에 두 개 이상의 상기 인덱스가 포함되며, 두 번째 이상의 인덱스는 상기 하나의 방송 주기에 후속하는 다음 방송 주기에 실린 이종의 XML문서에 대한 위치 경로 및 상기 위치 경로를 만족하는 주소값을 포함하도록 하는 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림 생성 장치.A data stream generator for generating a data stream for the received heterogeneous XML document;
A location identifier which identifies a location of XML elements having different location paths in the data stream;
An index entry generator for generating an index entry including a location path for the heterogeneous XML document and an address value satisfying the location path based on the information from the location identifier; And
And an index generator for generating an index that is a set of the generated index entries.
The index entry generating unit includes two or more indexes in one broadcast period, and the second or more indexes indicate a location path and a location path for heterogeneous XML documents carried in a next broadcast period following the one broadcast period. A broadcast stream generating device having an index, characterized by including an address value that satisfies.
상기 데이터 스트림 생성부는 상기 생성된 데이터 스트림을 이전에 생성시킨 XML문서들에 대한 데이터 스트림에 연결시키는 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림 생성 장치.The method according to claim 5,
And the data stream generator is configured to connect the generated data stream to a data stream for previously generated XML documents.
상기 인덱스 생성부는 상기 이종의 XML문서의 내용이 실린 필드를 포함하는 브로드캐스트 스트림에서 상기 인덱스를 상기 이종의 XML문서의 내용이 실린 필드의 앞에 배치하는 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림 생성 장치.The method according to claim 5,
And the index generator is configured to place the index in front of the field containing the content of the heterogeneous XML document in the broadcast stream including the field containing the content of the heterogeneous XML document. .
상기 데이터 스트림에서 서로 다른 위치 경로를 갖는 XML요소들의 위치를 식별하는 단계;
상기 위치 식별된 정보에 근거하여 상기 이종의 XML문서에 대한 위치 경로 및 상기 위치 경로를 만족하는 주소값을 포함하는 인덱스 엔트리를 생성하는 단계; 및
상기 생성되는 인덱스 엔트리의 집합이 되는 인덱스를 생성하는 단계;를 포함하며,
상기 인덱스 엔트리를 생성하는 단계는 하나의 방송 주기 내에 두 개 이상의 상기 인덱스가 포함되며, 두 번째 이상의 인덱스는 상기 하나의 방송 주기에 후속하는 다음 방송 주기에 실린 이종의 XML문서에 대한 위치 경로 및 상기 위치 경로를 만족하는 주소값을 포함하도록 하는 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림 생성 방법.Generating a data stream for the received heterogeneous XML document;
Identifying locations of XML elements having different location paths in the data stream;
Generating an index entry including a location path for the heterogeneous XML document and an address value satisfying the location path based on the location identified information; And
Generating an index that is a set of the generated index entries;
The generating of the index entry includes two or more of the indexes within one broadcast period, and the second or more indexes include location paths for heterogeneous XML documents carried in the next broadcast period following the one broadcast period, and And generating an address value satisfying the location path.
상기 데이터 스트림 생성 단계는 상기 생성된 데이터 스트림을 이전에 생성시킨 XML문서들에 대한 데이터 스트림에 연결시키는 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림 생성 방법.The method according to claim 9,
The data stream generating step is a broadcast stream generation method having an index, characterized in that for linking the generated data stream to the data stream for the previously generated XML documents.
상기 인덱스 생성 단계는 상기 이종의 XML문서의 내용이 실린 필드를 포함하는 브로드캐스트 스트림에서 상기 인덱스를 상기 이종의 XML문서의 내용이 실린 필드의 앞에 배치하는 것을 특징으로 하는 인덱스를 갖는 브로드캐스트 스트림 생성 방법.The method according to claim 9,
The index generation step includes generating a broadcast stream having an index, wherein the index is placed in front of a field containing the content of the heterogeneous XML document in a broadcast stream including the field containing the content of the heterogeneous XML document. Way.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110021051A KR101282501B1 (en) | 2011-03-09 | 2011-03-09 | Computer readable record medium where broadcast stream with index is recorded, apparatus for generating broadcast stream with index and method of generating broadcast stream with index |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110021051A KR101282501B1 (en) | 2011-03-09 | 2011-03-09 | Computer readable record medium where broadcast stream with index is recorded, apparatus for generating broadcast stream with index and method of generating broadcast stream with index |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120104652A KR20120104652A (en) | 2012-09-24 |
KR101282501B1 true KR101282501B1 (en) | 2013-07-04 |
Family
ID=47111906
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110021051A KR101282501B1 (en) | 2011-03-09 | 2011-03-09 | Computer readable record medium where broadcast stream with index is recorded, apparatus for generating broadcast stream with index and method of generating broadcast stream with index |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101282501B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100034990A (en) * | 2008-09-25 | 2010-04-02 | 삼성전자주식회사 | Method and apparatus for generating integrated metadata |
-
2011
- 2011-03-09 KR KR1020110021051A patent/KR101282501B1/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100034990A (en) * | 2008-09-25 | 2010-04-02 | 삼성전자주식회사 | Method and apparatus for generating integrated metadata |
Also Published As
Publication number | Publication date |
---|---|
KR20120104652A (en) | 2012-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2005264926B2 (en) | Efficient extraction of XML content stored in a LOB | |
KR100493882B1 (en) | Query process method for searching xml data | |
US8935267B2 (en) | Apparatus and method for executing different query language queries on tree structured data using pre-computed indices of selective document paths | |
US7840590B2 (en) | Querying and fragment extraction within resources in a hierarchical repository | |
US20060206466A1 (en) | Evaluating relevance of results in a semi-structured data-base system | |
US8650182B2 (en) | Mechanism for efficiently searching XML document collections | |
CN102122285A (en) | Data cache system and data inquiry method | |
US20060036631A1 (en) | High performance XML storage retrieval system and method | |
CN103530415A (en) | Natural language search method and system compatible with keyword search | |
Park et al. | Lineage encoding: an efficient wireless XML streaming supporting twig pattern queries | |
Boyer et al. | Exclusive XML canonicalization, version 1.0 | |
US20130297657A1 (en) | Apparatus and Method for Forming and Using a Tree Structured Database with Top-Down Trees and Bottom-Up Indices | |
Sundaramoorthy et al. | Semantic Keyword Search on XML | |
KR101282501B1 (en) | Computer readable record medium where broadcast stream with index is recorded, apparatus for generating broadcast stream with index and method of generating broadcast stream with index | |
KR100776823B1 (en) | Method for generating and selective receiving xml stream according to simple path query and apparatus thereof | |
JP2007533008A (en) | Index for accessing XML data | |
US20120078872A1 (en) | Method, search server, and system for mobile search interface adaptation | |
CN107729451A (en) | A kind of method of data in lookup EDB database source files | |
Alexander et al. | RDF object type and reification in the database | |
CN103136304B (en) | Article processing method and device | |
KR100290665B1 (en) | Method for storing and managing structured document in relational database | |
CN105608092B (en) | Method and device for creating dynamic index | |
KR20090014077A (en) | Apparatus and method for a query express | |
Kinutani et al. | Identifying result subdocuments of XML search conditions | |
Xing et al. | X2R: A system for managing XML documents and key constraints using RDBMS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20160225 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20170328 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |