APPARATUS FOR BROADCASTING DATABASES
This invention relates to apparatus for broadcasting databases .
The resources available at a user terminal in a digital broadcast system are limited. The limitation is in terms of data storage and processing power. These limited resources constitute a fundamental problem with the broadcasting of large databases.
It is an aim of the present invention to obviate or reduce the above mentioned problem.
Accordingly, in one non-limiting embodiment of the present invention there is provided apparatus for using database information such that indexes to the database are delivered with database files in a broadcast network to terminal equipment where the indexes are used to enable search of the database to retrieve useful records.
The apparatus may be one in which the records derived from the search are used as references to further information held on data files. The data files may be located in a terminal or elsewhere.
The apparatus may be one in which the search results are displayed directly to a user. Alternatively or in addition, the apparatus may be one in which the search results are used as a reference to files found. The files found may be in a transmission, a remote server, or elsewhere. Alternatively or in addition, the apparatus
may be one in which the search results are used to enable the construction of a further search of the database. The further search of the database may be effected using conventional search technology, for example SQL.
The invention may be regarded as being based upon the realisation that, in order to allow for increasing data complexity, a flexible approach for the division of functionality between a user terminal and a server is required. The user terminal may be regarded as a client terminal, and the server may be regarded as a broadcaster.
The apparatus of the present invention may be regarded as utilising a number of fundamental concepts as follows.
1. The use of two or more data access channels. These channels may be logically indistinguishable. A low cost/low performance channel (for example a broadcast carousal or data-transmission protocol) provides a minimum standard of service available to all user terminals. Subsequent channels provide access to more specific data by a negotiation with a server, for which the user may also be required to pay. The channels may be scaleable in terms of data availability and/or transmission rate.
2. Data tables may have related index tables. These index tables may have a much lower bandwidth requirement than the data tables to which they refer. This lower bandwidth enables the index tables to be transmitted on the lower performance channel, without a major impact on other services . The index tables contain the information held in
the data tables relevant for selection, without the overhead of extra data entries. For example, the data tables may contain only the fields that are used for selection operations from the data table. Searching the database using the indexes is more efficient than direct searching of the data table, especially where the power and memory of the terminal equipment is constrained. 3. The data table may then contain information for display or interaction with the user of the terminal equipment. The data table may also contain further code, for example an element of software code or a search instruction. The data table may alternatively contain a reference to a file containing information to display or communicate. Where information is found by reference, this may change in detail without changing the reference or the process that derives it .
Software located on the user machine may have full access to the index tables of all available information. Selection and sorting functions are performed on these index tables, without need of extra storage data stored in the related data tables. Once selection has been performed, the actual relevant data table entries can be retrieved. Where these are references to further files or data objects, then the location of these is an implementation and user decision, and it is able to be computed by the receiver from the reference. If the object or file is not available locally or in the broadcast data,
the apparatus/system may then retrieve it from a remote server without the requirement to search for it specifically.
This architecture works well when the data requirements are scaled. Thus the architecture works well in the case, for example, where 80% of users want access to 20% of the available data. The remaining 20% will want access to a small amount of the remaining 80% of the data. The 20% of the information can be broadcast on the low cost channel, along with details on how to access the other 80%. At times when the last 20% want to obtain information, it can be supplied by a second, more direct path.
The scaleable architecture provides a medium point between the following two extreme positions.
1. With only a single, low cost solution, the broadcaster is limited in the overall amount of data that can be supplied to the user base. Increasing the bandwidth of this minimum service, will increase the cost of user hardware with excess bandwidth wasted for low usage data.
2. With only a premium, point to point solution the broadcaster must have enough processing power available to handle all the user requests anticipated at all times. The architecture allows the broadcaster to supply point to point services for more limited data requirements.
An embodiment of the invention will now be described solely by way of example and with reference to the accompanying drawing.
Referring to the drawing, there is shown a server 1 which holds and maintains a database, along with text or audio-visual objects that can be accessed as individual files. These may include applications for a computer program that can be run on a terminal 5. The terminal 5 must be regarded as a user terminal or a consumer terminal . The database is indexed according to the needs of a broadcaster in order to enable searches on key data. The database, the index, some or all of the additional files, and the required applications are transmitted to the terminal 5 via a broadcast channel 4, after having been prepared as a digital stream in a stream builder 2, and multiplexed with other streams in a multiplexer 3.
The database and its indexes are received in the terminal 5 and interaction with this information can be selected by the user. The terminal 5 and the applications enable the user to select information from the database by searches which use the indexes. The search results can provide information directly, or references to files containing further useful data. Such files are found in the transmitted stream, or by connection on a return channel 6 via a wide area network 7 back to the server, where the information may be retrieved efficiently without further search. Information found by such reference may change independently of the reference if required.
In the terminal 5, an application program allows the following.
1. Selection of the database and indexes.
2. Search and selection of items from the database utilising the indexes, especially using the indexes in combination and/or through relating different data files.
An embodiment of the apparatus of the invention may be regarded as interactional digital television apparatus which uses a relational database held on a server which broadcasts database indexes. A digital television set top box may utilise a return path to the server, typically a telephone line, to convey the required search attribute back to the relational database server, which then broadcasts the required file, for example in MPEG form.
It is to be appreciated that the embodiment of the invention described above with reference to the accompanying drawing has been given by way of example only and that modifications may be effected.