FI127113B - Information search - Google Patents

Information search Download PDF

Info

Publication number
FI127113B
FI127113B FI20085597A FI20085597A FI127113B FI 127113 B FI127113 B FI 127113B FI 20085597 A FI20085597 A FI 20085597A FI 20085597 A FI20085597 A FI 20085597A FI 127113 B FI127113 B FI 127113B
Authority
FI
Finland
Prior art keywords
search
response
information
request
query
Prior art date
Application number
FI20085597A
Other languages
Finnish (fi)
Swedish (sv)
Other versions
FI20085597A (en
FI20085597A0 (en
Inventor
Teemu Rantanen
Original Assignee
Tekla Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tekla Corp filed Critical Tekla Corp
Priority to FI20085597A priority Critical patent/FI127113B/en
Publication of FI20085597A0 publication Critical patent/FI20085597A0/en
Priority to US12/248,280 priority patent/US8171008B2/en
Publication of FI20085597A publication Critical patent/FI20085597A/en
Application granted granted Critical
Publication of FI127113B publication Critical patent/FI127113B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Description

TiedonhakuInformation retrieval

AlaArea

Keksintö liittyy tiedonhakuun tietovarastosta.The invention relates to information retrieval from a data warehouse.

Taustaabackground

Tietoliikenneteknologian kehittyminen, erityisesti langattoman tietoliikenneteknologian ja käyttäjäpäätelaitteiden, on lisännyt tiedonhakuja kenttä-olosuhteissa. Tiedonhakuun liittyvä ongelma kenttäolosuhteissa on, että kun tiedonsiirtolinkki on hidas, voi tiedonsiirto kestää kauan varsinkin, jos haetaan suuri määrä tietoa. US 6766315 liittyy käyttäjän päätelaitteessa olevan tiedon määräaikaiseen päivittämiseen ja siihen, kuinka saadaan muutokset näytettyä käyttäjälle. US 6638 314 esittää ratkaisuja, joissa hakutuloksina palautetaan ne dokumentit, jotka ovat muuttuneet ensimmäisen /jonkun muun määritellyn haun jälkeen, jos hakija etsii muuttuneita dokumentteja.Advances in telecommunication technology, especially in wireless telecommunication technology and user terminals, have increased information search in the field. The problem with data retrieval in field conditions is that when the data link is slow, data transfer may take a long time, especially if a large amount of data is retrieved. US 6766315 relates to the periodic updating of information in a user's terminal and how to display changes to a user. US 6638 314 discloses solutions that return as search results documents that have changed since the first / other specified search if the applicant searches for changed documents.

Housel, B.C. et al., “WebExpress: A client/intercept based system for optimizing Web browsing in a wireless environment” esittää sieppausmallin, jossa http-pyyntöjä sieppaamalla vähennetään tiedonsiirtoa langattoman linkin yli niin, että tietoa haettaessa käytetään asiakkaan muistissa olevaa tietoa, ja kun halutaan etäkäyttää ohjelmaa, hyödynnetään muutosvirtaa prosessoinnin tuloksen palauttamisessa. US 2006/0069719 esittää ratkaisun, jossa tieto segmentoidaan ja tietosegmentit tallennetaan palvelimen puolelle ja asiakkaan puolelle. US 2006/0069719:ssa palvelin lähettää vasteena tietopyynnölle asiakkaalle viitteitä segmentteihin, ja asiakas hakee viitatut segmentit muististaan. Mikäli asiakas vastaanottaa palvelimelta tuntemattoman viitteen, pyytää asiakas viitatun segmentin tiedon ja vastaanottaa tiedon palvelimelta. Kun tieto muuttuu palvelimella, palvelin luo uuden segmentin, lähettää sen viitteen, muita sidontoja (bindings) ja itse tiedon vastauksessa asiakkaalle. Ratkaisun ongelmana on, että jos tietoa päivitetään pirstoutuneesti, mitä luultavimmin päädytään tilanteeseen, jossa sen sijaan, että lähetetäisiin viitteitä segmentteihin, luodaan uusia segmenttejä ja lähetetään segmenttiviitteitä, niiden sidontoja ja tieto kokonaisuudessaan päätyen siten suurempaan lähetetyn tiedon määrään kuin tilanteessa, jossa segmentointia ei käytetä vaan vain tieto lähetetään.Housel, B.C. et al., "WebExpress: A Client / Intercept Based System for Optimizing Web Browsing in a Wireless Environment" presents a hijacking model that intercepts http requests to reduce data transfer over a wireless link by accessing information in the client's memory when retrieving information program, leverage the flow of change to return the result of the processing. US 2006/0069719 discloses a solution in which information is segmented and data segments are stored on the server side and the client side. In US 2006/0069719, the server sends references to segments to the client in response to a request for information, and the client retrieves the Referenced segments from its memory. If the client receives an unknown reference from the server, the client requests information from the referenced segment and receives the information from the server. When the information changes on the server, the server creates a new segment, sends its reference, bindings, and the information itself in response to the client. The problem with this solution is that if the information is refreshed in a fragmented way, it is likely that instead of sending referrals to segments, new segments are created and segment referrals, their bindings and the data as a whole, resulting in more data being transmitted than segmentation. only the information is sent.

YhteenvetoSummary

Keksinnön tavoitteena on minimoida tietovarastosta lähetetyn tiedon määrää ja silti antaa tiedonhakijalle haetun tiedon päivitetty versio. Keksinnön tavoite saavutetaan menetelmillä, laitteilla, tietokoneohjelmistotuotteella ja järjestelmällä, joille on tunnusomaista se, mitä sanotaan itsenäisissä vaatimuksissa. Keksinnön edulliset suoritusmuodot esitetään epäitsenäisissä vaatimuksissa.It is an object of the invention to minimize the amount of information transmitted from a data warehouse while still providing the information seeker with an updated version of the information retrieved. The object of the invention is achieved by methods, apparatus, computer software product and system which are characterized by what is stated in the independent claims. Preferred embodiments of the invention are set forth in the dependent claims.

Keksintö perustuu ongelman havaitsemiseen ja tallennettujen viite-hakutulosten hyödyntämiseen pyytävällä puolella ja vastaavalla puolella, pyytävän puolen osoittaessa pyynnössä käytettävän viitehaun tai käytettävät viite-haut, ja vastaavan puolen lähettäessä vain muutokset vastaavien viite-haun(viitehakujen) hakutuloksiin vähentäen siten lähetetyn tiedon määrää. Tällä on etuna se, että tiedonhakija vastaanottaa päivitetyn version haetusta tiedosta, mutta koska vain muutokset lähetetään, lähetettävän tiedon määrä on pienempi ja siten tiedonsiirto on nopeampi. Tämä etu korostuu hitailla tiedon-siirtolinkeillä. Toinen etu on, että osoittamalla viitehaut pyynnössä, vastaava puoli tietää, mitä vastaavalla puolella tallennettuja viitehakuja voidaan käyttää, lisäpyynnöt vältetään eikä ole tarvetta, että sekä vastaava puoli että pyytävä puoli molemmat käsittävät koko tietokannan tiedot. Toisin sanoen asiakkaalla ei tarvitse olla koko tietovaraston replikaattia.The invention is based on detecting the problem and utilizing the stored reference search results on the requesting side and on the corresponding side, the reference searches used the requesting side facing the request, or be used in Reference searches, and the corresponding side transmits only the amount of information thus transmitted a corresponding reduction in the reference search (reference search) in the search results changes. This has the advantage that the information seeker receives an updated version of the information retrieved, but since only the changes are transmitted, the amount of data to be transmitted is reduced and thus the data transfer is faster. This advantage is accentuated by slow data transfer links. Another advantage is that by pointing to the referenced searches in the request, the matching side knows which reference searches stored on the matching side can be used, additional requests are avoided, and there is no need for both the matching side and the requesting side to cover the entire database. In other words, the client does not have to have a replica of the entire repository.

KuvioluetteloList of figures

Keksinnön suoritusmuotoja selitetään seuraavassa ainoastaan esimerkinomaisesti viittaamalla oheisiin piirustuksiin, joissaEmbodiments of the invention will now be described, by way of example only, with reference to the accompanying drawings, in which:

Kuvio 1 esittää tietoliikennejärjestelmän yleistä arkkitehtuuria;Figure 1 illustrates a general architecture of a communication system;

Kuviot 2 ja 3 ovat yksinkertaistettuja lohkokaavioita suoritusmuodon mukaisista laitteista;Figures 2 and 3 are simplified block diagrams of devices according to an embodiment;

Kuviot 4 ja 5 ovat vuokaavioita havainnollistaen suoritusmuodon mukaisten laitteiden toiminnallisuuksia; jaFigures 4 and 5 are flowcharts illustrating the functionality of the devices of the embodiment; and

Kuviot 6 ja 7 havainnollistavat tiedonhakuja muiden suoritusmuotojen mukaisesti.Figures 6 and 7 illustrate information retrieval in accordance with other embodiments.

Suoritusmuotojen selitysDESCRIPTION OF EMBODIMENTS

Seuraavat suoritusmuodot ovat esimerkinomaisia. Vaikka selitys voi useissa paikoissa viitata “erääseen”, “yhteen” tai “joihinkin” suoritusmuo-toon(muotoihin), ei tämä välttämättä tarkoita, että kukin sellainen viittaus on samaan suoritusmuotoon(muotoihin) tai että piirre soveltuu vain yksittäiseen suoritusmuotoon. Eri suoritusmuotojen yksittäisiä piirteitä voidaan myös yhdistää aikaansaamaan muita suoritusmuotoja.The following embodiments are exemplary. Although the description may in several places refer to "one", "one" or "some" embodiment (s), this does not necessarily mean that each such reference is to the same embodiment (s) or that the feature is applicable to a single embodiment only. The individual features of the various embodiments may also be combined to provide other embodiments.

Keksintö soveltuu mille tahansa tiedonhakulaitteelle, vastaavalle komponentille(komponenteille), ja/tai mihin tahansa tietovarastojärjestelmään tai mihin tahansa erilaisten tietovarastojärjestelmien yhdistelmään, kuten asi-kas-palvelin rakenne tai mikä tahansa vastaava rakenne. Käytetyt menetelmät ja prosessit, tietovarastojen ja/tai hakujärjestelmien määrittelyt, menetelmät ja algoritmit kehittyvät. Tällainen kehitys voi tarvita lisämuutoksia suoritusmuotoon. Siksi kaikki sanat ja ilmaisut tulisi tulkita laajasti ja ne on tarkoitettu havainnollistamaan, ei rajoittamaan, suoritusmuotoa.The invention is applicable to any information retrieval device, corresponding component (s), and / or any data warehouse system or any combination of different data storage systems, such as a client-server structure or any similar structure. Methods and processes used, data warehouse and / or retrieval system definitions, methods and algorithms are evolving. Such development may require additional changes to the embodiment. Therefore, all words and expressions should be interpreted broadly and are intended to illustrate, not to limit, the embodiment.

Seuraavassa eri suoritusmuotoja selitetään käyttäen esimerkkiarkki-tehtuurina, johon suoritusmuotoja voidaan soveltaa, ja asiakas-palvelin-ra-kenteeseen perustuvaa arkkitehtuuria rajoittamatta kuitenkaan suoritusmuotoa sellaiseen arkkitehtuuriin.In the following, various embodiments will be described using an exemplary sheet architecture to which the embodiments can be applied and a client-server architecture-based architecture, without limiting the embodiment to such architecture.

Kuviossa 1 havainnollistetaan erään suoritusmuodon mukaista yleistä arkkitehtuuria. Kuvio 1 on erittäin yksinkertaistettu järjestelmäarkkitehtuuri, joka esittää vain joitakin elementtejä, verkkoja ja toiminnallisia entiteettejä, jotka kaikki ovat loogisia yksiköitä, joiden toteutus voi poiketa esitetystä. Kuviossa 1 esitetyt yhteydet ovat loogisia yhteyksiä, varsinaiset fyysiset yhteydet voivat olla erilaiset. Alan ammattilaiselle on ilmeistä, että järjestelmä käsittää myös muita toimintoja ja rakenteita. Tulee ymmärtää, että toiminnot, rakenteet, elementit ja tiedonvaihdossa tai -vaihtoon, tiedon pakkaamiseen (kompressio), muutosten havaitsemiseen (eli muutoshakuihin, difference search) ja osoitusten havaitsemiseen ja varsinaiseen tiedonsiirtoon käytetyt protokollat ovat merkityksettömiä varsinaiselle keksinnölle. Siksi niitä ei tarvitse käsitellä yksityiskohtaisemmin tässä.Figure 1 illustrates a general architecture according to an embodiment. Figure 1 is a highly simplified system architecture showing only a few elements, networks, and functional entities, all of which are logical entities whose implementation may differ from that shown. The connections shown in Figure 1 are logical connections, the actual physical connections may be different. It will be obvious to a person skilled in the art that the system also includes other functions and structures. It is to be understood that the functions, structures, elements, and protocols used for communication or exchange, data compression (compression), change detection (i.e., difference search), and detection detection and actual data transfer are irrelevant to the actual invention. Therefore, they do not need to be discussed in more detail here.

Kuviossa 1 havainnollistettu järjestelmä 100 käsittää yhden tai useamman laitteen 200, 201, 210 asiakkaana, liitettynä palvelinjärjestelmään 300 verkon 400 kautta. Verkon 400 esimerkit sisältävät matkaviestinverkon, yleisen valinnaisen puhelinverkon, alueverkon WAN, Internetin ja lähiverkon LAN.System 100 illustrated in Figure 1 comprises one or more devices 200, 201, 210 as a client connected to server system 300 through network 400. Examples of network 400 include a cellular network, a public switched telephone network, an area network WAN, the Internet, and a local area network LAN.

Laite 200, jota kuvataan yksityiskohtaisemmin kuvion 2 yhteydessä, voi olla mikä tahansa käyttäjälaite tai työasema, kuten sylimikro, matkaviestin, henkilökohtainen tietokone, kenttälaite tai kämmenmikro (PDA). Lisäksi laite 201 voi olla palvelin, johon käyttäjäpäätelaitteet 210 tai toiset palvelimet on liitetty, ja joka on liittynyt esimerkiksi hitaalla yhteydellä palvelinjärjestelmän lisä-palvelimeen joko suoraan tai verkon kautta (kuten kuviossa 1 on havainnollis tettu). Toisin sanoen laite 200, 201 voi toimia asiakkaana kohti palvelinjärjestelmää ja palvelimena kohti toisia laitteita.The device 200, which will be described in more detail in connection with Figure 2, can be any user equipment or workstation, such as a laptop, mobile, personal computer, field device or PDA. Further, the device 201 may be a server to which the user terminals 210 or other servers are connected and connected, for example, by a slow connection to an additional server system server, either directly or through a network (as illustrated in Figure 1). In other words, the device 200, 201 may serve as a client towards the server system and as a server towards other devices.

Kuvion 1 suoritusmuodossa palvelinjärjestelmä 300 käsittää palve-linsolmun 301, joka on liitetty lähiverkolla 302 tietovarastoon 303. Muissa suoritusmuodossa palvelinsolmutoiminnallisuus ja tietovarasto voivat olla integroituna laitteeseen tai liitettynä toisiinsa esimerkiksi suuralueverkon kautta.In the embodiment of Figure 1, the server system 300 comprises a server node 301 connected to a data warehouse 303 on a local area network 302. In other embodiments, the server node functionality and the data warehouse may be integrated into the device or interconnected, e.g.

Palvelinsolmu 301, jota on selitetty yksityiskohtaisemmin kuviossa 3, voi olla mikä tahansa tietotekniikkalaite, kuten tietokone, joka on konfiguroitu suorittamaan ainakin osa tietokantapalvelutoiminnallisuutta ja joka siksi on osa tietokantahallinnointijärjestelmää.The server node 301, which is described in more detail in Figure 3, may be any information technology device, such as a computer, configured to perform at least some of the database service functionality and therefore be part of a database management system.

Tietovarasto 303 voi olla mikä tahansa perinteinen tai tulevaisuuden tietovarasto mukaanlukien hajautetut ja keskitetyt tietovarastot. Tietovarasto voi olla muisti, tiedostopalvelin, joka käsittää muistia ja on konfiguroitu hakemaan tietoa, tai tiedonhallintapalvelin, joka käsittää muistia ja on konfiguroitu hakemaan tietoa ja suorittamaan laskentaa tiedolle. Tietovarasto voi käsittää tietoa tallennettuna tietueina, tiedostoina, taulukkoina, objekteina, binääridata-na, jne. ja tietovarasto voi olla järjestetty esimerkiksi relaatio- tai objektiorientoituneena tietokantana. Tietovaraston toteuttamisella ja sillä, kuinka tieto tallennetaan ja päivitetään, ei kuitenkaan ole merkitystä keksinnölle eikä sitä tarvitse selittää yksityiskohtaisesti tässä.The repository 303 may be any traditional or future repository, including distributed and centralized repositories. The data warehouse may be a memory, a file server comprising memory and configured to retrieve information, or a data management server comprising memory and configured to retrieve information and perform computation on the information. The repository may comprise information stored as records, files, tables, objects, binary data, etc., and the repository may be arranged, for example, as a relational or object oriented database. However, the realization of the data warehouse and the way in which the information is stored and updated are irrelevant to the invention and need not be explained in detail herein.

Kuvio 2 on yksinkertaistettu lohkokaavio erään suoritusmuodon mukaisesta pyytävästä laitteesta, kuten käyttäjälaitteesta. Jäljempänä laitetta kutsutaan selvyyden vuoksi käyttäjälaitteeksi. Vaikka käyttäjälaite on kuvattu yhtenä entiteettinä, eri moduulit ja muisti voidaan toteuttaa yhdessä tai useammassa fyysisessä tai loogisessa entiteetissä. Käyttäjälaite 200 on konfiguroitu antamaan käyttäjälleen tietoa, josta käyttäjä on kiinnostunut. Tätä tarkoitusta varten käyttäjälaite käsittää käyttöliit-tymäyksikön 21 käyttäjän syötteiden vastaanottamiseksi eri syötelaitteiden (esimerkiksi näppäimistö, osoitinlaite) ja eri tiedon tulostamiseksi käyttäjälle eri tulostuslaitteiden (esimerkiksi näyttö, tulostin) kautta, yhden tai useamman sovelluksen 22, joita käyttäjä voi käyttää tiedon tulostamiseksi ja/tai hakemiseksi, ja tiedonhakuyksikön 23 tiedonhakujen suorittamiseksi eli tiedon saamiseksi kuten jäljempänä selitetään, muistia 24 viitehakujen 25 tallentamiseksi, lähettimen 26 tiedonhakupyyntöjen lähettämiseksi ja vastaanottimen 27 tiedonha-kupyyntöjen vastausten vastaanottamiseksi, lähettimen ja vastaanottimen ollessa osa verkkorajapintaa. Käyttöliittymän lisäksi tai sen sijaan käyttäjälaitteel la voi olla rajapintayksikkö tai -yksikköjä syöte/tulostuslaitteille, kuten GPS-laitteelle (GPS, global positioning system), joka voi aikaansaada ilman käyttäjän vuorovaikutusta, tietoa, joka Hipaisee sovelluksen pyytämään tietoa. Yksiköt voivat olla toiminnallisesti kytkettyjä toisiinsa.Figure 2 is a simplified block diagram of a requesting device, such as a user device, according to an embodiment. Hereinafter, for convenience, the device is referred to as a user device. Although the UE is described as a single entity, different modules and memory may be implemented in one or more physical or logical entities. The user device 200 is configured to provide its user with information of interest to the user. To this end, the UE comprises a user interface unit 21 for receiving user inputs from different input devices (e.g., keyboard, pointing device) and different information to the user via different output devices (e.g., display, printer), one or more applications 22 that can be used by the user and retrieving information retrieval unit 23, as described below, memory 24 for storing reference retrievals 25, transmitting transmitter 26 retrieval requests and receiving receiver 27 retrieval responses, the transmitter and receiver being part of a network interface. In addition to or instead of the user interface, the user equipment may have interface unit or units for input / output devices, such as a GPS (global positioning system) (GPS) device, which can provide, without user interaction, information that will fetch the application for information. The units may be functionally connected to each other.

Kukin muistiin tallennettu viitehaku käsittää tunnisteen 251, haku-määrittelyt 252 (kutsutaan myös hakuehdoiksi) ja hakutulokset 253. Tunniste voi olla mikä tahansa tunniste, joka identifioi yksikäsitteisesti vastaavan viite-haun myös palvelinjärjestelmässä. Tällaisen tunnisteen esimerkit sisältävät digitaalisen allekirjoituksen, tarkistussumman tai esimerkiksi hakutuloksista, ha-kumäärittelyistä tai hakutulosten ja hakumäärittelyn yhdistelmästä lasketun hash-arvon, juoksevan numeron, mahdollisesti yhdistettynä käyttäjälaitteen osoitteeseen. Jos tunniste lasketaan muusta viitehakuun tallennetusta tiedosta, sen tallentaminen osaksi viitehakua ei ole tarpeellista vaan sen sijaan se voidaan laskea tarvittaessa (katso kuvio 4). Myös hakutulosten ja haun suoritusaikaa osoittavan aikaleiman yhdistelmää voidaan käyttää tunnisteena. Viitehaku voi käsittää myös muuta tietoa, kuten aikaleiman, joka osoittaa, koska hakutulos tallennettiin, ja aikaleiman, joka osoittaa, koska viitehakua viimeksi käytettiin. Eri viitehakujen hakutulokset voivat limittyä ja viitehaku voi olla jonkin toisen viitehaun osajoukko tai sisältää kahden tai useamman viitehaun osajoukkoja. Muisti 24 voi olla poistettava muisti, joka on irrotettavasti liitetty käyttäjälaitteeseen, ja viitehakujen tallentamiseksi voidaan käyttää mitä tahansa menetelmää. Käyttäjälaitteen toiminnallisuutta, tai täsmällisemmin tiedonhakuyk-sikön 23 toiminnallisuuden eri esimerkkejä, selitetään jäljempänä yksityiskohtaisemmin kuvioiden 4, 6 ja 7 yhteydessä. Tulee ymmärtää, että käyttäjälaite tai mikä tahansa vastaava tietoa pyytävä laite voi käsittää muita yksiköitä, joita käytetään tiedon antamisessa tai antamiseen. Ne ovat kuitenkin merkityksettömiä varsinaiselle keksinnölle eikä niistä siksi tarvitse keskustella yksityiskohtaisemmin tässä.Each reference search stored in the memory comprises an identifier 251, search definitions 252 (also called search criteria), and search results 253. The identifier can be any identifier that uniquely identifies the corresponding reference search in the server system as well. Examples of such a tag include a digital signature, a checksum, or, for example, a hash value calculated from search results, search definitions, or a combination of search results and search definition, a sequential number, possibly associated with the address of the user equipment. If the tag is calculated from other data stored in the reference search, it is not necessary to save it as part of the reference search, but instead it can be computed if necessary (see Figure 4). Also, the combination of search results and timestamp of search time can be used as a tag. The reference search may also include other information, such as a timestamp indicating when the search result was stored and a timestamp indicating when the reference search was last used. The results of different referrals may overlap and the referrer may be a subset of another referral or contain subsets of two or more referrals. The memory 24 may be a removable memory that is removably attached to the user equipment and any method for storing reference searches may be used. The functionality of the UE, or more specifically the various examples of the functionality of the information retrieval unit 23, will be explained in more detail below with reference to Figures 4, 6 and 7. It will be understood that the user equipment or any similar information requesting device may comprise other units used to provide or provide information. However, they are irrelevant to the actual invention and therefore need not be discussed in further detail herein.

Kuvio 3 on yksinkertaistettu lohkokaavio erään suoritusmuodon mukaisesta pyyntöihin vastauksia lähettävästä laitteesta, kuten palvelinsolmusta. Jäljempänä laitetta kutsutaan selvyyden vuoksi palvelimeksi. Vaikka palvelin on kuvattu yhtenä entiteettinä, eri moduulit ja muisti voidaan toteuttaa yhdessä tai useammassa fyysisessä tai loogisessa entiteetissä.Figure 3 is a simplified block diagram of an apparatus for transmitting requests, such as a server node, according to an embodiment. Hereinafter, the device is referred to as a server for clarity. Although the server is described as a single entity, different modules and memory can be implemented in one or more physical or logical entities.

Palvelin 301 on konfiguroitu antamaan asiakkaallensa tietoa, jota asiakas pyysi. Tätä tarkoitusta varten palvelin käsittää vastaanottoyksikön 31 pyyntöjen, vastausten ja muiden syötteiden vastaanottamiseksi, tiedonsaan-tiyksikön 32 tietovaraston käyttämiseksi, tiedonsaantiyksikön käsittäessä tieto-varastorajapintayksikön, tietopalveluyksikön 33 tiedonhakujen (eli tiedon saannin) suorittamiseksi, kuten jäljempänä kuvataan, ja muistia 34 viitehakujen 35 tallentamiseksi. Yksiköt voivat olla operatiivisesti kytkettynä toisiinsa.Server 301 is configured to provide its client with the information the client requested. To this end, the server comprises a receiving unit 31 for receiving requests, responses, and other inputs, an access unit 32 for accessing the data store, an access unit comprising a data storage interface unit, an information service unit 33 for performing information retrieval (i.e., access). The units may be operatively connected to each other.

Myös palvelimessa kukin viitehaku käsittää edullisesti ainakin ha-kumäärittelyt 353, hakutulokset 353 ja tunnisteen 351, kuten edellä on selitetty. Palvelimen puolella yksi viitehaku voi kuitenkin käsittää yksinkertaisimmillaan vain hakutulokset olettaen, että tunniste lasketaan hakutuloksista. Viitehaku voi käsittää myös muuta tietoa, kuten aikaleiman, joka osoittaa, milloin viitehaku tallennettiin, aikaleiman 354, joka osoittaa, milloin viitehakua viimeksi käytettiin, ja/tai laskuritietoa 355, joka osoittaa esimerkiksi, kuinka usein viitehakua on käytetty. Täten käyttäjälaitteen viitehaku ja vastaava palvelimen viitehaku voivat sisältää eri tietoa; riittää, että hakutulokset ovat samat ja vastaavat viite-haut voidaan löytää. Eri viitehakujen hakutulokset voivat olla päällekkäisiä ja viitehaku voi olla toisen viitehaun osajoukko tai se voi sisältää yhden tai useamman osajoukon yhdestä tai useammasta viitehausta, viitehaut voidaan tallentaa asiakaskohtaisesti ja/tai asiakkaille yhteisenä. Muisti 34 voi olla siirrettävä muisti, joka on irrotettavasti liitetty palvelimeen ja viitehakujen tallentamiseksi voidaan käyttää mitä tahansa menetelmää.Also in the server, each reference search preferably comprises at least search definitions 353, search results 353 and identifier 351, as described above. At the server side, however, a single referral search can only comprise search results at its simplest, assuming that the tag is computed from the search results. The reference search may also include other information, such as a timestamp indicating when the reference search was stored, a timestamp 354 indicating when the reference search was last used, and / or counter information 355 indicating, for example, how often the reference search has been used. Thus, the user device reference search and the corresponding server reference search may contain different information; it is enough that the search results are the same and that the corresponding reference searches can be found. The search results of different referral searches may overlap and the referral search may be a subset of another referral search, or it may contain one or more subsets of one or more referenced searches, and the referenced searches may be stored individually and / or jointly with the customers. The memory 34 may be a removable memory removably connected to a server and any method for storing reference searches may be used.

Palvelimen tai täsmällisemmin tietopalveluyksikön 33 toiminnallisuuden eri esimerkkejä kuvataan jäljempänä yksityiskohtaisemmin kuvioiden 5, 6 ja 7 yhteydessä. Tulee ymmärtää, että palvelin voi käsittää muita yksiköitä, joita käytetään tiedon antamisessa tai antamiseen käyttäjälle. Ne ovat kuitenkin merkityksettömiä varsinaiselle keksinnölle eikä niitä sen vuoksi tarvitse käsitellä yksityiskohtaisemmin tässä.Various examples of the functionality of the server or more specifically the information service unit 33 will be described in more detail below in connection with Figures 5, 6 and 7. It will be understood that the server may comprise other units used to provide or provide information to the user. However, they are irrelevant to the actual invention and therefore need not be discussed in further detail herein.

Laite, kuten käyttäjälaite tai palvelin, tai vastaava komponentti, joka toteuttaa yhden tai useamman vastaavan käyttäjälaitteen tai palvelimen erään suoritusmuodon yhteydessä kuvatun toiminnon, käsittää tunnetun tekniikan mukaisten välineiden lisäksi välineitä yhden tai useamman vastaavan laitteen erään suoritusmuodon yhteydessä kuvatun toiminnon toteuttamiseksi ja se voi käsittää erilliset välineet kullekin erillisille toiminnolle tai välineet voi olla konfi-guroitu suorittamaan kaksi tai useampia toimintoja. Laite voi olla konfiguroitu tietokoneena tai mikroprosessorina, kuten yksisiruisena tietokone-elementtinä, joka sisältää ainakin muistia aikaansaamaan aritmeettisen operaation ja viite-hakujen käyttämän tallennusalueen, ja toimintaprosessorin aritmeettisen ope raation suorittamiseksi. Nykyiset laitteet käsittävät prosessoreita ja muistia, joita voidaan hyödyntää erään suoritusmuodon toteuttamiseen. Muisti tai osa siitä voi olla liikuteltava muisti irrotettavasii liitettynä palvelimeen. Esimerkiksi tie-donhakuyksikkö tai tietopalveluyksikkö voi olla ohjelmistosovellus tai -moduuli tai yksikkö, joka on konfiguroitu toimintaprosessorin, kuten keskusyksikön, suorittamana aritmeettisena operaationa tai ohjelmana (mukaanlukien lisätyn tai päivitetyn ohjelmistorutiinin). Eräs suoritusmuoto aikaansaa tietokoneohjelman, joka on upotettu mille tahansa laitteella luettavalle jakelu/tiedontallen-nusvälineelle ja joka sisältää ohjelmaohjeita, jotka laitteeseen ladattuna muodostavat yksikön. Ohjelmat, usein myös ohjelmistotuotteiksi kutsutut, jotka sisältävät ohjelmistorutiineja, sovelmia ja makroja, voidaan tallentaa mille tahansa välineelle, ja ne voidaan ladata laitteeseen. Toisin sanoen kaikki erään suoritusmuodon yhden tai useamman toiminnon toteuttamiseksi tarvittavat modifioinnit ja konfiguraatiot voidaan toteuttaa lisättyinä tai päivitettyinä ohjelmistoru-tiineina, sovelluspiireinä (ASIC) ja/tai ohjelmoitavilla piireillä.A device, such as a user device or server, or a similar component that performs the function described in one or more corresponding user device or server embodiments comprises, in addition to prior art means, means for performing the function described in one or more corresponding device embodiments and may comprise separate means for each separate function or means, it may be configured to perform two or more functions. The device may be configured as a computer or a microprocessor, such as a single chip computer element containing at least memory for providing an arithmetic operation and a storage area used by reference searches, and an operating processor for performing the arithmetic operation. Current devices comprise processors and memory that can be utilized to implement an embodiment. The memory, or part of it, may be removable memory removable attached to the server. For example, the information retrieval unit or information service unit may be a software application or module or unit configured as an arithmetic operation or program performed by an operating processor, such as a central processing unit (including an added or updated software routine). One embodiment provides a computer program embedded in any device-readable distribution / storage medium and containing program instructions which, when loaded on the device, form a unit. Programs, often called software products, containing software routines, applets, and macros, can be stored on any medium and downloaded to the device. In other words, all modifications and configurations necessary to implement one or more functions of one embodiment may be implemented as added or updated software chips, application circuits (ASICs) and / or programmable circuits.

Kuvio 4 havainnollistaa käyttäjälaitteen toiminnallisuutta erään suoritusmuodon mukaisesti. Suoritusmuodossa oletetaan, että viitehakuja päivitetään ja/tai lisätään erillisesti käyttäjän pyynnöstä ja käyttäjälaite käsittää joko tietyn sovellusyksikön viitehakujen lisäämiseksi ja päivittämiseksi, tai perinteisissä hauissa käytetty sovellusyksikkö on konfiguroitu hallinnoimaan myös viitehakuja. Lisäksi oletetaan, että vain yksi hakutulos saadaan kyselyvastauksessa.Figure 4 illustrates the functionality of a user equipment according to one embodiment. In the embodiment, it is assumed that the reference searches are updated and / or added separately at the request of the user and the UE comprises either a specific application unit for adding and updating the reference searches, or the application unit used in traditional searches is also configured to manage the reference searches. In addition, it is assumed that only one search result is returned in a query response.

Kuvio 4 alkaa, kun tiedonhakuyksikkö vastaanottaa vaiheessa 401 sovellusyksiköltä hakupyynnön, joka sisältää hakumäärittelyt, ja vasteena hakupyynnölle generoi vaiheessa 402 kyselypyynnön, joka sisältää hakumäärittelyt. Sitten tiedonhakuyksikkö tarkistaa vaiheessa 403, onko hakupyyntö viite-haun lisäämiseksi tai päivittämiseksi. Toteutuksesta riippuen hakupyyntö voi sisältää osoituksen, josta se on pääteltävissä, tai se voidaan päätellä hakupyynnön lähettäneen sovellusyksikön perusteella.FIG. 4 begins when, at step 401, the information retrieval unit receives from the application unit a search request containing the search specifications and, in response to the search request, generates, in step 402, a query request containing the search specifications. The information retrieval unit then checks, in step 403, for a search request to add or update a reference search. Depending on the implementation, the search request may contain an address from which it can be inferred, or it may be inferred from the application unit that sent the search request.

Jos hakupyyntö ei ole (vaihe 403) viitehaun lisäämiseksi tai päivittämiseksi, tiedonhakuyksikkö aloittaa muistiin tallennettujen viitehakujen tutkimisen ottamalla vaiheessa 404 viitehaun ja vertaamalla vaiheessa 405 vastaanotettuja hakumäärittelyjä viitehaun hakumäärittelyihin. Jos vertailu osoittaa, että viitehaku on soveltuva (vaihe 406), tiedonhakuyksikkö lisää vaiheessa 407 viitehaun tunnisteen kyselypyyntöön ja tarkistaa sitten vaiheessa 408, onko kaikki viitehaut tutkittu. Jos vertailu osoittaa, että viitehaku ei ole soveltuva (vaihe 406), prosessi jatkuu vaiheessa 408 tarkistamalla, onko kaikki viitehaut tutkittu. Jos ei, prosessi palaa vaiheeseen 404 ottamaan jonkun toisen viite-haun. Jos kaikki viitehaut on tutkittu (vaihe 408), kyselypyyntö lähetetään vaiheessa 409. Kyselypyyntö sisältää hakumäärittelyjen lisäksi soveltuvien viite-hakujen viitehakutunnisteet. Voi kuitenkin käydä niin, ettei ole olemassa yhtään soveltuvaa viitehakua, jossa tapauksessa kyselypyyntö ei sisällä viitehakutun-nisteita.If the search request is not (step 403) for adding or updating a reference search, the information retrieval unit begins examining the reference searches stored in memory by performing a reference search in step 404 and comparing the search specifications received in step 405 with the reference search specification. If the comparison indicates that the reference search is applicable (step 406), the information retrieval unit in step 407 adds the reference search identifier to the query request, and then checks in step 408 whether all the reference searches have been investigated. If the comparison indicates that the reference search is not applicable (step 406), the process continues in step 408 by checking whether all the reference searches have been examined. If not, the process returns to step 404 to perform another reference search. If all the reference searches have been investigated (step 408), the query request is sent in step 409. The query request contains, in addition to the search specifications, the reference search identifiers of the applicable reference searches. However, it may happen that there are no applicable referrals, in which case the referral request does not contain referrer identifiers.

Algoritmi, jolla päätetään, onko viitehaku soveltuva, voidaan vapaasti määritellä. Algoritmin esimerkit sisältävät seuraavat limittyviin hakumää-rittelyihin perustuvat vaihtoehdot (limittyvät kattavat saman, ylijoukon (superset), osajoukon ja osittain erilaisen): - vastaanotetut hakumäärittelyt ovat samat kuin viitehaun hakumää- rittelyt; - vastaanotetut hakumäärittelyt ovat viitehaun hakumäärittelyn osajoukko, osajoukon koolla/kattavuudella ei joko ole rajoituksia tai on rajoitus, kuten että osajoukon koon/kattavuuden täytyy olla ainakin 5 % tai 76 % viitehaun koosta/kattavuudesta; - vastaanotetut hakumäärittelyt ovat yhden tai useamman viitehaun ylijoukko; - vastaanotetut hakumäärittelyt limittyvät ennalta määritellyn määrän, kuten 85 % tai 97 % tai 55 % tai 33 %, viitehakujen hakumäärittelyjen kanssa; - kahden edellisen (osajoukko ja päällekkäisyys) yhdistelmä, kuten limittyvyys vähintään 70 % ja koko vähintään 35 %; - yksi edellinen yhdistettynä viitehaun ikäehdon kanssa.The algorithm that determines whether a reference search is appropriate can be freely defined. The examples of the algorithm include the following options based on overlapping search definitions (overlapping covers the same, superset, subset, and partially different): - The received search definitions are the same as the reference search definitions; - the received search definitions are a subset of the reference search specification, there are either no restrictions on the size / coverage of the subset, such as that the subset size / coverage must be at least 5% or 76% of the reference search size / coverage; - the received search definitions are a set of one or more reference searches; the received search definitions overlap with a predetermined amount, such as 85% or 97% or 55% or 33%, of the reference search definitions; - a combination of the two (subsets and overlaps) such as 70% overlap and 35% over size; - one of the previous, combined with the referral match age.

Sitten kyselyvastaus vastaanotetaan vaiheessa 410 ja puretaan vaiheessa 411. Jos kyselyvastaus sisältää tunnisteen (vaihe 412), tiedonhaku-yksikkö havaitsee, että kyselyvastaus sisältää muutoksia (eroja) tunnisteen vii-tehakuun ja hakee vaiheessa 413 muistista viitehaun hakutulokset ja muutos-purkaa (difference decompress) vaiheessa 414 haetut hakutulokset vastaanotetuilla muutoksilla. Muutokset voivat sisältää uutta tietoa, osoituksen(osoi-tuksia) poistetusta tiedosta ja päivitettyä tietoa. Muutospurkaminen huolehtii automaattisesti siitä, että tulos on hakumäärittelyjen mukainen. (Jos hakumäärittelyt esimerkiksi määrittelevät viitehaun osajoukon, hakutulokset, jotka eivät kuulu osajoukkoon, voidaan osoittaa poistettuina.) Sitten tiedonhakuyksikkö lähettää vaiheessa 415 hakutuloksen sovellusyksikölle, jolta hakumäärittelyt vastaanotettiin vaiheessa 401.Then, the query response is received in step 410 and decompressed in step 411. If the query response contains the identifier (step 412), the information discovery unit detects that the query response contains changes (differences) in the tag's paging and retrieves the reference search result and change decompress in step 413. search results retrieved in step 414 with received changes. Changes may include new information, an indication (s) of deleted information, and updated information. Unpacking automatically ensures that the result matches the search specifications. (For example, if the search definitions define a reference search subset, search results that do not belong to the subset may be indicated deleted.) Then, at step 415, the information search unit transmits the search result to the application unit from which the search definitions were received in step 401.

Jos kyselyvastaus ei sisällä tunnistetta (vaihe 412), kyselyvastaus sisälsi hakutulokset, ja prosessi jatkaa vaiheesta 415 lähettämällä hakutulokset.If the query response does not contain the tag (step 412), the query response contained the search results, and the process continues from step 415 by sending the search results.

Jos hakupyyntö on viitehaulle (vaihe 403), tiedonhakuyksikkö tarkistaa vaiheessa 420 hakumäärittelyjä käyttäen, onko viitehaku päivitys olemassaolevaan hakuun vai uusi. Jos se on olemassa olevan haun päivittämiseen, tiedonhakuyksikkö poistaa vaiheessa 421 olemassa olevan viitehaun muistista ja lähettää vaiheessa 422 kyselyvastauksen viitehaun osoituksella (IRC). Jos hakupyyntö on uudelle viitehaulle (vaihe 420), tiedonhakuyksikkö hyppää vaiheen 421 yli ja jatkaa vaiheessa 422 lähettämällä kyselypyynnön.If the search request is for a reference search (step 403), the information retrieval unit checks in step 420 using the search definitions whether the reference search is an update to an existing search or a new one. If it is for updating an existing search, the information retrieval unit in step 421 removes the existing reference search from memory and in step 422 transmits a query response with a reference search indication (IRC). If the search request is for a new reference search (step 420), the information retrieval unit skips to step 421 and proceeds to step 422 by sending a query request.

Kun tiedonhakuyksikkö vastaanottaa vaiheessa 423 kyselyvastauksen vaiheessa 422 lähetettyyn pyyntöön, se purkaa vaiheessa 424 vastaanotetun vastauksen ja tallentaa vaiheessa 425 vastauksen vaiheessa 401 vastaanotettujen hakumäärittelyjen kanssa viitehauksi.When the information retrieval unit receives, in step 423, a query response to a request sent in step 422, it decodes the response received in step 424 and stores, in step 425, the response with the search specifications received in step 401 as a reference search.

Vaikka edellä on oletettu, että viitehaut päivitetään ja/tai lisätään käyttäjän erillisestä pyynnöstä, tulee ymmärtää, että sen lisäksi tai sen sijaan voidaan käyttää myös jotain muuta mekanismia. Viitehaut voivat esimerkiksi olla niitä käyttävän sovelluksen ennaltamäärittelemiä ja/tai viitehaut voivat käsittää aikatietoa tai sisältää tiettyä päivitysaikavälitietoa, joka voi Hipaista viite-haun(hakujen) päivittämisen ilman käyttäjän vuorovaikutusta. Kun päivittäminen Hipaistaan ilman käyttäjän vuorovaikutusta, voidaan käyttäjältä kuitenkin pyytää lupa päivittämisen suorittamiseen.Although it has been assumed above that reference searches will be updated and / or added at the individual request of the user, it should be understood that some other mechanism may be used in addition to or instead of. For example, referrals may be predefined by the application using them, and / or referrals may include time information, or may include a specific update interval, which may refresh the reference search (s) without user interaction. However, when the update is played without user interaction, the user may be asked for permission to perform the update.

Eräässä toisessa suoritusmuodossa käyttäjälaite on konfiguroitu vasteena sille, että soveltuvien viitehakujen määrä on suurempi kuin ennalta asetettu kynnysarvo, kuten esimerkiksi enemmän kuin viisi viitehakua, arvioimaan soveltuvia viitehakuja ja lähettämään kyselypyynnön vain yhdellä (tai joku muu, ennalta määritelty määrä) viitehaulla, joka on valittu arvioinnin perusteella.In another embodiment, the UE is configured in response to having a higher number of applicable referrals than a predetermined threshold, such as more than five referrals, to evaluate suitable referrals and to send a query request with only one (or other, predetermined number) referrer selected by.

Kuvio 5 havainnollistaa palvelimen, joka on käytettävissä kuvion 4 yhteydessä kuvatun suoritusmuodon mukaisen päätelaitteen kanssa, toiminnallisuutta. Kuvio 5 alkaa, kun palvelin vastaanottaa vaiheessa 501 kysely-pyynnön. Vasteena pyynnölle palvelin hakee vaiheessa 502 tietovarastosta tiedon, joka täyttää kyselypyynnössä saadut hakumäärittelyt.Figure 5 illustrates the functionality of a server available with a terminal according to the embodiment illustrated in connection with Figure 4. FIG. 5 begins when the server receives, in step 501, a query request. In response to the request, the server retrieves, in step 502, information from the repository that meets the search specifications obtained in the query request.

Jos kyselypyynnössä ei ollut (vaihe 503) osoitusta viitehaun lisäämisestä tai päivittämisestä, tarkistetaan, sisälsikö kyselypyyntö viitehakutunnis-teita (vaiheet 504 ja 505) ja jos se sisälsi enemmän kuin yhden viitehakutun-nisteen, palvelin arvioi vaiheessa 506 viitehaut ja valitsee vaiheessa 506 en-naltamääriteltyjä valintasääntöjä käyttäen niistä yhden prosessoitavaksi. En-naltamääriteltyjen sääntöjen esimerkki on, että viitehaku, jolla on pienin määrä tietoa, määrän ollessa hakumäärittelyjen määrittelemä, valitaan, ja jos on useita hakumäärittelyjä, jotka määrittelevät saman määrän, ensimmäisenä listattu valitaan. Tulee ymmärtää, että keksintö ei rajoita valittujen viitehakujen määrää ja/tai valintasääntöjen sisältöä, ja mitä tahansa määrää voidaan käyttää, ennal-tamääriteltyä tai säännöistä riippuvaa ja/tai valintasääntöä voidaan käyttää. Palvelin voi esimerkiksi ylläpitää tietoa siitä, milloin viitehaku päivitettiin ja valita tuoreimman, tai tallentaa viimeisimmän muutospakkaamisen (difference compression) koon viitehakuun ja käyttää sitä kriteerinä tai yhtenä kriteereistä. Lisäksi palvelin voi olla konfiguroitu muutospakkaamaan taustatoimintona vii-tehakuja toisiinsa, suorittamaan tietokantahakuja käyttäen erityistä hakumäärit-telyä ja vertaamaan, mikä viitehauista on paras käytetylle hakumäärittelylle.If the query request did not (step 503) indicate that the reference search was being added or updated, it is checked whether the query request contained reference lookup tags (steps 504 and 505) and if it contained more than one reference lookup, the server evaluates using the selection rules to process one of them. An example of the predefined rules is that the reference search with the smallest amount of information, the number being defined by the search definitions, is selected, and if there are multiple search definitions that define the same amount, the first listed is selected. It is to be understood that the invention does not limit the number of referenced searches and / or the contents of the selection rules, and any number may be used, predetermined or rule dependent, and / or the selection rule may be used. For example, the server can maintain information about when the reference search was updated and select the most recent one, or store the difference compression size in the reference search and use it as a criterion or one of the criteria. In addition, the server may be configured to repackage paging with one another as a backend, perform database searches using a specific search definition, and compare which reference searches are best for the search specification used.

Kun viitehakutunniste on valittu tai jos pyyntö sisälsi vain yhden tunnisteen, haetaan vaiheessa 507 vastaavat viitehakutulokset ja vaiheessa 502 saatu tieto muutospakataan vaiheessa 508 viitehaun hakutuloksiin. Sitten vaiheessa 509 muodostetaan kyselyvastaus pakkaamalla muutospakkaamisen tulos ja vastaava tunniste kyselyvastaukseen. Sitten kyselyvastaus lähetetään vaiheessa 510.When the reference search identifier is selected, or if the request contained only one identifier, the corresponding reference search results are retrieved in step 507, and the information obtained in step 502 is packaged in the search results of the reference search in step 508. Then, in step 509, the query response is formed by compressing the result of the change compression and the corresponding identifier into the query response. The query response is then sent in step 510.

Jos kyselypyyntö ei sisältänyt viitehakutunnistetta (vaihe 504), haettu tieto pakataan vaiheessa 509 olemaan kyselyvastaus. Sitten kyselyvastaus lähetetään vaiheessa 510.If the query request did not contain a reference lookup identifier (step 504), the requested information is compressed in step 509 to be a query response. The query response is then sent in step 510.

Jos kyselyvastaus oli viitehaun lisäämiseksi tai päivittämiseksi (vaihe 503), tiedonhakuyksikkö generoi vaiheessa 520 tunnisteen viitehaulle ja tallentaa vaiheessa 521 viitehaun muistiin, tallennetun viitehaun käsittäessä edullisesti tunnisteen, hakumäärittelyt ja haetun tiedon. Sitten palvelin pakkaa vaiheessa 522 tiedon ja lähettää vaiheessa 523 tunnisteen ja pakatun tiedon kyselyvastaukseksi. Tässä suoritusmuodossa oletetaan, että käyttäjälaite tietää, mille hakumäärittelyille vastausta odotetaan. Kyselyvastaus voi kuitenkin sisältää myös hakumäärittelyt. Lisäksi eräässä suoritusmuodossa, jossa tunniste lasketaan tiedosta ja käyttäjälaite on lisäksi konfiguroitu suorittamaan laskemisen, kyselyvastaus ei sisällä tunnistetta.If the query response was to add or update a reference search (step 503), the information retrieval unit generates, in step 520, an identifier for the reference search and stores, in step 521, a reference search in memory, the stored reference search preferably comprising the identifier, search definitions and information retrieved. Then, in step 522, the server compresses the information and in step 523 transmits the identifier and the compressed information as a query response. In this embodiment, it is assumed that the UE knows for which paging specifications a response is expected. However, the query response can also include search definitions. Further, in one embodiment where the identifier is computed from the data and the user equipment is further configured to perform the computation, the query response does not contain the identifier.

Tulee ymmärtää, että viitehakujen kyselypyyntö voi sisältää useita viitehakuja, jossa tapauksessa kukin viitehaku päivitetään suorittamalla vaiheet 520-522 ja mahdollisesti myös lähettämisvaihe useita kertoja.It will be appreciated that a reference lookup query request may include multiple reference lookups, in which case each reference lookup is updated by performing steps 520-522 and possibly also sending several times.

Eräässä toisessa suoritusmuodossa, jossa viitehakuja ylläpidetään asiakaskohtaisesti (käyttäjälaitekohtaisesti), palvelin poistaa olemassa olevan haun, jos hakupyyntö on viitehaulle (eli vaiheen 503 jälkeen ja ennen vaihetta 520).In another embodiment, where reference paging is maintained on a client-specific (user-device-specific) basis, the server deletes an existing paging if the paging request is for a reference paging (i.e., after step 503 and before step 520).

Keksinnön lisäsuoritusmuodoissa palvelin hakee viitehakutulokset jokaiselle viitehakutunnisteelle ja suorittaa kullekin muutospakkaamisen, ja toteutuksesta riippuen lähettää ne kaikki kyselyvastauksena tai valitsee niistä yhden, esimerkiksi muutospakkaamisen jälkeen pienimmän, kyselyvastaukseksi. Eräässä jälkimmäisen suoritusmuodon toteutuksessa myös vaiheessa 502 haettu tieto voidaan pakata ja ottaa yhtenä ehdokkaana valintaprosessiin (esimerkiksi kokovertailu).In further embodiments of the invention, the server retrieves the reference retrieval results for each reference retrieval identifier and performs a change packing, and depending on the implementation sends all of them in a query response or selects one of them, e.g. In one embodiment of the latter embodiment, the information retrieved in step 502 can also be compressed and taken as one candidate for the selection process (e.g., size comparison).

Pakkaaminen ja muutospakkaaminen voidaan suorittaa algoritmeilla, jotka kykenevät sellaiseen pakkaamiseen. Esimerkki on vcdiff, IETF Internet standardi geneeriselle muutos- ja pakkaamistietomuodolle (differencing and compression data format), jota on kuvattu RFC 3284:ssä, joka sisällytetään tähän viitteenä.Compression and change compression can be performed by algorithms capable of such compression. An example is vcdiff, an IETF Internet standard for generic differencing and compression data format described in RFC 3284, which is incorporated herein by reference.

Eräässä toisessa suoritusmuodossa ei ole erityistä hakuviitteen li-säämis- tai päivitysosoitusta vaan kaikki vastaukset tallennetaan viitehauiksi. Tässä suoritusmuodossa kuvion 4 vaihe 403 hypätään yli ja prosessi jatkaa vaiheesta 404, ja sen jälkeen, kun vastaus on purettu ja mahdollisesti päivitetty (eli ennen vaihetta 415 tai sen aikana), viitehaku tallennetaan (vastaten vaihetta 425) ja vaiheet 420-425 jätetään pois. Vastaavasti kuviossa 5 vaihe 503 jätetään pois ja prosessi jatkuu vaiheesta 504 ja vaiheita 520 ja 521 vastaavat vaiheet suoritetaan ennen/sinä aikana, kun viitehakutulokset paka-taan/muutospakataan.In another embodiment, there is no specific insertion or refresh address for a search reference, but all responses are stored as a reference search. In this embodiment, step 403 of Figure 4 is skipped and the process continues from step 404, and after the response has been unpacked and possibly updated (i.e., before or during step 415), the reference search is stored (corresponding to step 425) and steps 420-425 are omitted. Similarly, in Figure 5, step 503 is omitted and the process continues from step 504, and steps similar to steps 520 and 521 are performed before / during the compression / change packing of the reference search results.

Eräässä edellä olevaan (eli ei ole erityistä viitehaun lisäämisen tai päivittämisen osoitusta) perustuvassa lisäsuoritusmuodossa käyttäjälaite tallentaa jotkut vastaukset viitehakuina ja palvelin tallentaa kaikki vastaukset vii-tehakuina. Käyttäjälaite voi olla konfiguroitu ylläpitämään tietoa siitä, kuinka usein tiettyjä hakumäärittelyjä käytetään ja käyttämään tätä tietoa päättäessään, mitkä hakutulokset tallennetaan viitehakuna. Toinen kriteeri viitehaun valitsemiseksi voi olla vastauksen koko. Käyttäjälaite voi olla myös konfiguroitu esimerkiksi tallentamaan joka toisen haun tai olemaan tallentamatta joka viidettä hakua.In one further embodiment based on the above (i.e., there is no specific indication of adding or updating a reference search), the user equipment saves some of the responses as a reference search and the server stores all the responses as a vii search. The UE may be configured to maintain information about how often certain search definitions are used and to use this information when deciding which search results are stored as a reference search. Another criterion for selecting a reference search may be the size of the answer. The user equipment may also be configured, for example, to store every other search or not to save every fifth search.

Eräässä toisessa keksinnön suoritusmuodossa käyttäjälaite tallentaa jotkut vastaukset viitehakuina ja palvelin tallentaa samat viitehaut. Tässä suoritusmuodossa, kun tiedonhaku on tallennettava viitehauiksi, käyttäjälaite lähettää kyselyssä osoituksen, joka osoittaa, että tämän tietyn haun hakutulokset tullaan tallentamaan, ja sitten käyttäjälaite prosessoi kyselyvastauksen vaiheiden 411-415 mukaisesti ja lisäksi tallentaa hakutulokset (ne, jotka on lähetetty vaiheessa 415) viitehauiksi. Vastaavasti palvelin on konfiguroitu suorittamaan vaiheet 505-510 ja sitten lisäksi vaiheen 521 vasteena kyselylle, joka sisälsi osoituksen.In another embodiment of the invention, the user equipment stores some of the responses as referenced searches and the server saves the same referenced searches. In this embodiment, when the information search is to be stored as a reference search, the UE sends an indication in the query indicating that the search results for that particular search will be stored, and then the UE processes the query response according to steps 411-415 and further stores the search results (those transmitted in step 415). Similarly, the server is configured to perform steps 505-510 and then step 521 in response to a query containing an address.

Kuvio 6 on kaavio, joka havainnollistaa tiedon hakemista erään suoritusmuodon mukaisesti. Tässä suoritusmuodossa oletetaan, että hakumäärit-telyjen täytyy olla täsmällisesti yhteensopiva viitehaun tai viitehakujen eksaktin yhdistelmän kanssa. Seuraavassa esimerkissä oletetaan selvyyden vuoksi, että viitehaku on täsmällisesti yhteensopiva.Fig. 6 is a diagram illustrating the retrieval of information according to one embodiment. In this embodiment, it is assumed that the search definitions must be exactly compatible with the reference search or the exact combination of the reference searches. For the sake of clarity, the following example assumes that the reference search is exactly compatible.

Kuviossa 6 havainnollistetussa suoritusmuodossa palvelin on konfiguroitu suorittamaan ylläpitotoimenpiteitä 6-0 taustaprosessina. Ylläpitotoiminnot voivat sisältää tallennettujen viitehakujen koemuutospakkaamisen käyttäen hakumäärittelyjä ja viitehaun poistamisen, jos (pakatun) muutospakkaamisten koko on melkein sama tai suurempi kuin vastaavan tiedon päivitetyn version pakkaamisen jälkeen. Muita syitä poistamiselle voi olla, että viitehaku on liian vanha, sitä ei ole käytetty pitkään aikaan, käytetty harvoin, jne. Tässä suoritusmuodossa ylläpito on tilaton. Ylläpidon etuna on, että viitehaku, joka sisältää hakutuloksia, jotka ovat pääsääntöisesti vanhentuneita, poistetaan ja ajan tasalla oleva versio lähetetään ilman muutospakkaamista vähentäen näin laskentakapasiteetin käyttöä.In the embodiment illustrated in Figure 6, the server is configured to perform maintenance operations 6-0 as a background process. The maintenance functions may include trial change packing of stored reference searches using the search definitions and removal of the reference search if the (compressed) change pack size is almost equal to or larger than that of the updated version of the corresponding data. Other reasons for deletion may be that the reference search is too old, has not been used for a long time, is rarely used, etc. In this embodiment, maintenance is bulky. The advantage of maintenance is that a reference search that contains search results that are generally outdated is removed and the up-to-date version is sent without change compression, thus reducing the use of computing capacity.

Vasteena sille, että käyttäjälaite UT vastaanottaa hakumäärittelyt viestissä 6-1, käyttäjälaite tutkii muistinsa viitehakuja ja löytää kohdassa 6-2 yhteensopivan. Toisin sanoen on olemassa viitehaku, jolla on samat hakumäärittelyt. Siksi UT lähettää kyselypyynnön 6-3 hakumäärittelyjen ja viitehaun tunnisteen kanssa.In response to the UT receiving the paging definitions in message 6-1, the UE examines its memory for reference paging and finds a match in step 6-2. In other words, there is a reference search that has the same search definitions. Therefore, UT sends a query request with 6-3 search definitions and a reference search identifier.

Vasteena kyselypyynnön 6-3 vastaanottamiselle palvelin suorittaa vastaanotettuja hakumäärittelyjä käyttäen tiedonhaun tietovarastosta DB (viestit 6-4, 6-5) ja tutkii kohdassa 6-6 viitehakuja käyttäen tunnistetta. Tällä kertaa sellaista viitehakua ei löydetty, koska se on poistettu ylläpidon aikana. Siksi palvelin generoi kohdassa 6-6 tunnisteen ja tallentaa kohdassa 6-6 haetun tiedon hakumäärittelyjen ja tunnisteen kanssa muistiin, joka sisältää viitehakuja. Koska viitehakua ei löydetty, muutoksia ei määritellä, ja palvelin lähettää haetun tiedon, edullisesti pakkaamisen jälkeen, tunnisteen kanssa kyselyvastauksessa 6-7 käyttäjälaitteelle.In response to receiving query request 6-3, the server executes the received search definitions using the data retrieval database DB (messages 6-4, 6-5) and examines the reference searches in step 6-6 using the identifier. This time, no such reference search was found because it was deleted during maintenance. Therefore, in step 6-6, the server generates a tag and stores the information retrieved in step 6-6 with the search definitions and the tag in a memory that contains the reference searches. Since no reference search was found, no changes are specified, and the server sends the requested information, preferably after compression, with an identifier in the query response 6-7 to the UE.

Kun käyttäjälaite vastaanottaa kyselyvastauksen 6-7 tunnisteella, se tutkii kohdassa 6-8 viitehakujaan löytääkseen viitehaun, jolla on sama tunniste. Koska tunniste kuitenkin luotiin kohdassa 6-6, ei vastaavaa tunnistetta löydy. Siksi käyttäjälaite tutkii viitehaut selvittääkseen, löytyvätkö samat määrittelyt (käyttäjälaite odottaa kyselyvastausta määrittelyille, joten se tietää ne) tallennetusta viitehausta, ja jos löytyvät, poistaa kohdassa 6-8 olemassa olevan viitehaun. Sitten käyttäjälaite tallentaa kohdassa 6-8 vastaanotetut tulokset, ha-kumäärittelyt ja tunnisteen uudeksi viitehauksi ja lähettää hakutulokset vastauksena viestissä 6-9. Vähän ajan kuluttua käyttäjälaite UT vastaanottaa samat hakumää-rittelyt viestissä 6-11 ja tutkii muistinsa viitehaut. Yhteensopiva löytyy (kohta 6-12). Siksi UT lähettää kyselypyynnön 6-13 hakumäärittelyjen ja viitehaun tunnisteen kanssa.When the UE receives a query response with a 6-7 identifier, it examines its reference searches in 6-8 to find a reference search with the same identifier. However, since the tag was created in step 6-6, no matching tag is found. Therefore, the UE examines the reference searches to determine if the same definitions (the UE waits for a query to answer the definitions, so it knows them) are found in the stored reference search and, if found, deletes the existing reference search in section 6-8. The UE then saves the received results, search definitions and tag in step 6-8 for a new reference search and sends the search results in response to message 6-9. Shortly after, the UT receives the same paging specifications in message 6-11 and examines its memory reference searches. Matching can be found (steps 6-12). Therefore, UT sends a query request 6-13 with the search definitions and the reference search tag.

Vasteena kyselypyynnön 6-13 vastaanottamiselle palvelin suorittaa tiedonhaun tietovarastosta DB (viestit 6-14, 6-15) käyttäen vastaanotettuja ha-kumäärittelyjä ja tutkii kohdassa 6-15 tunnistetta käyttäen viitehakuja. Tällä kertaa yhteensopiva löytyy ja palvelin laskee kohdassa 6-16 muutokset vertaamalla haettua tietoa viitehaun hakutuloksiin. Kun muutokset on laskettu, lähettää palvelin muutokset kyselyvastauksessa 6-17 käyttäjälaitteelle. Jos tietoa ei ole päivitetty kahden haun välillä, kyselyvastaus 6-17 sisältää vain tunnisteen.In response to receiving query request 6-13, the server retrieves information from the data store DB (messages 6-14, 6-15) using the received search definitions and, in step 6-15, searches using the reference retrieval. This time, a match is found, and in step 6-16, the server calculates the changes by comparing the information it retrieved with the reference search results. After the changes have been calculated, the server sends the changes in the query response 6-17 to the UE. If the information has not been updated between two searches, query answer 6-17 contains only the identifier.

Kun käyttäjälaite vastaanottaa kyselyvastauksen 6-17, se tutkii kohdassa 6-18, löytyykö vastaava tunniste. Tällä kertaa vastaava tunniste löytyy. Siksi käyttäjälaite hakee viitehaun, jolla tunniste on, hakutulokset ja päivittää hakutulokset muutoksilla kohdassa 6-18 ja sitten lähettää hakutulokset vastauksena viestissä 6-19. Tallennettuja viitehakutuloksia ei kuitenkaan päivitetä, jotta varmistetaan, että palvelimessa ja käyttäjälaitteessa ovat samat viitehaku-tulokset. Jos kyselyvastaus 6-17 sisältää vain tunnisteen, päivittäminen hypätään yli.When the UE receives the inquiry response 6-17, it checks in step 6-18 whether a corresponding identifier is found. This time, the matching tag is found. Therefore, the UE retrieves the search results for the reference search that has the tag and updates the search results with changes in step 6-18, and then sends the search results in response to message 6-19. However, saved referral search results are not updated to ensure that the server and user device have the same referral search results. If query response 6-17 contains only a tag, the update will be skipped.

Suoritusmuodoissa, joissa palvelin valitsee vastaanotetuista viite-hauista käyttökelpoisimman tai käyttökelpoisimmat, on ylläpidon 6-0 etuna se, että ylläpito helpottaa valintaa.In embodiments where the server selects the most useful or useful of the referenced queries received, maintenance 6-0 has the advantage that maintenance facilitates the selection.

Toinen etu, jota erityisesti kuvio 6 havainnollistaa, on, että kummankaan asiakkaasta ja palvelimesta ei tarvitse tietää, mitä viitehakuja on tallennettu toiselle puolelle, pyydetty tieto toimitetaan minimitiedonvaihdolla.Another advantage, illustrated in particular by FIG. 6, is that neither the client nor the server need to know which reference searches are stored on the other side, the requested information is transmitted with a minimum of data exchange.

Kuten edellä on sanottu, kuvion 6 suoritusmuodolla on etuna, että palvelinpuoli voi olla konfiguroitu huolehtimaan viitehakujen päivittämisestä poistamalla niitä automaattisesti palvelimen muistista. Jos syy poistamiseen on muutosten määrä verrattuna viitehaun hakutuloksiin, vertailu ja poistaminen voidaan suorittaa kohdassa 6-16.As stated above, the embodiment of Figure 6 has the advantage that the server side can be configured to take care of updating the reference searches by automatically deleting them from the server memory. If the reason for the deletion is the number of changes compared to the reference search search results, the comparison and deletion can be performed in steps 6-16.

Eräässä toisessa suoritusmuodossa, jossa kyselyvastaukset eivät sisällä tunnistetta tai tunnisteita, kun vastaava haku löytyy palvelimesta, käyttäjälaite on konfiguroitu havaitsemaan tallennettava viitehaku vasteena sille, että se vastaanottaa kyselyvastauksen tunnisteella.In another embodiment, where the query responses do not contain an identifier or identifiers when the corresponding search is found on the server, the user equipment is configured to detect a reference search to be stored in response to receiving the query response with an identifier.

Eräässä toisessa suoritusmuodossa jokainen kyselypyyntö, joka ei sisällä tunnistetta, tulkitaan käyttäjälaitteessa ja palvelimessa olemaan haulle, jonka tulokset tulee tallentaa viitehauksi, kun taas kyselypyyntö tunnisteella tulkitaan tarkoittavan vain tiedonhakua.In another embodiment, each query request that does not contain an identifier is interpreted as being on the UE and the server for a search whose results are to be stored as a reference search, while a query request with an identifier is interpreted as meaning only a search for information.

Lisäsuoritusmuodossa palvelin ja/tai käyttäjälaite ylläpitää tietoa ha-kumäärittelyistä, joilla ei ole tarkkaa yhteensopivuutta viitehauissa ja kuinka usein hakumäärittelyjä käytetään; ja vasteena sille, että hakumäärittelyjä käytetään ainakin tietty määrä, edullisesti ajanjakson aikana, palvelin tai käyttäjä-laite Hipaisee viitehaun päivittämisen/lisäämisen lisätäkseen hakumäärittelyjä vastaavan viitehaun viitehauksi.In a further embodiment, the server and / or user device maintains information about search definitions that do not have exact match in the reference searches and how often the search definitions are used; and in response to using at least a certain amount of search definitions, preferably over a period of time, the server or user device Hacks the update / insertion of the reference search to add the matching reference search to the reference search.

Kuvio 7 on kaavio, joka havainnollistaa tiedonhakua erään suoritusmuodon mukaisesti. Suoritusmuodossa oletetaan, että jokainen kyselyvastaus tallennetaan aikatiedolla.Figure 7 is a diagram illustrating information retrieval in accordance with one embodiment. In the embodiment, it is assumed that each query response is stored with time information.

Kuvion 7 esimerkissä oletetaan, että käyttäjälaitteella UT ja palvelimella on kummallakin viitehaku, jonka tunniste on A, hakumäärittelyt b1-b7, hakutulokset ra, rb, rc, rd, re, rf, rg ja aikaleima 0:00.In the example of Figure 7, it is assumed that the user equipment UT and the server each have a reference search having an identifier A, search definitions b1-b7, search results ra, rb, rc, rd, re, rf, rg, and a time stamp of 0:00.

Vasteena sille, että käyttäjälaite vastaanottaa hakumäärittelyt b1-b4 viestissä 7-1, käyttäjälaite tutkii muistissaan olevia viitehakuja ja löytää kohdassa 7-2 yhteensopivuuden, A:n, jolla on aikaleima 0:00. Siksi käyttäjälaite lähettää kyselypyynnön 7-3 hakumäärittelyjen b1-b4 ja viitehaun tunnisteen eli A: n kanssa.In response to the user equipment receiving the paging definitions b1-b4 in message 7-1, the user equipment examines the reference searches in its memory and finds, in step 7-2, a matching A having a time stamp 0:00. Therefore, the UE sends a query request 7-3 with the search definitions b1-b4 and the reference search identifier, i.e. A.

Vasteena kyselypyynnön 7-3 vastaanottamiselle palvelin suorittaa vastaanotettuja hakumäärittelyjä käyttäen tiedonhaun tietovarastosta DB (viestit 7-4, 7-5) ja saa viestissä 7-5 hakutulokset, hakutulosten ollessa ra, rb’, rc ja rd. Sitten palvelin tutkii kohdassa 7-6 tunnistetta käyttäen palvelimen muistissa olevia viitehakuja. Yksi yhteensopivuus löytyy kohdassa 7-6 ja palvelin muu-tospakkaa kohdassa 7-6 haetun tiedon viitehaun hakutuloksiin. Lisäksi palvelin laskee kohdassa 7-6 tunnisteen B ja lähettää muutokset, tällä kertaa päivityksen rb+1 (eli rb:n muutoksen rb’:ksi) B:n ja uuden aikatiedon 0:20 kanssa kyselyvastauksessa 7-7 käyttäjälaitteelle. Palvelin myös tallentaa kohdassa 7-6 haun viitehauksi, jolla on tunnus B, hakumäärittelyt b1-b4, hakutulokset ra, rb’, rc ja rd, ja aikamäärittely 0:20.In response to receiving query request 7-3, the server performs retrieved search definitions using data retrieval database DB (messages 7-4, 7-5) and obtains search results in message 7-5 with search results ra, rb ', rc and rd. Then, in step 7-6, the server examines the identifier using the reference searches in the server memory. One compatibility is found in 7-6 and the server modifies the reference search results for the information retrieved in 7-6. In addition, at step 7-6, the server calculates the identifier B and sends the changes, this time with the update rb + 1 (i.e., the change of rb to rb ') B and the new time information 0:20 in the query response 7-7 to the UE. In step 7-6, the server also saves the search as a reference search with the identifier B, the search definitions b1-b4, the search results ra, rb ', rc and rd, and the time specification 0:20.

Kun käyttäjälaite vastaanottaa kyselyvastauksen 7-7, se hakee kohdassa 7-8 kyselyvastausta odottavan viitehaun eli viitehaun A hakutulokset, ottaa ne, jotka ovat hakumäärittelyjen mukaiset, ja päivittää ne kohdassa 7-8 tekemällä muutospurkamisen. Tällä kertaa rb täytyy päivittää rb+1:Mä, päivittämisen lopputuloksen ollessa rb’. Sitten käyttäjälaite lähettää hakutulokset eli ra:n, rb’:n, rc:n ja rd:n vastauksena viestissä 7-9. Palvelin myös tallentaa kohdassa 7-8 kyselyvastauksen sisällön viitehauksi, jolla on tunniste B, hakumäärittelyt b1-b4, hakutulokset ra, rb’, rcja rd, ja aikamäärittely 0:20.When the UE receives a query response 7-7, it retrieves the results of the reference search A, referenced search A, in 7-8, takes those that meet the search specifications, and updates them in 7-8 by performing a unpacking. This time, rb needs to be updated with rb + 1, with the result of the upgrade being rb '. The UE then sends the search results, i.e., ra, rb ', rc, and rd in response to message 7-9. In step 7-8, the server also saves the contents of the query response as a reference search that has tag B, search definitions b1-b4, search results ra, rb ', rc and rd, and a time definition of 0:20.

Jonkun ajan kuluttua käyttäjälaite vastaanottaa hakumäärittelyt b2-b8 viestissä 7-10 ja käyttäjälaite tutkii muistinsa viitehakuja ja löytää kohdassa 7-11 kaksi yhteensopivaa, A:n, jolla on aikaleima 0:00, ja B:n, jolla on aikalei-ma 0:20. Siksi käyttäjälaite lähettää kyselypyynnön 7-12 hakumäärittelyjen b2-b8 ja viitehakujen tunnisteiden eli A:n ja B:n kanssa.After a while, the UE receives the paging definitions in b2-b8 message 7-10, and the UE examines the references in its memory to find in step 7-11 two matching ones, A, which has a timestamp 0:00, and B, which has a timestamp 0: 20. Therefore, the UE sends a query request 7-12 with the search definitions b2-b8 and the reference search identifiers, i.e. A and B.

Vasteena kyselypyynnön 7-12 vastaanottamiselle palvelin suorittaa vastaanotettuja hakumäärittelyjä käyttäen tiedonhaun tietovarastosta DB (viestit 7-13, 7-14) ja saa viestissä 7-14 hakutulokset, tulosten ollessa rb’, rc, rd, re, rf, rg ja rh. Sitten palvelin ja tutkii kohdassa 7-15 viitehakuja käyttäen tunnisteita ja aikatietoa. Kaksi yhteensopivaa löytyy, ja palvelin valitsee kohdassa 7-17 tuoreimman ja vertaa kohdassa 7-17 valitun viitehaun hakumäärittelyjä eli b1-b4:sta vastaanotettuihin hakumäärittelyihin eli b2-b8:aan, määrittää kohdassa 7-17, että b2-b4 muutospakataan B:hen, ja muutospakkaa kohdassa 7-17 haetun tiedon, joka on yhteensopiva määriteltyjen hakumäärittelyjen kanssa, valitun viitehaun vastaavaan tietoon. Tällä kertaa päivityksiä ei löytynyt ja vain tunniste B lisätään kyselyvastaukseen kohdassa 7-17. Sitten palvelin valitsee kohdassa 7-17 jäljellä olevan yhteensopivan (vanhemman), vertaa kohdassa 7-17 jäljellä olevia vastaanotettuja hakumäärittelyjä eli b5-b8:aa valitun viite-haun hakumäärittelyjen eli b1-b7:n kanssa, määrittelee kohdassa 7-17, että b5-b7 muutospakataan A:han, ja muutospakkaa kohdassa 7-17 haetun tiedon, joka sopii määritettyihin hakumäärittelyihin valitussa viitehaussa. Tällä kertaa päivityksiä ei löytynyt ja vain tunniste A lisätään kyselyvastaukseen kohdassa 7-17. Lisäksi palvelin havaitsee, että hakumäärittelyä b8 ei ole prosessoitu eikä kyselypyynnössä ole käytettävissä käyttämättömiä viitehakuja. Siksi palvelin generoi tunnisteen C ja pakkaa kohdassa 7-15 b8:Ile haetun tiedon ja lisää pakatun tiedon rh ja tunnisteen C ja aikatiedon 0:28 kyselyvastaukseen kohdassa 7-17 ja lähettää kyselyvastauksen 7-18. Palvelin myös tallentaa kohdassa 7-17 viitehaun C haetulla tiedolla (rb’, rc, rd, re, rf, rg and rh) ja aikaleimalla 0:28.In response to receiving query request 7-12, the server performs received lookup definitions using the data retrieval database DB (messages 7-13, 7-14) and retrieves search results in message 7-14, the results being rb ', rc, rd, re, rf, rg and rh. Then, in step 7-15, the server and examines the referrals using tags and time information. Two matches are found, and in step 7-17, the server selects the most recent search definitions in step 7-17 and compares it with the search definitions received in b1-b4, i.e. b2-b8, determines in bits 7-17 that the b2-b4 change pack is in B , and repackage the information retrieved in step 7-17, which is compatible with the specified search specifications, for the corresponding reference search selected. This time no updates were found and only label B is added to the query response in steps 7-17. Then, in step 7-17, the server selects the remaining compatible (older), in step 7-17, retrieves the received search specifications, i.e. b5-b8, with the referenced search specifications, i.e. b1-b7, of the selected reference, determines in bits 7-17 that b5 -b7 is packed into A, and packed with the information retrieved in Steps 7-17 that matches the specified search definitions in the selected reference search. This time no updates were found and only label A is added to the query response in steps 7-17. In addition, the server detects that search specification b8 has not been processed and that unused reference searches are not available in the query request. Therefore, the server generates an identifier C and compresses the information retrieved in step 7-15 b8 and adds the compressed information rh and the identifier C and time information 0:28 to the query response in step 7-17 and sends the query response 7-18. In step 7-17, the server also stores the reference search C with the information retrieved (rb ', rc, rd, re, rf, rg and rh) and a time stamp of 0:28.

Kun käyttäjälaite vastaanottaa kyselyvastauksen 7-18, se hakee kohdassa 7-19 kyselyvastausta odottavien viitehakujen eli viitehakujen A ja B hakutulokset, ottaa tuoreemman ja ottaa tulokset b2-b4:Ile eli rb’:n, rc:n ja rd:n viitehausta B, sitten ottaa b5-b7:n eli re:n, rf:n ja rg:n viitehausta A, muutospur-kaa ne kyselyvastauksen 7-16 tiedon kanssa, lisää tuloksena (rb’, rc, rd, re, rf, rg and rh) vastaussanomaan 7-18. Käyttäjälaite myös tallentaa kohdassa 7-17 viitehaun C, joka sisältää hakutuloksina rb’:n, rc:n, rd:n, re:n, rf:n, rg:n ja rh:n ja aikaleimana 0:28.When the UE receives a query answer 7-18, it retrieves in step 7-19 the results of the referenced referrals, referenced referrals A and B, takes refresh and returns the results for b2-b4, i.e. referrer B of rb ', rc and rd, then take the reference search A of b5-b7, i.e. re, rf and rg, change them with the query answer 7-16 information, add as a result (rb ', rc, rd, re, rf, rg and rh ) in response message 7-18. In step 7-17, the UE also stores a reference search C which includes rb ', rc, rd, re, rf, rg, and rh as search results and a timestamp of 0:28.

Kuten edellä olevasta huomataan, sekä A:n että B:n käyttäminen pelkän A:n sijaan aikaansai laskentakapasiteetin vähemmän käytön ja vähemmän tiedon lähettämisen, koska muutoksia ei lähetetty. Jos vain A:ta olisi käytetty, muutos rb+1 olisi lähetetty (taas).As noted above, using both A and B instead of A alone resulted in less use of computing capacity and less data transmission because no changes were sent. If only A had been used, the change rb + 1 would have been posted (again).

Eräässä toisessa suoritusmuodossa, jossa palvelin valitsee, mitä vastaanotetuista viitehauista käytetään, palvelin voi olla konfiguroitu suorittamaan vertailut saavuttaakseen heuristisen paremmuusjärjestyksen eri viite-hauista tietyille hakumäärittelyille. Esimerkiksi kohdan 7-15 jälkeen palvelin voi verrata, olisiko ollut mahdollista saada parempi tulos (eli pienempi ja/tai nopeampi vastaus), jos A:ta olisi käytetty B:n sijaan tai C paras. Tätä tietoa voidaan käyttää, kun seuraavan kerran haetaan b3-b8.In another embodiment, where the server selects which of the received reference searches to use, the server may be configured to perform comparisons to achieve a heuristic ranking of the various reference searches for particular search definitions. For example, after step 7-15, the server can compare whether it would have been possible to get a better result (i.e., a smaller and / or faster response) if A had been used instead of B or C was best. This information can be used the next time you search for b3-b8.

Edellä kuvioiden 4, 5, 6 ja 7 yhteydessä esitetyt vaiheet/kohdat, viestit ja liittyvät toiminnot eivät ole absoluuttisessa aikajärjestyksessä ja joitakin vaiheista/kohdista voidaan suorittaa samanaikaisesti tai esitetystä järjestyksestä poiketen. Palvelin voi esimerkiksi samanaikaisesti hakea tietoa tietokannasta, muutospakata sitä viitehakuun(viitehakuihin) ja lähettää muutospak-kaamisen tulosta asiakkaalle tietovirtana. Vastaavasti asiakas voi samanaikai sesti vastaanottaa kyselyvastauksen tietovirtana, purkaa sen ja aikaansaada hakutulos tietovuona. Muita toimintoja voidaan myös suorittaa vaihei-den/kohtien välissä tai vaiheissa/kohdissa ja muita viestejä voidaan lähettää havainnollistettujen viestin välissä. Jotkut vaiheet/kohdat tai osa vaiheis-ta/kohdista voidaan myös jättää pois tai yhdistää tai korvata vastaavalla vai-heella/kohdalla tai osalla vaihetta/kohtaa. Esimerkiksi tiedon pakkaaminen ja purkaminen voidaan jättää pois. Laitetoiminnot havainnollistavat proseduuria, joka voidaan toteuttaa yhdessä tai useammassa fyysisessä tai loogisessa epiteetissä. Viestit ovat vain esimerkinomaisia ja voivat jopa käsittää useita erillisiä viestejä saman tiedon siirtämiseksi. Lisäksi viestit voivat sisältää myös muuta tietoa. Lisäksi viestit voivat olla sisäistä tiedonvaihtoa, joita ei lähetetä verkon yli.The steps / items, messages, and related functions shown above in connection with Figures 4, 5, 6 and 7 are not in absolute chronological order and some of the steps / items may be performed simultaneously or in a different order. For example, the server can simultaneously retrieve information from a database, change it to a reference search (s), and send the result of the change compression to a client as a data stream. Similarly, the client can simultaneously receive, extract and query the query response as a data stream. Other operations may also be performed between steps / points or steps / points and other messages may be transmitted between the illustrated message. Some of the steps / points or some of the steps / points may also be omitted or combined or replaced with the corresponding step / point or part of the step / point. For example, data compression and decompression can be omitted. Device functions illustrate a procedure that can be implemented in one or more physical or logical epithets. The messages are merely exemplary and may even comprise several separate messages to transfer the same information. In addition, the messages may also contain other information. In addition, messages may be internal communications that are not transmitted over the network.

Vaikka keksintö on selitetty edellä olettaen, että palvelin generoi tunnisteet, on alan ammattilaisille selvää, että käyttäjälaite voi myös olla konfi-guroitu generoimaan tunnisteet.Although the invention has been described above assuming that the server generates identifiers, it will be apparent to those skilled in the art that the user equipment may also be configured to generate identifiers.

Edellä selitetyissä suoritusmuodoissa muutosten havaitseminen ja muutospakkaaminen on selitetty yleisellä tasolla, joka havainnollistaa, mitä tarkoitetaan muutospakkaamisella. Tulee kuitenkin ymmärtää, että muutospak-kaamisen tekninen toteutus voi olla eri kuin yleisellä tasolla kuvatun. Jos esimerkiksi käytetään useita viitehakuja, muutospakkaaminen voi ottaa ne kaikki samanaikaisesti syötteinä ja prosessoida ne tämän erityisen muutospakkaa-mismenetelmän sääntöjen/toteutuksen mukaisesti. Tekninen toteutus riippuu luonnollisesti käytetystä muutospakkaamismenetelmästä.In the embodiments described above, detection of change and change compression are explained in general terms, illustrating what is meant by change compression. It will be understood, however, that the technical implementation of change packing may be different from that described generally. For example, if multiple reference searches are used, the change compression can take all of them simultaneously as inputs and process them according to the rules / implementation of this particular change compression method. The technical implementation will naturally depend on the change compression method used.

Edellä selitettyjä suoritusmuotoja tai edellä kuvattujen piirteiden eri yhdistelmiä, jotka muodostavat lisäsuoritusmuotoja, voidaan soveltaa tiedonhakuihin yrityksissä, joilla on suuret tietokannat, yli niiden eri verkkojen, kuten sähköyhtiö, kaasuyhtiö, tietoliikenneyhtiö, tai tiedonhakuihin, kun rakenteellisia malleja haetaan rakennustyömaalla, arkkitehdin toimistossa tai betonielement-titehtaalla, jne.The above-described embodiments, or various combinations of the above-described features that constitute additional embodiments, can be applied to information retrieval in companies with large databases, across networks such as the electricity company, gas company, telecommunications company, or information retrieval when structural designs are sought at the factory, etc.

Kuten edellä olevasta on ilmeistä, keksinnön eräs näkökohta käsittää tiedon kopioiden tallentamisen (melko) halvalle medialle, kopioiden ollessa tallennettuna viitehaun muodossa, ja vanhan tallennetun kopion hyödyntämisen niin paljon kuin on mahdollista mutta antaen silti tiedonhakijalle päivitettyä tietoa. Tiedon vanhojen kopioiden hyödyntäminen tekee helpommaksi eri hakujen, jotka hakevat samankaltaista tietoa monelle vaihtoehtoisella tavalla, käytön, erityisesti kun haut ovat toistuvia.As is evident from the foregoing, one aspect of the invention involves storing copies of information on a (fairly) cheap medium, the copies being stored in a reference search, and utilizing the old stored copy as much as possible while still providing the information seeker with updated information. Utilizing old copies of information makes it easier to use different searches that search for similar information in many alternative ways, especially when they are repeated.

Keksinnön eräs toinen näkökohta on, että muutospakkaaminen voidaan suorittaa binääriesitystasolla, jolloin ei ole tarvetta ymmärtää tiedon sisältöä. Keksintö on kuitenkin hyvin sovellettavissa, jos käytetään suurempaa ymmärtämisen tasoa.Another aspect of the invention is that the change compression can be performed at the binary presentation level, without the need to understand the content of the information. However, the invention is well applicable if a higher level of understanding is used.

Alan ammattilaiselle on ilmeistä, että teknologian kehittyessä keksinnöllinen ajatus voidaan toteuttaa monin eri tavoin. Keksintö ja sen suoritusmuodot eivät rajoitu edellä kuvattuihin esimerkkeihin vaan voivat vaihdella vaatimusten puitteissa.It will be obvious to a person skilled in the art that as technology advances, the inventive concept can be implemented in many different ways. The invention and its embodiments are not limited to the examples described above, but may vary within the scope of the claims.

Claims (17)

1. Menetelmä, joka käsittää: ylläpidetään muistissa yhtä tai useampaa viitehakua, kunkin viite-haun käsittäessä ainakin hakutulokset, vastaanotetaan (7-1) hakupyyntö, joka käsittää pyynnön lisäksi ainakin hakumäärittelyt, tunnettu siitä, että menetelmä käsittää lisäksi: tarkistetaan (7-2) hakumäärittelyjä käyttäen, löytyykö muistista soveltuvaa viitehakua, soveltuvan viitehaun ollessa muistissa oleva viitehaku, joka vastaa ennalta määritellyn ehdon mukaisesti hakupyynnössä vastaanotettuja hakumäärittelyjä, jos soveltuva viitehaku löytyy, lähetetään (7-3) vasteena soveltuvan viitehaun olemassa olemiselle hakumäärittelyt ja viitehaun identifioivaa tietoa kyselypyyntönä palvelimelle, vastaanotetaan (7-7) kyselyvastaus kyselypyyn-töön, ja jos kyselyvastaus sisältää muutoksia viitehakuun, päivitetään (7-8) viitehaun tulokset vastaanotetuilla muutoksilla, päivittämisen sisältäessä muu-tospurkamisen, ja lähetetään (7-9) päivitetyt hakutulokset vastauksena hakupyyntöön, ja jos kyselyvastaus ei sisällä muutoksia viitehakuun, lähetetään viitehaun tulokset vastauksena hakupyyntöön, ja jos soveltuvaa viitehakua ei löydy, lähetetään hakumäärittelyt kyselypyyntönä palvelimelle, vastaanotetaan hakutulokset, ja lähetetään vastaanotetut hakutulokset vastauksena hakupyyntöön.A method comprising: maintaining in memory one or more reference searches, each reference search comprising at least search results, receiving (7-1) a search request comprising at least search definitions in addition to the request, characterized in that the method further comprises: checking (7-2) ) using the search definitions, whether a matching reference search is found in the memory; receiving (7-7) a query response to the query request, and if the query response includes changes to the reference search, updating (7-8) the reference search results with the received changes, the updating including change decompression, and sending (7-9) updates yt search results in response to the search request, and if the query response contains no changes to the reference search, sending the reference search results in response to the search request; and if a suitable reference search is not found, sending the search specifications as a query request to the server; 2. Patenttivaatimuksen 1 mukainen menetelmä, joka lisäksi käsittää päivitettyjen hakutulosten tallentamisen (7-8) uudeksi viitehauksi.The method of claim 1, further comprising storing (7-8) updated search results as a new reference search. 3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, jossa soveltuva viitehaku on viitehaku, jonka hakumäärittelyt limittyvät hakupyynnössä vastaanotettujen hakumäärittelyjen kanssa.The method of claim 1 or 2, wherein the applicable reference search is a reference search whose search definitions overlap with the search definitions received in the search request. 4. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, joka lisäksi käsittää: löydetään tarkistamisen aikana useampi kuin yksi soveltuva viitehaku, ja lähetetään kyselypyynnössä kaikki löydetyt viitehaut identifioivaa tietoa.The method of claim 1 or 2, further comprising: detecting more than one suitable reference search during the check, and transmitting in the query request all identifying information of the reference references found. 5. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, joka lisäksi käsittää: löydetään tarkistamisen aikana useampi kuin yksi soveltuva viiteha- ku, ja valitaan ennalta määritelty määrä löydetyistä viitehauista identifioitaviksi kyselypyynnössä.The method of claim 1 or 2, further comprising: detecting more than one suitable reference search during the check, and selecting a predetermined number of the found reference search results to be identified in the query request. 6. Patenttivaatimuksen 5 mukainen menetelmä, jossa valitseminen suoritetaan vasteena sille, että soveltuvien viitehakujen määrä ylittää ennalta määritellyn kynnysarvon.The method of claim 5, wherein the selection is performed in response to the number of applicable reference searches exceeding a predetermined threshold. 7. Menetelmä, joka käsittää: ylläpidetään (6-0) muistissa yhtä tai useampaa viitehakua, kunkin viitehaun sisältäessä ainakin hakutuloksia, vastaanotetaan (6-3) kyselypyyntö, joka käsittää ainakin hakumää- rittelyt, haetaan (6-4, 6-5) tietovarastosta hakumäärittelyjä käyttäen haku-määrittelyt täyttävä tieto, jos kyselypyyntö käsitti lisäksi tietoa, joka identifioi viitehaun, tarkistetaan (6-6) viitehaun identifioivaa tietoa käyttäen, onko vastaavaa viitehakua olemassa, vasteena sille, että vastaava viitehaku on olemassa, verrataan haettua tietoa viitehaun hakutuloksiin, suoritetaan muutosten havaitseminen muu-tospakkaamalla, ja jos muutoksia havaitaan, lähetetään viitehaun identifioivaa tietoa ja havaitut muutokset kyselyvastauksena, ja jos muutoksia ei havaita, lähetetään viitehaun identifioivaa tietoa kyselyvastauksena, ja jos kyselypyyntö ei käsittänyt tietoa, joka identifioi viitehaun, lähetetään haettu tieto kyselyvastauksena.A method comprising: maintaining (6-0) in memory one or more reference searches, each reference search including at least search results, receiving (6-3) a query request comprising at least search specifications, retrieving (6-4, 6-5) storing information from the repository using search definitions, if the query request further included information identifying the reference search, checking (6-6) using the reference search identifying information to determine whether a corresponding reference search exists, in response to matching the search information with the reference search results, performing a change detection by a change packet, and if the changes are detected, sending the reference search identifying information and the detected changes in a query response; 8. Patenttivaatimuksen 7 mukainen menetelmä, joka käsittää lisäksi haetun tiedon tallentamisen uudeksi viitehauksi.The method of claim 7, further comprising storing the retrieved information as a new reference search. 9. Patenttivaatimuksen 7 tai 8 mukainen menetelmä, joka käsittää lisäksi: vastaanotetaan kyselypyynnössä tietoa, joka identifioi useamman kuin yhden viitehaun, ja valitaan yhden tai useamman ennalta määritellyn säännön mukaisesti identifioiduista viitehauista yksi tai useampi viitehaku käytettäväksi muutosten havaitsemiseen.The method of claim 7 or 8, further comprising: receiving, in the query request, information identifying more than one reference search, and selecting one or more reference searches from the one or more reference searches identified according to a predefined rule for use in detecting changes. 10. Patenttivaatimuksen 7 tai 8 mukainen menetelmä, vastaanotetaan kyselypyynnössä useamman kuin yhden viitehaun identifioivaa tietoa, suoritetaan vertailu kullekin viitehaulle.The method of claim 7 or 8, receiving information identifying more than one reference search in a query request, performing a comparison for each reference search. 11. Jonkin edellä olevan patenttivaatimuksen mukainen menetelmä, jossa ylläpitäminen käsittää lisäksi viitehakujen arvioinnin ja viitehakujen poistamisen.The method of any one of the preceding claims, wherein the maintaining further comprises evaluating and removing the reference searches. 12. Tietokoneohjelmistotuote, joka käsittää ohjelmaohjeita, jossa mainittujen ohjelmaohjeiden suorittaminen aikaansaa laitteen, joka sisältää tie-tokoneohjelmistotuotteen, suorittamaan minkä tahansa edellä olevan patenttivaatimuksen mukaisen menetelmän.A computer software product comprising program instructions, wherein executing said program instructions causes a device including a computer software product to perform the method of any one of the preceding claims. 13. Laite (200), joka käsittää muistia (24) ainakin yhden viitehaun (25) tallentamiseksi, viitehaun käsittäessä ainakin hakutuloksia (253), välineitä hakumäärittelyt sisältävän hakupyynnön vastaanottamiseksi, välineet (23) kyselypyynnön muodostamiseksi, välineet (26) kyselypyynnön lähettämiseksi, välineet (27) kyselyvastauksen vastaanottamiseksi, välineet (23) vastauksen muodostamiseksi hakupyyntöön kyselyvastauksessa vastaanotetusta tiedosta, ja välineet (23) vastauksen lähettämiseksi hakupyyntöön, tunnettu siitä, että: laite käsittää lisäksi välineet (23) hakumääritelmiä käyttäen sen tarkistamiseksi muistista, onko soveltuvaa viitehakua olemassa, välineiden tarkistamiseksi ollessa vasteellisia välineille vastaanottamiseksi, ja siitä, että välineet (23) kyselypyynnön muodostamiseksi on konfiguroitu lisäämään vasteena soveltuvalle viitehaulle kyselypyyntöön tietoa, joka identifioi viitehaun, välineet (27) kyselyvastauksen vastaanottamiseksi on konfiguroitu vastaanottamaan vastaus, joka identifioi viitehaun ja sisältää muutoksia viite-hakuun, välineet (23) vastauksen muodostamiseksi hakupyyntöön on konfiguroitu vasteena viitehaun identifioimalle kyselyvastaukselle, joka sisältää muutoksia, päivittämään hakumäärittelyt täyttävät viitehakutulokset vastaanotetuilla muutoksilla, joka päivittäminen sisältää muutospurkamisen, ja muodostamaan vastaus hakupyyntöön päivitetyistä viitehakutuloksista vastauksena, vasteena viitehaun identifioimalle kyselyvastaukselle, joka ei sisällä muutoksia, muodostamaan vastaus hakumäärittelyt täyttävistä viitehakutuloksista.A device (200) comprising a memory (24) for storing at least one reference search (25), the reference search comprising at least search results (253), means for receiving a search request containing search specifications, means (23) for generating a query request, means (26) (27) for receiving a query response, means (23) for generating a response to a search request from information received in the query response, and means (23) for transmitting a response to the request, characterized in that: the apparatus further comprises means (23) for retrieving means for generating a query request, and configuring the means (23) for generating a query request to include in the response request request information identifying the reference search, means (27) for receiving the query response. means (23) for generating a response to the search request is configured in response to a query response identified by the reference search to include changes, updating the search definitions that match the reference search results, and updating in response to the updated referenced search results in response to the unqualified query response identified by the reference search to form a response from the referenced search results that meet the search specifications. 14. Laite (301), joka käsittää muistia (34), välineitä (32) tietovaraston käyttämiseksi, välineitä (37) kyselyvastauksen, joka käsittää hakumäärittelyt, vastaanottamiseksi, välineitä (32) tiedon hakemiseksi tietovarastosta käyttäen hakumää- rittelyjä, välineitä (31) kyselyvasteen lähettämiseksi, joka kyselyvaste sisältää tietovarastosta haetun tiedon, tunnettu siitä, että muisti (34) on konfiguroitu tallentamaan ainakin yksi viitehaku, joka käsittää ainakin hakutuloksia, välineet (37) kyselyvastauksen vastaanottamiseksi on konfiguroitu vastaanottamaan kyselyvastaus, joka käsittää hakumäärittelyjen lisäksi viite-haun identifioivaa tietoa, ja siitä, että laite käsittää lisäksi välineitä (31) osoitetun viitehaun hakutulosten hakemiseksi, välineitä (31) haetun tiedon vertaamiseksi haettuihin osoitetun viite-haun hakutuloksiin ja muutospakkaamisen suorittamiseksi muutosten havaitsemista varten, ja siitä että, välineet (31) kyselyvasteen lähettämiseksi on konfiguroitu lähettämään vasteena kyselyvastaukselle, joka käsittää viitehaun identifioivaa tietoa, vertailun aikana havaitut muutokset tai osoituksen ettei muutoksia havaittu ky-selyvasteena.A device (301) comprising memory (34), means (32) for accessing a data warehouse, means (37) for receiving a query response comprising search definitions, means (32) for retrieving information from a data warehouse using search definitions, means (31) for transmitting, which query response includes information retrieved from the data store, characterized in that the memory (34) is configured to store at least one reference search comprising at least search results, means (37) for receiving the query response configured to receive a query response and that the device further comprises means (31) for retrieving the referenced referenced search results, means (31) for comparing the retrieved information with the retrieved referenced reference search results and performing a change packet for detecting changes, and for transmission is configured to send in response to a query response that includes reference search identifying information, changes detected during the comparison, or an indication that no changes were detected in the query response. 15. Patenttivaatimuksen 14 mukainen laite (301), jossa laite on palvelin, joka käsittää lisäksi välineitä (31) viitehakujen tallentamiseksi asiakas-kohtaisesti.The device (301) of claim 14, wherein the device is a server, further comprising means (31) for storing reference searches on a client-by-client basis. 16. Patenttivaatimuksen 13 tai 14 mukainen laite (301), jossa laite on palvelin tai käyttäjälaite tai työasema.The device (301) of claim 13 or 14, wherein the device is a server or user device or workstation. 17. Järjestelmä (1), joka käsittää ainakin vaatimuksen 13 mukaisen laitteen (200, 210) ja vaatimuksen 14 tai 15 mukaisen laitteen (301) ja tietovaraston (303), joka sisältää ajan tasalla olevaa tietoa. PatentkravA system (1) comprising at least the device (200, 210) of claim 13 and the device (301) of claim 14 or 15 and a data store (303) containing up-to-date information. claim
FI20085597A 2008-06-17 2008-06-17 Information search FI127113B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FI20085597A FI127113B (en) 2008-06-17 2008-06-17 Information search
US12/248,280 US8171008B2 (en) 2008-06-17 2008-10-09 Data retrieval

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FI20085597A FI127113B (en) 2008-06-17 2008-06-17 Information search

Publications (3)

Publication Number Publication Date
FI20085597A0 FI20085597A0 (en) 2008-06-17
FI20085597A FI20085597A (en) 2009-12-18
FI127113B true FI127113B (en) 2017-11-15

Family

ID=39589360

Family Applications (1)

Application Number Title Priority Date Filing Date
FI20085597A FI127113B (en) 2008-06-17 2008-06-17 Information search

Country Status (2)

Country Link
US (1) US8171008B2 (en)
FI (1) FI127113B (en)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8930331B2 (en) 2007-02-21 2015-01-06 Palantir Technologies Providing unique views of data based on changes or rules
US8984390B2 (en) 2008-09-15 2015-03-17 Palantir Technologies, Inc. One-click sharing for screenshots and related documents
US9092482B2 (en) 2013-03-14 2015-07-28 Palantir Technologies, Inc. Fair scheduling for mixed-query loads
US8799240B2 (en) 2011-06-23 2014-08-05 Palantir Technologies, Inc. System and method for investigating large amounts of data
US9547693B1 (en) 2011-06-23 2017-01-17 Palantir Technologies Inc. Periodic database search manager for multiple data sources
US9280532B2 (en) 2011-08-02 2016-03-08 Palantir Technologies, Inc. System and method for accessing rich objects via spreadsheets
US8504542B2 (en) 2011-09-02 2013-08-06 Palantir Technologies, Inc. Multi-row transactions
FI128995B (en) 2012-01-02 2021-04-30 Tekla Corp Object grouping in computer aided modeling
EP2862144A4 (en) 2012-06-18 2016-02-17 Viewpoint Inc A system and method linking building information modeling and enterprise resource planning
US10275778B1 (en) 2013-03-15 2019-04-30 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures
US9116975B2 (en) 2013-10-18 2015-08-25 Palantir Technologies Inc. Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores
US9043696B1 (en) 2014-01-03 2015-05-26 Palantir Technologies Inc. Systems and methods for visual definition of data associations
US9619557B2 (en) 2014-06-30 2017-04-11 Palantir Technologies, Inc. Systems and methods for key phrase characterization of documents
US9535974B1 (en) 2014-06-30 2017-01-03 Palantir Technologies Inc. Systems and methods for identifying key phrase clusters within documents
US9419992B2 (en) 2014-08-13 2016-08-16 Palantir Technologies Inc. Unwanted tunneling alert system
US9454281B2 (en) 2014-09-03 2016-09-27 Palantir Technologies Inc. System for providing dynamic linked panels in user interface
US10362133B1 (en) 2014-12-22 2019-07-23 Palantir Technologies Inc. Communication data processing architecture
US10552994B2 (en) 2014-12-22 2020-02-04 Palantir Technologies Inc. Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items
US9348920B1 (en) 2014-12-22 2016-05-24 Palantir Technologies Inc. Concept indexing among database of documents using machine learning techniques
US10452651B1 (en) 2014-12-23 2019-10-22 Palantir Technologies Inc. Searching charts
US9817563B1 (en) 2014-12-29 2017-11-14 Palantir Technologies Inc. System and method of generating data points from one or more data stores of data items for chart creation and manipulation
US9672257B2 (en) 2015-06-05 2017-06-06 Palantir Technologies Inc. Time-series data storage and processing database system
US9384203B1 (en) 2015-06-09 2016-07-05 Palantir Technologies Inc. Systems and methods for indexing and aggregating data records
US9407652B1 (en) 2015-06-26 2016-08-02 Palantir Technologies Inc. Network anomaly detection
US9537880B1 (en) 2015-08-19 2017-01-03 Palantir Technologies Inc. Anomalous network monitoring, user behavior detection and database system
US10402385B1 (en) 2015-08-27 2019-09-03 Palantir Technologies Inc. Database live reindex
US9454564B1 (en) 2015-09-09 2016-09-27 Palantir Technologies Inc. Data integrity checks
US10044745B1 (en) 2015-10-12 2018-08-07 Palantir Technologies, Inc. Systems for computer network security risk assessment including user compromise analysis associated with a network of devices
US9542446B1 (en) 2015-12-17 2017-01-10 Palantir Technologies, Inc. Automatic generation of composite datasets based on hierarchical fields
US9753935B1 (en) 2016-08-02 2017-09-05 Palantir Technologies Inc. Time-series data storage and processing database system
US10133588B1 (en) 2016-10-20 2018-11-20 Palantir Technologies Inc. Transforming instructions for collaborative updates
US10318630B1 (en) 2016-11-21 2019-06-11 Palantir Technologies Inc. Analysis of large bodies of textual data
US10884875B2 (en) 2016-12-15 2021-01-05 Palantir Technologies Inc. Incremental backup of computer data files
US10223099B2 (en) 2016-12-21 2019-03-05 Palantir Technologies Inc. Systems and methods for peer-to-peer build sharing
US10896097B1 (en) 2017-05-25 2021-01-19 Palantir Technologies Inc. Approaches for backup and restoration of integrated databases
GB201708818D0 (en) 2017-06-02 2017-07-19 Palantir Technologies Inc Systems and methods for retrieving and processing data
US11334552B2 (en) 2017-07-31 2022-05-17 Palantir Technologies Inc. Lightweight redundancy tool for performing transactions
US10417224B2 (en) 2017-08-14 2019-09-17 Palantir Technologies Inc. Time series database processing system
US10216695B1 (en) 2017-09-21 2019-02-26 Palantir Technologies Inc. Database system for time series data storage, processing, and analysis
US10614069B2 (en) 2017-12-01 2020-04-07 Palantir Technologies Inc. Workflow driven database partitioning
US11281726B2 (en) 2017-12-01 2022-03-22 Palantir Technologies Inc. System and methods for faster processor comparisons of visual graph features
US11016986B2 (en) 2017-12-04 2021-05-25 Palantir Technologies Inc. Query-based time-series data display and processing system
GB201807534D0 (en) 2018-05-09 2018-06-20 Palantir Technologies Inc Systems and methods for indexing and searching
CN110941641B (en) * 2019-11-15 2022-06-21 南威软件股份有限公司 Method for searching data across multiple databases

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6766315B1 (en) 1998-05-01 2004-07-20 Bratsos Timothy G Method and apparatus for simultaneously accessing a plurality of dispersed databases
US6638314B1 (en) 1998-06-26 2003-10-28 Microsoft Corporation Method of web crawling utilizing crawl numbers
US6763351B1 (en) * 2001-06-18 2004-07-13 Siebel Systems, Inc. Method, apparatus, and system for attaching search results
JP2003281191A (en) * 2002-03-20 2003-10-03 Fujitsu Ltd Retrieval server and retrieval result providing method
US7120666B2 (en) * 2002-10-30 2006-10-10 Riverbed Technology, Inc. Transaction accelerator for client-server communication systems
US20080147601A1 (en) * 2004-09-27 2008-06-19 Ubmatrix, Inc. Method For Searching Data Elements on the Web Using a Conceptual Metadata and Contextual Metadata Search Engine

Also Published As

Publication number Publication date
US20090313223A1 (en) 2009-12-17
FI20085597A (en) 2009-12-18
FI20085597A0 (en) 2008-06-17
US8171008B2 (en) 2012-05-01

Similar Documents

Publication Publication Date Title
FI127113B (en) Information search
US8117215B2 (en) Distributing content indices
US7640354B2 (en) Scalable differential compression of network data
JP5828760B2 (en) Method and system for cache optimization
US6760763B2 (en) Server site restructuring
US8996568B2 (en) Methods and apparatus for efficiently processing multiple keyword queries on a distributed network
KR101475964B1 (en) In-memory caching of shared customizable multi-tenant data
US9984093B2 (en) Technique selection in a deduplication aware client environment
KR100971863B1 (en) System and method for batched indexing of network documents
US7860825B2 (en) Method for synchronizing software application and user data for asynchronous client-server and peer to peer computer networks
US6957212B2 (en) Apparatus and methods for intelligently caching applications and data on a gateway
US8396843B2 (en) Active file instant cloning
US9917894B2 (en) Accelerating transfer protocols
US10459886B2 (en) Client-side deduplication with local chunk caching
US20050027731A1 (en) Compression dictionaries
CN101867607A (en) Distributed data access method, device and system
US20190155798A1 (en) Cache management
CN108282525B (en) Video resource management system and method based on peer-to-peer network
Tummarello et al. RDFSync: efficient remote synchronization of RDF models
CN111045988B (en) File searching method, device and computer program product
US10606805B2 (en) Object-level image query and retrieval
US20040117437A1 (en) Method for efficient storing of sparse files in a distributed cache
US20120203660A1 (en) Co-occurrence serendipity recommender
US20160044077A1 (en) Policy use in a data mover employing different channel protocols
US20230138113A1 (en) System for retrieval of large datasets in cloud environments

Legal Events

Date Code Title Description
FG Patent granted

Ref document number: 127113

Country of ref document: FI

Kind code of ref document: B