Method and system for navigating a large amount of data
Methods for navigating a large amount of data are disclosed. In one embodiment, the present invention accesses a source of formatted warehoused data. The present invention then displays a grid on a display device. In one embodiment, the grid is an iconic representation of the formatted warehoused data. The grid is comprised of elements, each element corresponding to some portion of the formatted warehoused data. The present invention displays a portion of the formatted warehoused data on the display device in response to a selection of a corresponding element of the grid. In another embodiment, the formatted warehoused data is condensed so that it can be read in summary form to a user using a voice-based protocol. The user can issue voice commands to drill down deeper into the data, until the desired information is reached. The user thus doesn't need to hear all of the information in the formatted warehoused data, but instead can make inquiries to directly navigate to a particular item of interest.
Latest Informatica Corporation Patents:
The present invention relates to database management systems. Specifically, the present invention pertains to a method and system for navigating a large amount of data.
BACKGROUND ARTComputers are used to perform a wide variety of applications in such diverse fields as finance, traditional and electronic commercial transactions, manufacturing, health care, telecommunications, etc. Most of these applications typically involve inputting or electronically receiving data, processing the data according to a computer program, then storing the results in a database, and perhaps transmitting the data to another application, messaging system, or client in a computer network. As computers become more powerful, faster, and more versatile, the amount of data that can be processed also increases.
Unfortunately, the raw data found in operational databases often exist as rows and columns of numbers and codes which, when viewed by individuals, appears bewildering and incomprehensible. Furthermore, the scope and vastness of the raw data stored in modern databases is overwhelming to a casual observer. Hence, applications were developed in an effort to help interpret, analyze, and compile the data so that it may be readily and easily understood by a human. This is accomplished by sifting, sorting, and summarizing the raw data before it is presented for display, storage, or transmission. Thereby, individuals can now interpret the data and make key decisions based thereon.
Extracting raw data from one or more operational databases and transforming it into useful information (e.g., data “warehouses” and data “marts”) is the function of analytic applications. In data warehouses and data marts, the data are structured to satisfy decision support roles rather than operational needs. A data warehouse utilizes a business model to combine and process operational data and make it available in a consistent way. Before the data are loaded into the data warehouse, the corresponding source data from an operational database are filtered to remove extraneous and erroneous records; cryptic and conflicting codes are resolved; raw data are translated into something more meaningful; and summary data that are useful for decision support, trend analysis and modeling or other end-user needs are pre-calculated. A data mart is similar to a data warehouse, except that it contains a subset of corporate data for a single aspect of business, such as finance, sales, inventory, or human resources.
In the end, the data warehouse or data mart is comprised of an “analytical” database containing extremely large amounts of data useful for direct decision support or for use in analytic applications capable of sophisticated statistical and logical analysis of the transformed operational raw data. With data warehouses and data marts, useful information is retained at the disposal of the decision-makers and users of analytic applications and may be distributed to data warehouse servers in a networked system. Additionally, decision-maker clients can retrieve analytical data resident on a remote data warehouse servers over a computer system network.
An example of the type of company that would use data warehousing is an online Internet bookseller having millions of customers located worldwide whose book preferences and purchases are tracked. By processing and warehousing these data, top executives of the bookseller can access the processed data from the data warehouse, which can be used for sophisticated analysis and to make key decisions on how to better serve the preferences of their customers throughout the world.
The rapid increase in the use of networking systems, including Wide Area Networks (WAN), the Worldwide Web and the Internet, provides the capability to transmit operational data into database applications and to share data contained in databases resident in disparate networked servers. For example, vast amounts of current transactional data are continuously generated by business-to-consumer and business-to-business electronic commerce conducted over the Internet. These transactional data are routinely captured and collected in an operational database for storage, processing, and distribution to databases in networked servers.
The expanding use of “messaging systems” and the like enhances the capacity of networks to transmit data and to provide interoperability between disparate database systems. Messaging systems are computer systems that allow logical elements of diverse applications to seamlessly link with one another. Messaging systems also provide for the delivery of data across a broad range of hardware and software platforms, and allow applications to interoperate across network links despite differences in underlying communications protocols, system architectures, operating systems, and database services. Messaging systems and the recent development of Internet access through wireless devices such as enabled cellular phones, two-way pagers, and hand-held personal computers, serve to augment the transmission and storage of data and the interoperability of disparate database systems.
In the current data warehouse/data mart networking environment, one general concern involves the sheer volume of data that must be dealt with. Often massive, multi-terabyte data files are stored in various server sites of data warehouses or in operational databases. Transmitting these massive amounts of data over WANs or the Internet is a troublesome task. The space needed to store the data is significant, and the transmission time is often lengthy.
Furthermore, accessing the resulting data is difficult on a wireless device due to the vast size of the data file. Portable and/or wireless services such as cellular phones, two-way pagers, and hand-held personal computers, have limited computational and display resources.
Accordingly, there is a need for a reliable, convenient and rapid method and/or system for the navigating through the large amounts of data, such as data in a data warehouse/mart. There is a further need to accomplish the navigation through the large amounts of data on a wireless device such as enabled cellular phones, two-way pagers, and hand-held personal computers.
SUMMARY OF INVENTIONThe present invention provides a reliable, convenient and rapid method and/or system for the navigating through the large amounts of data, such as data in a data warehouse/mart. The present invention further provides a method and/or system for navigating through a large amount of data on a wireless device such as enabled cellular phones, two-way pagers, and hand-held personal computers.
Specifically, in one embodiment, the present invention accesses a source of formatted warehoused data. The present invention then displays a grid on a display device. In one embodiment, the grid is an iconic representation of the formatted warehoused data. The grid is comprised of elements, each element corresponding to some portion of the formatted warehoused data. In addition, a portion of the formatted warehoused data is displayed on the display device in response to a selection of a corresponding element of the grid.
In another embodiment, a source of formatted warehoused data is accessed. The formatted warehoused data is then distilled into a plurality of hierarchical overviews. In general, a hierarchical overview comprises a subtotal of selected entries from the formatted warehoused data. Specifically, in response to a first inquiry, a hierarchical overview is received.
The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.
The drawings referred to in this description should be understood as not being drawn to scale except if specifically noted.
DETAILED DESCRIPTIONA method and system for the wireless delivery of data, including business metrics, transformed data, untransformed data, or raw data are described. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be obvious, however, to one skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid obscuring the present invention.
Some portions of the detailed descriptions that follow are presented in terms of procedures, logic blocks, processing, and other symbolic representations of operations on data bits within a computer memory. These descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. In the present application, a procedure, logic block, process, etc., is conceived to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, it is appreciated that throughout the present invention, discussions utilizing terms such as “transmitting”, “receiving”, “determining”, “creating”, “storing”, “delivering”, “accessing”, “generating”, “distilling”, “providing”, “displaying”, “outputting”, “compressing”, “decompressing” or the like, can refer to the actions and processes (e.g., processes 400 and 600 of
These data sources can based on and formatted according to a Relational Database Management System (RDBMS) (such as from Oracle, Informix, Sybase, Microsoft, etc.), an Enterprise Resource Planning (ERP) system, Service Advertising Protocol (SAP), flat files, and other data transmission formats, either planned or envisioned, including XML, WML, HDML, HTML, and compact (lightweight) HTML.
Data storage 102 is for storing operational data and the like from data sources 101, typically using a high capacity mass storage device (such as hard disk drives, optical drives, tape drives, etc.). In one embodiment, data storage 102 is a data warehouse. Data storage 102 is coupled to a database management system (DBMS) 104 by analytic data interface 103. DBMS 104 executes an analytic application such as a data mart application. A repository 105 is coupled to (or integrated with) DBMS 104 for storing information from the database management system.
There are at least three styles of calculating data (e.g., business metrics): periodic, on demand, and continuous (real time). In the periodic style, data are calculated at predetermined intervals (e.g., hourly, daily, weekly, etc.) and stored in repository 105, and the most recent data are provided to the requester. In the on demand style, the data are calculated in response to a user request. These data may be cached or persisted in some manner (e.g., in repository 105), but do not exist or have value until they are initially requested. In the continuous (real time) style, data are updated as underlying data are updated. For example, a business metric describing the moving average for the inventory of a particular item gets updated as the inventory level for that item is updated. In each case, the requester gets the freshest data.
Returning to
Voice server 107 provides voice-to-text and text-to-voice services for converting voice messages received from a user via a conventional telephone 110, and for similarly converting information from application server 106 into an audible message. A user can thereby access application server 106 using a conventional telephone 110 via voice server 107, and receive information from application server 106 via the same path. For security purposes, a firewall 108 encloses voice server 107, application server 106, and the other devices and components coupled with those devices on the internal side of the firewall.
Wireless gateway 111 enables communication between wireless devices and application server 106 within the framework of a wireless service provider (WSP). Wireless devices are exemplified as wireless phone 112 and PDA 113; however, it is appreciated that other types of wireless devices such as a pager or two-way pager, or any other data-capable or data-enabled device operable for wireless communication, may be used. Preferably, the wireless devices have display capability, but other means for conveying information to a user may be utilized. For example, information can be converted into an audible message (e.g., text-to-voice).
Coupled to the Internet 109 may be a computer system 114 that is also capable of communicating with application server 106. For example, information can be exchanged between computer system 114 and application server 106 via electronic mail (e-mail). Computer system 114 may also incorporate a Web browser or other such elements allowing it to access a Web site on application server 106 using the URL for application server 106.
In summary, system 100 supports a number of various different types of end-user devices, as well as different types of service providers (e.g., Internet Service Providers, WSPs, etc.). In accordance with the present invention, a user can register a variety of devices and device types utilizing different service providers, protocols (e.g., wireless application protocol (WAP)), Communication standards, and data formats, and use these devices to receive information (e.g., business metrics, etc.) at remote locations (e.g., at field locations worldwide).
Device 200 of
Optionally, device 200 may include an alphanumeric input device 206 including alphanumeric and function keys coupled to the bus 299 for communicating information and command selections to the central processor(s) 201. In one embodiment, alphanumeric input device 206 is a touch screen device; in this implementation, alphanumeric input device 206 is capable of registering a position where a stylus element (not shown) makes contact. The device 200 can include an optional cursor control or cursor directing device 207 coupled to the bus 299 for communicating user input information and command selections to the central processor (s) 201. The cursor-directing device 207 may be implemented using a number of well known devices such as a mouse, a track-ball, a track-pad, an optical tracking device, among others. In one embodiment, cursor control 207 is a touch screen device incorporated with display device 205. In this implementation, cursor control 207 is capable of registering a position on display device 205 where a stylus element makes contact. Alternatively, it is appreciated that a cursor may be directed and/or activated via input from the alphanumeric input device 206 using special keys and key sequence commands. The present embodiment is also well suited to directing a cursor by other means such as, for example, voice commands.
A display device 205 is coupled to bus 299 of device 200 for displaying video and/or graphics. It should be appreciated that display device 205 may be a cathode ray tube (CRT), flat panel liquid crystal display (LCD), field emission display (FED), plasma display or any other display device suitable for displaying video and/or graphic images and alphanumeric characters recognizable to a user. The device 200 of
In one embodiment, the source of formatted warehoused data (e.g., 500) is stored on a content server (e.g., application server 106). Furthermore, application server 106 may be a web server, WAP gateway, or the like. In addition, the present embodiment prevents a server timeout between application server 106 and device 200. Specifically, the timeout is prevented by utilizing a separate thread for query execution that also allows for query cancellation. In so doing, the “pipeline” between device 200 and application server 106 remains open until the user chooses to close it. Thus, during the accessing of formatted warehoused data 500, device 200 will not be disconnected from application server 106 if an amount of idle time has passed. Therefore, the user of device 200 is does not have to re-access the formatted warehoused data 500 and re-enter a password.
More specifically, the formatted warehoused data 500 may be formatted in a cross-tabular manner (as a “report”). In addition, formatted warehouse data 500 is presented in a scaled iconic representation on display 205. In one embodiment, grid 330 is the scaled iconic representation of the formatted warehoused data 500 shown on a portion of display 205. Specifically, grid 330 is comprised of many elements, such as 340 and 344, which correspond to some portion of formatted warehoused data 500. An element in grid 330 may correspond to an entry in formatted warehoused data 500, or an element may correspond to multiple entries.
In addition, by selecting different elements (e.g., 340, 344, etc.) located within grid 330, a user can easily navigate the entire formatted warehoused data 500. As mentioned, each element 340 represents some portion of the total formatted warehoused data 500. Therefore, if a user desires to view a specific portion of the formatted warehoused data 500, the user need only select an element, such as element 340, from grid 330. In one embodiment, the user selects an element by contacting display device 205 with a stylus element, as described above. Upon selection of an element, such as element 340, a corresponding portion 310 of the formatted warehoused data 500 is downloaded to, and displayed on, display device 205. Hence, a user can easily read portion 310 on display device 205 without being overwhelmed with the entire formatted warehoused data 500 file.
Furthermore, by utilizing the iconic representation (e.g., grid 330), a user can intuitively deduce the size of the formatted warehoused data 500 being navigated. In one embodiment, display device 205 further utilizes analytic data interface 103 in conjunction with repository 105 to download only portion 310 to display device 205. Therefore, device 200 is not overloaded with the entire version of formatted warehoused data 500, but instead receives only the portion 310 selected for viewing.
Furthermore, in one embodiment, the corresponding portion 310 of grid 330 may retain the axis labels of the formatted warehoused data 500 while the user navigates through grid 330. For example, in the initial representation of portion 310 both a row 320 label and a column 325 label are included. The content of row 320 and column 325 will pertain to the content of element 340. If element 344 is then selected as the next portion 310 to be represented, the column 325 and row 320 will remain a visual part of portion 310; however, the content of row 320 and column 325 will now pertain to the content of element 344. Even if the user selects an element (e.g., 344) of grid 330 that does not intrinsically include column 325 and row 320 headings, column 325 and row 320 headings will remain in the displayed portion 310.
In one embodiment, elements of grid 330 can be navigated upon display device 205 with the use of alpha-numeric input 206 (e.g. hot keys, keyboard arrows, etc.) and/or a graphical user interface (GUI) displayed on device 200. Examples of a GUI may include, but not limited to, a cursor 375, or scrolling arrows 350. The actual navigation of grid 330 can therefore be accomplished by scrolling through the elements (e.g., 340, 344) utilizing scrolling arrows 350, cursor 375, stylus element, or any specified keys. In addition, a specific element, such as element 340 or element 344, of grid 330 may be selected by utilizing hot keys, cursor 375, stylus element, etc., to choose the desired element (e.g., 340, 344) for viewing.
With reference still to
In the present embodiment, the dimensions of grid 330, element 340, and displayed portion 310 are all adjusted by analytic data interface 103 according to specific metrics supplied to analytic data interface 103 by device 200. For example, if device 200 has a display 205 of x-by-y dimensions, then analytic data interface 103 formats the warehoused data 500 such that a presentation of size x-by-y dimensions will appear on display device 205. Therefore, the present method for navigating a large amount of data can account for the characteristics of the display 205 utilized by device 200, and thus can be used with a variety of such devices.
With reference now to step 402 of
In step 404 of
At step 406 of
With reference still to
In one embodiment, process 600 is an exemplary process for navigating a large amount of formatted warehoused data 500 utilizing voice commands. In general, device 200 may be any device which can transmit and/or receive voice data, such as, but not limited to, a regular phone 110, wireless phone 112, PDA 113, and/or computer system 114. Further, in one embodiment, the formatted warehoused data 500 of process 600 is the same formatted warehoused data 500 of process 400. However, due to the voice navigation abilities of process 600, the format in which analytic data interface 103 represents the formatted warehoused data 500 to process 600 may be different
For example, in one embodiment, process 600 uses a voice recognition interface, such as voice server 107, to convey easily digestible portions of formatted warehoused data 500. In one embodiment, voice server 107 conveys inquiries and responses to inquiries audibly according to a voice-based communications protocol.
In order to distill the formatted warehoused data 500 into pieces that can be readily conveyed by voice, analytic data interface 103 formats the warehoused data 500 into a plurality of hierarchical overviews (e.g.,
Process 600 may respond with the quantities NA, NB, NC of each product A, B, C. The user can drill down to the next level (e.g., table 510 of
In general, a report exemplified by table 500 of
With reference still to process 600, any hierarchical overview is possible with respect to the present embodiment, the examples with regard to
Another embodiment for navigating a large amount of formatted warehoused data 500 on a display device 200 (of
In addition, the row-by-row method for displaying formatted warehoused data 500, on device 200 may further “freeze” a row for comparison purposes. That is, in the same way as the row 320 and column 325 (of
With reference now to step 602 of
At step 604 of
At step 606 of
Thus, the present invention provides a reliable, convenient and rapid method and/or system for the navigating through the large amounts of data, such as data in a data warehouse/mart. The present invention further provides a method and/or system for navigating through a large amount of data on a wireless device such as enabled cellular phones, two-way pagers, and hand-held personal computers.
The foregoing descriptions of specific embodiments of the present invention have been presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed, and obviously many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the Claims appended hereto and their equivalents.
Claims
1. A method for navigating a large amount of formatted warehouse data, said the method comprising:
- accessing a source of the formatted warehoused data;
- displaying a grid on a display device, said the grid being an iconic representation of said the formatted warehoused data, said the grid comprising elements, each element corresponding to some portion of said the formatted warehoused data; and
- displaying a portion of said the formatted warehoused data on said the display device, the portion concurrently displayed with and visually distinguished from the grid, in response to a selection of a corresponding element of said the grid.
2. The method as recited in claim 1, wherein content server timeouts are prevented while accessing said the source of formatted data.
3. The method as recited in claim 1, wherein said the warehoused data is formatted in a cross-tabular manner.
4. The method as recited in claim 1, wherein said the portion of said the formatted warehoused data is indicated by a distinctive marking of said the corresponding element of said the grid.
5. The method as recited in claim 1, wherein only said the portion of said the formatted warehoused data is downloaded to said the display device in response to said the selection.
6. The method as recited in claim 1, wherein a different portion of said the formatted warehoused data is displayed on said the display device by selecting a different element of said the grid.
7. The method as recited in claim 1, wherein a graphical user interface (GUI) comprising a cursor and scrolling arrows is also displayed on said the display device.
8. The method as recited in claim 7, wherein a different portion of said the formatted warehoused data is displayed by utilizing said the GUI to navigate within said the grid and to select a different element of said the grid.
9. A device comprising:
- a bus;
- a display coupled with said the bus;
- a memory unit coupled with said the bus; and
- a processor coupled with said the bus, said the processor for executing a method for navigating a large amount of data, said the method comprising: accessing a source of formatted warehoused data; displaying a grid on said the display, said the grid being an iconic representation of said the formatted warehoused data, said the grid comprising elements, each element corresponding to some portion of said the formatted warehoused data; and displaying a portion of said the formatted warehoused data on said the display, the portion concurrently displayed with and visually distinguished from the grid, in response to a selection of a corresponding element of said the grid.
10. The device of claim 9, wherein content server timeouts are prevented while accessing said the source of formatted data.
11. The device of claim 9, wherein said the warehoused data is formatted in a cross-tabular manner.
12. The device of claim 9, wherein said the portion of said the formatted warehoused data is indicated by a distinctive marking of said the corresponding element of said the grid.
13. The device of claim 9, wherein only said the portion of said the formatted warehoused data is downloaded in response to said the selection.
14. The device of claim 9, wherein a different portion of said the formatted warehoused data is displayed on said the display by selecting a different element of said the grid.
15. The device of claim 9, wherein a graphical user interface (GUI) comprising a cursor and scrolling arrows is also displayed on said the display.
16. The device of claim 15, wherein a different portion of said the formatted warehoused data is displayed by utilizing said the GUI to navigate within said the grid and to select a different element of said the grid.
17. A The method for navigating a large amount of data, said method as recited in claim 1, further comprising:
- accessing a source of formatted warehoused data;
- distilling said the formatted warehoused data into a plurality of hierarchical overviews, wherein a hierarchical overview comprises a subtotal of selected entries from said the formatted warehoused data; and
- receiving a hierarchical overview in response to a first inquiry, the received hierarchical overview corresponding to the portion.
18. The method as recited in claim 17, wherein content server timeouts are prevented while accessing said the source of formatted data.
19. The method as recited in claim 17, wherein the formatted warehoused data is formatted in a cross-tabular manner.
20. The method as recited in claim 17, wherein said the device is a communications device.
21. The method as recited in claim 17, wherein information about said the selected entries is received in response to a subsequent inquiry.
22. The method as recited in claim 17, wherein inquiries and responses to inquiries are conveyed audibly according to a voice-based communications protocol.
23. The method as recited in claim 21, wherein a response to an inquiry is displayed.
24. A The device of claim 9, the processor for executing the method further comprising:
- a bus;
- a memory unit coupled with said bus; and
- a processor coupled with said bus, said processor for executing a method for navigating a large amount of data, said method comprising: accessing a source of formatted warehoused data; distilling said the formatted warehoused data into a plurality of hierarchical overviews, wherein a hierarchical overview comprises a subtotal of selected entries from said the formatted warehoused data; and receiving a hierarchical overview in response to a first inquiry, the received hierarchical overview corresponding to the portion.
25. The device of claim 24, wherein content server timeouts are prevented while accessing said the source of formatted data.
26. The device of claim 24, wherein the formatted warehoused data is formatted in a cross-tabular manner.
27. The device of claim 24, wherein said the device is a communications device.
28. The device of claim 24, wherein information about said the selected entries is received in response to a subsequent inquiry.
29. The device of claim 24, wherein inquiries and responses to inquiries are conveyed audibly according to a voice-based communications protocol.
30. The device of claim 28, wherein a response to an inquiry is displayed.
5403147 | April 4, 1995 | Tanaka |
5404513 | April 4, 1995 | Powers et al. |
5405531 | April 11, 1995 | Hitzman et al. |
5410688 | April 25, 1995 | Williams et al. |
5420688 | May 30, 1995 | Farah |
5455945 | October 3, 1995 | Vanderdrift |
5511190 | April 23, 1996 | Sharma et al. |
5519859 | May 21, 1996 | Grace |
5537589 | July 16, 1996 | Dalal |
5563999 | October 8, 1996 | Yaksich et al. |
5603024 | February 11, 1997 | Goldring |
5655101 | August 5, 1997 | O'Farrell et al. |
5675785 | October 7, 1997 | Hall et al. |
5692181 | November 25, 1997 | Anand et al. |
5706495 | January 6, 1998 | Chadha et al. |
5708828 | January 13, 1998 | Coleman |
5713020 | January 27, 1998 | Reiter et al. |
5721903 | February 24, 1998 | Anand et al. |
5721911 | February 24, 1998 | Ha et al. |
5778355 | July 7, 1998 | Boyer et al. |
5781911 | July 14, 1998 | Young et al. |
5787415 | July 28, 1998 | Jacobson et al. |
5794030 | August 11, 1998 | Morsi et al. |
5794228 | August 11, 1998 | French et al. |
5794229 | August 11, 1998 | French et al. |
5794246 | August 11, 1998 | Sankaran et al. |
5799310 | August 25, 1998 | Anderson et al. |
5806060 | September 8, 1998 | Borgida et al. |
5822751 | October 13, 1998 | Gray et al. |
5826258 | October 20, 1998 | Gupta |
5832496 | November 3, 1998 | Anand et al. |
5842213 | November 24, 1998 | Odom et al. |
5848415 | December 8, 1998 | Guck |
5854890 | December 29, 1998 | Ramachandran et al. |
5857197 | January 5, 1999 | Mullins |
5870746 | February 9, 1999 | Knutson et al. |
5870747 | February 9, 1999 | Sundaresam |
5873102 | February 16, 1999 | Bridge, Jr. et al. |
5884262 | March 16, 1999 | Wise et al. |
5898431 | April 27, 1999 | Webster et al. |
5915019 | June 22, 1999 | Ginter et al. |
5933796 | August 3, 1999 | Ashida et al. |
5982890 | November 9, 1999 | Akatsu |
5987454 | November 16, 1999 | Hobbs |
5991742 | November 23, 1999 | Tran |
6002402 | December 14, 1999 | Schacher |
6003024 | December 14, 1999 | Bair et al. |
6014670 | January 11, 2000 | Zamanian et al. |
6026388 | February 15, 2000 | Liddy et al. |
6032145 | February 29, 2000 | Beall et al. |
6032158 | February 29, 2000 | Mukhopadhyay et al. |
6044374 | March 28, 2000 | Nesamoney et al. |
6065007 | May 16, 2000 | Muthukrishnan et al. |
6078994 | June 20, 2000 | Carey |
6119167 | September 12, 2000 | Boyle et al. |
6122628 | September 19, 2000 | Castelli et al. |
6128624 | October 3, 2000 | Papierniak et al. |
6141699 | October 31, 2000 | Luzzi et al. |
6151584 | November 21, 2000 | Papierniak et al. |
6151601 | November 21, 2000 | Papierniak et al. |
6173310 | January 9, 2001 | Yost et al. |
6192364 | February 20, 2001 | Baclawski |
6205472 | March 20, 2001 | Gilmour |
6208990 | March 27, 2001 | Suresh et al. |
6216125 | April 10, 2001 | Johnson |
6233575 | May 15, 2001 | Agrawal et al. |
6269336 | July 31, 2001 | Ladd et al. |
6269369 | July 31, 2001 | Robertson |
6272485 | August 7, 2001 | Sragner |
6272598 | August 7, 2001 | Arlitt et al. |
6292657 | September 18, 2001 | Laursen et al. |
6308203 | October 23, 2001 | Itabashi et al. |
6336137 | January 1, 2002 | Lee et al. |
6339775 | January 15, 2002 | Zamanian et al. |
6369840 | April 9, 2002 | Barnett et al. |
6385604 | May 7, 2002 | Bakalash et al. |
6393386 | May 21, 2002 | Zager et al. |
6404884 | June 11, 2002 | Marwell et al. |
6408292 | June 18, 2002 | Bakalash et al. |
6411936 | June 25, 2002 | Sanders |
6418200 | July 9, 2002 | Ciccolella et al. |
6421781 | July 16, 2002 | Fox et al. |
6424426 | July 23, 2002 | Henry |
6430624 | August 6, 2002 | Jamtgaard et al. |
6438552 | August 20, 2002 | Tate |
6446059 | September 3, 2002 | Berger et al. |
6446062 | September 3, 2002 | Levine et al. |
6446096 | September 3, 2002 | Holland et al. |
6449619 | September 10, 2002 | Colliat et al. |
6457030 | September 24, 2002 | Adams et al. |
6466969 | October 15, 2002 | Bunney et al. |
6477525 | November 5, 2002 | Bello et al. |
6480711 | November 12, 2002 | Guedalia |
6487584 | November 26, 2002 | Bunney |
6493800 | December 10, 2002 | Blumrich |
6502101 | December 31, 2002 | Verprauskus et al. |
6526335 | February 25, 2003 | Treyz et al. |
6535872 | March 18, 2003 | Castelli et al. |
6539359 | March 25, 2003 | Ladd et al. |
6549910 | April 15, 2003 | Tate |
6549937 | April 15, 2003 | Auerbach et al. |
6553366 | April 22, 2003 | Miller et al. |
6563912 | May 13, 2003 | Dorfman et al. |
6564264 | May 13, 2003 | Creswell et al. |
6574599 | June 3, 2003 | Lim et al. |
6581062 | June 17, 2003 | Draper et al. |
6591304 | July 8, 2003 | Sitaraman et al. |
6601062 | July 29, 2003 | Deshpande et al. |
6616701 | September 9, 2003 | Doyle |
6629102 | September 30, 2003 | Malloy et al. |
6631497 | October 7, 2003 | Jamshidi et al. |
6636870 | October 21, 2003 | Roccaforte |
6671689 | December 30, 2003 | Papierniak |
6721728 | April 13, 2004 | McGreevy |
20020035565 | March 21, 2002 | Shah et al. |
20020056081 | May 9, 2002 | Morley et al. |
20020059267 | May 16, 2002 | Shah et al. |
20020077787 | June 20, 2002 | Rappaport et al. |
20020099691 | July 25, 2002 | Lore et al. |
20020112237 | August 15, 2002 | Kelts |
20020161770 | October 31, 2002 | Shapiro et al. |
20030172247 | September 11, 2003 | Bayer et al. |
0987868 | March 2000 | EP |
1043671 | October 2000 | EP |
1164511 | December 2001 | EP |
2350758 | December 2000 | GB |
2357596 | June 2001 | GB |
WO 99/24922 | May 1999 | WO |
WO 00/04466 | January 2000 | WO |
WO 00/08581 | February 2000 | WO |
WO 00/77707 | December 2000 | WO |
WO 01/18728 | March 2001 | WO |
WO 01/20438 | March 2001 | WO |
WO 01/24040 | May 2001 | WO |
WO 02/44953 | June 2002 | WO |
- Barclay et al.: “Microsoft TerraServer: A Spatial Data Warehouse”, Technical Report MS-TR-99-29, Jun. 1999, Microsoft Corporation.
- 24X7 The Magazine of Nonstop Computing, “Compaq's Zero Latency Enterprise Initiative,” vol. 1, No. 2, Oct. 2000, pp. 1-25.
- “A Process for Selective Routing of Servlet Transcoding Modules,” IBM Technical Disclosure Bulletin, vol. 42, Issue 422, Jun. 1999 UK.
- Multi-Modal Data Access Research Disclosure, Kenneth Mason Publications, Hampshire, GB, No. 426, Oct. 1999, pp. 133-1386.
- “Parameterized XSL Style Sheets,” Research Disclosure, vol. 42, No. 423, Jul. 1, 1999, Havant, UK, Article No. 423110.
- Anand, V. J. et al. “Data Warehouse Architecture for DDS Applications.” Australian Journal of Information Systems. Sep. 1996, AJIS Publishing, Australia, vol. 4, No. 1, pp. 43-53.
- Ballinger, C. et al., “Born to be Parallel. Why Parallel Origins Give Teradata an Enduring Performance Edge,” Bulletin of the Technical Committee on Data Engineering, vol. 20, No. 2, Jun. 1997, IEEE Comput. Soc., Los Alamitos, CA, US.
- Barrett, R. et al., “Intermediaries: An Approach to Manipulating Information Streams,” IBM Systems Journal, IBM Corp., Armonk, New York, U.S. vol. 38, No. 4, 1999, pp. 629-641.
- Bellatreche, L. et al., “OLAP Query Processing for Partitioned Data Warehouses,” Proceedings 1999 Int'l. Symposium on Database Applications in Non-Traditional Environments (Dante'99) (Cat. No. PR00496), Kyoto, JP, Nov. 28-30, 1999, pp. 35-42, IEEE Comput. Soc., Los Alamitos, CA US ISBN: 0-7695-0496-5.
- Bello, R.G. et al., “Materialized Views in Oracle,” Proceedings of the Int'l. Conf. On Very Large Data Bases, NY, Aug. 24, 1998, pp. 659-664.
- Chamberlin, D. et al., “A Complete Guide to DB2 Universal Database,” 1992, pp. 659-600.
- Chan, R. “12 Steps of Creating a Successful Data Warehouse,” Proceedings of the 8th International Database Workshop (Industrial Volume), Proceedings of the 8th International Hong Kong Computer Society Database Workshop, Data Mining, Data Warehousing and CLI, pp. 227-248, ISBN 981-3083-53-0, 1997, Singapore, Springer-Verlag Singapore, Singapore.
- Chaudhuri, S. et al., “An Overview of Data Warehousing and OLAP Technology,” SIGMOD Record, Sigmod, New York, No. US, vol. 2, No. 1, Mar. 1997, pp. 65-74.
- Curley, K. et al. “The Rationale for Developing a Corporate Data Warehouse and the Development of a Model for Sharing Data in a Data Warehouse Environment.” OOIS '95. 1995 International Conference on Object Oriented Information Systems Proceedings, Proceedings of 1995, International Conference on Object Oriented Information Systems, Dublin, Ireland, Dec. 18-20, 1995, pp. 351-366, Berlin, Germany, Springer-Verlag, Germany.
- Datta, A., et al., “A Case for Parallelism in Data Warehousing and OLAP,” Ninth Int'l. Workshop on Database and Expert Systems Applications, Vienna, AT, IEEE Comput. Soc., Los Alamitos, CA, US, Aug. 26, 1998, pp. 226-231.
- Dawson, F. et al., “RFC 2426 vCard MIME Directory Profile,” Network Working Group, Request for Comments 2426, Sep. 1998.
- Deutsch, A. et al., “Storing Semistructured Data with STORED,” ACM SIGMOD Record, Proceedings of the 1999 ACM SIGMOD International Conference on Management of Data, Jun. 1999, vol., 28, Issue 2.
- Duncan, K., et al., “Optimizing the Data Warehousing Environment for Change: the Persistent Staging Area,” Cutter IT Journal, Jun. 1999, Cutter Inf. Corp. USA, vol. 12, No. 6, pp. 28-35.
- Fernanez, M. et al., “SilkRoute: Trading Between Relations and XML,” WWW9/Computer Networks, 33(1-6), pp. 723-745, 2000.
- Florescu, D. et al., “A Performance Evaluation of Alternative Mapping Schemes for Storing SML in a Relational Database,” Technic Report 3680, INRIA, 1999.
- Freytag, C. et al., “Resource Adaptive WWW access for Mobile Applications,” Computers and Graphics, Pergamon Press Ltd., Oxford, GB, vol. 23, No. 6, Dec. 1999, pp. 841-848.
- Fry, J.P, “Conversion Technology, An Assessment,” ACM SIGMIS Database, vol. 12-13, No. 4-1, Jul. 1981, pp. 39-61.
- Hammer, J. et al., “Extracting Semistructured Information From the Web,” Proceedings of the Workshop on Management of Semi-structured Data, Mar. 16, 1997, pp. 1-25.
- Hori, M. et al., “Annotation-Based Web Content Transcoding,” Computer Networks, Elsevier Science Publishers B.V., Amsterdam NL., vol. 33, No. 106, Jun. 2000, pp. 197-211.
- Housel, B. et al., “A High-Level Data Manipulation Language for Hierarchical Data Structures,” International Conference on Management of Data, 1976, pp. 155-169.
- Informatica Press Releases, “Informatica Delivers Industry's First Synchronized Data Marts With Newest Version of Powermart Suite,” <http://www.informatica.com/syndata—-—052798.html>, pp. 1-4, May 27, 1997.
- Jaczynski, M. et al., “Broadway: A Case-Based System for Cooperative Information Browsing on the World Wide Web,” Collaboration Between Human and Artificial Societies, Online 1999.
- Jones, Katherine, “An Introduction to Data Warehousing: What are the Implications for the Network,” 1998, International Journal of Network Management, vol. 8, pp. 42-56.
- Juhne, J., et al., “Ariadne: a Java-Based Guided Tour System for The World Wide Web,” Computer Networks and ISDN Systems, North Holland Publishing, Amsterdam, NL, vol. 30, No. 107, Apr. 1, 1998, pp. 131-139.
- Kim, W., “On Optimizing an SQL-Like Nested Query,” ACM Transactions on Database Systems, Association for Computing Machinery, New York, US, vol. 7, No. 3, Sep. 1, 1982, pp. 443-469.
- Kitayama, F. et al., “Design of a Framework for Dynamic Content Adaptation to Web-enabled Terminals and Enterprise Applications,” Software Engineering Conference, 1999. Proceedings Sixth Asian Pacific Takamatsu, Japan, Dec. 7-10, 1999, Los Alamitos, CA, US.
- Kovacs, L. et al., “Aqua: An Advanced User Interface for the Dienst Digital Library System,” 8th Delos Workshop: User Interfaces for Digital Libraries, Online, Oct. 21-23, 1998, Sweden, p. 2.
- Lum, V. Y. et al., “A General Methodology for Data Conversion and Restructuring,” IBM Journal of Research and Development, IBM Corporation, Armonk, US, vol. 20, No. 5, Sep. 1, 1976, pp. 483-497.
- Makpangou, M. et al., “Replicated Directory Service for Weakly Consistent Distributed Caches,” INRIA SOR group—78143 Le Chesnay Cedex, France.
- Mohania, M. et al.: “Advances and Research Directions in Data Warehousing Technology,” Ajis. Australian Journal of Information Systems, Wollongong, Au. vol. 7, No. 1, Sep. 1999, pp. 41-59.
- Mumick, I. S. et al. “Maintenance of Data Cubes and Summary Tables in a Warehouse,” SIGMOD 1997. ACM SIGMOD International Conference on Management of Data, Tucson, AZ, USA, May 13-15, 1997, vol. 26, No. 2, pp. 100-111, XP002074807, Jun. 1997, ACM, USA.
- Mumick, I.S., “Magic is Relevant,” Sigmod Record, Sigmod, New York, NY, US, vol. 19, No. 2, Jun. 1, 1990, pp. 247-258.
- Rodriguez, J. et al., “IBM WebSphere Transcoding Publisher V1:1: Extending Web Applications to the Pervasive World,” <http://ibm.com/redbooks>, Jul. 2000, pp. 1039.
- Rousskov, A., “Cache Digests,” Computer Networks and ISDN Systems, 30 (1998) 2144-2168.
- Roy, P. et al., “Don't Trash Your Intermediate Results, Cach'em,” Technical Report, Online, Mar. 2, 2000, pp. 1-22.
- Schneiderman, B. et al., “An Architecture for Automatic Relational Database System Conversion,” ACM Transactions on Database Systems, vol. 7, No. 2, 1982.
- Schneier, B., “Applied Cryptography, Second Edition,” 1996, pp. 189-196, 226-227.
- Shanmugasundaram, J. et al., “Relational Databases for Querying SML Documents Limitations and Opportunities,” Proc. Of VLBD, pp. 302-314, 1999.
- Seshadri, P. et al., “SQLServer for Windows CE-A Database Engine for Mobile and Embedded Platforms,” Data Engineering 2000. Proceedings 16th International Conference in San Diego, CA, US, Feb. 29, 2000, IEE Computer Soc., US, Feb. 29, 2000, pp. 642-644.
- Shimura, T. et al., “Storage and Retrieval of XML Documents Using Object-Relational Databases,” Proc. Of DEXA, pp. 206-217, 1999.
- Shu, N. et al., “Convert: A High Level Translation Definition Language for Data Conversion,” Communications of the ACM, vol. 18, No. 10, Oct. 1975 (Oct. 1975), pp. 557-567.
- Shu N. et al., “Convert: A High Level Translation Definition Language for Data Conversion,” Proceedings of the 1975 ACM SIGMOD International Conference on Management of Data, May 1975 (May 1975), p. 111.
- Shu, N. et al., “Express: A Data Extraction, Processing, and Restructuring System,” ACM Transactions on Database Systems, vol. 2, No. 2, Jun. 1977, pp. 134-174.
- Shu, N., “Automatic Data Transformation and Restructuring,” IEEE, 1987, pp. 173-180.
- Squire, C., “Data Extraction and Transformation for the Data Warehouse,” ACM Proceedings of SIGMOD. International Conf. On Management of Data, vol. 24, No. 1, Mar. 1, 1995, p. 446.
- Weyman, P.J., “The Case for a Process-Driven Approach to Data Warehousing,” Database and Network Journal, A.P. Publications, London, FB, vol. 27, No. 1, Feb. 1, 1997, pp. 3-6.
- White, C., “Data Warehousing: Cleaning and Transforming Data,” Info DB, vol. 10, No. 6, Apr. 1997, pp. 11-12.
- White, C., “Managing Data Transformations,” byte, McGraw-Hill Inc., St. Peterborough US, vol. 22, No. 12, Dec. 1, 1997, pp. 53-54.
- Informatica Corporation, Release Notes, PowerCenter 1.6, PowerMart 4.6, Aug. 1999, pp. 1-30.
- Informatica Corporation, User Guide, PowerCenter 1.6, PowerMart 4.6, Jul. 1999, pp. i-xxvii and 144-186 (Table of Contents, Preface, Chapters 6 & 7).
Type: Grant
Filed: May 3, 2005
Date of Patent: Sep 3, 2013
Assignee: Informatica Corporation (Redwood City, CA)
Inventors: Niels Godfredsen (San Francisco, CA), Spencer Lord (San Francisco, CA), Yusuf Bashir (San Francisco, CA), Eric Ying (Emeryville, CA), Oliver Tse (Sunnyvale, CA)
Primary Examiner: Kuen Lu
Application Number: 11/122,214
International Classification: G06F 17/30 (20060101); G06F 7/00 (20060101); G06F 3/048 (20130101);