Movatterモバイル変換


[0]ホーム

URL:


US7162643B1 - Method and system for providing transfer of analytic application data over a network - Google Patents

Method and system for providing transfer of analytic application data over a network
Download PDF

Info

Publication number
US7162643B1
US7162643B1US09/882,733US88273301AUS7162643B1US 7162643 B1US7162643 B1US 7162643B1US 88273301 AUS88273301 AUS 88273301AUS 7162643 B1US7162643 B1US 7162643B1
Authority
US
United States
Prior art keywords
data
computer system
data block
block buffer
session
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime, expires
Application number
US09/882,733
Inventor
Mohan Sankaran
Volodymyr Butsky
Sridhar C. Koritala
Zhenyu Tang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Informatica LLC
Original Assignee
Informatica LLC
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 Informatica LLCfiledCriticalInformatica LLC
Priority to US09/882,733priorityCriticalpatent/US7162643B1/en
Assigned to INFORMATICA CORPORATIONreassignmentINFORMATICA CORPORATIONASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: SANKARAN, MOHAN, BUTSKY, VOLODYMYR, KORITALA, SRIDHAR C., TANG, ZHENYU
Priority to PCT/US2002/018808prioritypatent/WO2002103984A2/en
Priority to CA2450869Aprioritypatent/CA2450869C/en
Priority to DE60218160Tprioritypatent/DE60218160T2/en
Priority to EP02732069Aprioritypatent/EP1400086B1/en
Priority to AT02732069Tprioritypatent/ATE354242T1/en
Priority to ES02732069Tprioritypatent/ES2281515T3/en
Application grantedgrantedCritical
Publication of US7162643B1publicationCriticalpatent/US7162643B1/en
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENTreassignmentBANK OF AMERICA, N.A., AS COLLATERAL AGENTSECURITY AGREEMENTAssignors: INFORMATICA CORPORATION
Assigned to INFORMATICA LLCreassignmentINFORMATICA LLCCHANGE OF NAME (SEE DOCUMENT FOR DETAILS).Assignors: INFORMATICA CORPORATION
Assigned to NOMURA CORPORATE FUNDING AMERICAS, LLCreassignmentNOMURA CORPORATE FUNDING AMERICAS, LLCNOTICE OF SUCCESSION OF AGENCYAssignors: BANK OF AMERICA, N.A.
Assigned to NOMURA CORPORATE FUNDING AMERICAS, LLCreassignmentNOMURA CORPORATE FUNDING AMERICAS, LLCSECURITY INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: INFORMATICA LLC
Assigned to INFORMATICA LLCreassignmentINFORMATICA LLCRELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS).Assignors: NOMURA CORPORATE FUNDING AMERICAS, LLC
Assigned to INFORMATICA LLCreassignmentINFORMATICA LLCRELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS).Assignors: NOMURA CORPORATE FUNDING AMERICAS, LLC
Assigned to JPMORGAN CHASE BANK, N.A.reassignmentJPMORGAN CHASE BANK, N.A.SECURITY INTEREST (SEE DOCUMENT FOR DETAILS).Assignors: INFORMATICA LLC
Adjusted expirationlegal-statusCritical
Expired - Lifetimelegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

A method and system providing a high speed and secure data link for moving large amounts of data across a network, such as the data used in an analytic application. Featured are simultaneous compression and encryption of the data, as well as means for recovery in the event the network connection is lost.

Description

FIELD OF THE INVENTION
The invention relates generally to computer system networks, and more particularly, to securing rapid, reliable, and private communication between networked computers in a multiple data warehouse/analytic application environment.
BACKGROUND OF THE INVENTION
Computers 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 time needed to move the data is significant, and the probability that the data may contain an error introduced during transmission is increased. Also, the data are also vulnerable to interception by an unauthorized party. Furthermore, when the connection is lost in the process of transmitting the data over a network, there often is a need to retransmit large amounts of data already transmitted prior to the loss of connection, further increasing the time needed to move the data.
Accordingly, there is a need for a reliable, secure, authenticated, verifiable, and rapid system and/or method for the transmission of huge amounts of data, such as data in a data warehouse/mart, over networks such as WANs and the Internet. The present invention provides a novel solution to this need.
SUMMARY OF THE INVENTION
The present invention satisfies a currently unmet need in a networked data warehouse/analytic application environment to provide a method and system that provide reliable, secure, authenticated, verifiable, and rapid system and method for the transmission of huge amounts of data over a network (e.g., operational data, and transformed data in a data warehouse/data mart). The data can be moved from a source to a target (e.g., from a server to a client, or from a client to a server) in the computer system network. The source represents any centralized source on the network, while the target can represent a remotely located device (e.g., at a customer site) or a local device (e.g., a device in communication with the source via a local area network).
In one embodiment, in a source (e.g., server) computer system, an incoming request is received from a target (e.g., client) for a large amount of data (e.g., a data file) resident in a mass storage unit on the server, for example. The incoming request is authenticated and is then used to spawn a session thread between the server and the client. The incoming request includes a command that, in one embodiment, uses Extensible Markup Language (XML). The command is parsed and translated into a set of tasks which can be executed by the server as part of the session thread.
In one embodiment, the data are separated into blocks, and each block is sequentially compressed and encrypted, then sent to the client. In one embodiment, the blocks are processed in parallel, saving time. The transfer of the data to the client is checked to make sure it is complete and accurate.
On the client side, the session thread between the server and client is spawned in response to a message from the server. The compressed and encrypted data blocks are received from the server, then decompressed, decrypted, and assembled into the requested data.
The present invention provides a recovery mechanism for automatically or manually restoring a connection between the server and client when the connection is lost. As part of the recovery mechanism, data transfer is resumed from the point where it was terminated when the connection was lost, so that previously transmitted data do not have to be retransmitted.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
FIG. 1A illustrates a schematic block diagram of an exemplary client/server computer system network upon which embodiments of the present invention may be implemented.
FIG. 1B illustrates an exemplary computer system upon which embodiments of the present invention may be practiced.
FIG. 2A illustrates a general functional block diagram of a computer system network in accordance with one embodiment of the present invention.
FIG. 2B illustrates a more detailed functional block diagram of the computer system network generally illustrated inFIG. 2A.
FIG. 3A illustrates data flow through a first embodiment of an output channel of the present invention.
FIG. 3B illustrates data flow through a first embodiment of an input channel of the present invention.
FIG. 4A illustrates data flow through a second embodiment of an output channel of the present invention.
FIG. 4B illustrates data flow through a second embodiment of an input channel of the present invention.
FIG. 5 illustrates data flow through one embodiment of a session thread in accordance with the present invention.
FIGS. 6A,6B, and6C illustrate data transfer recovery after a failure of a network connection in accordance with one embodiment of the present invention.
FIG. 7A is flowchart of the steps in a server-side process for transferring data over a network in accordance with one embodiment of the present invention.
FIG. 7B is flowchart of the steps in a client-side process for transferring data over a network in accordance with one embodiment of the present invention.
DETAILED DESCRIPTION
Reference will now be made in detail to the preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings. While the invention will be described in conjunction with the preferred embodiments, it will be understood that they are not intended to limit the invention to these embodiments. On the contrary, the invention is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the invention as defined by the appended claims. Furthermore, in the following detailed description of the present invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be obvious to one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail so as not to unnecessarily obscure aspects of 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, or the like, 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, although 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 sessions, objects, blocks, parts, threads, 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 “establishing,” “issuing,” “authenticating,” “spawning,” “transmitting,” “accumulating,” “restoring,” “resuming,” “translating,” “storing,” “executing,” “receiving,” “writing,” “compressing,” “decompressing,” “encrypting,” “decrypting,” “sending,” “verifying,” or the like, refer to actions and processes (e.g., processes700 and750 ofFIGS. 7A and 7B, respectively) of a computer system or similar electronic computing device. The computer system or similar electronic computing device manipulates and transforms data represented as physical (electronic) quantities within the computer system memories, registers or other such information storage, transmission or display devices. The present invention is well suited to the use of other computer systems.
FIG. 1A illustrates a block diagram of client/servercomputer system network100 upon which embodiments of the present invention may be practiced. This server/client system100 is made up of server computer system110 (e.g., Unix or NT server computer),client computer system102, andremote computer systems103105, (e.g., personal computers, laptop computers, workstations, terminals, etc.) which may be used to access the information accessible toserver computer system110.Server110 can represent any centralized source on thenetwork100, whileclient102 andremote computer systems103105 can represent a remotely located device (e.g., at a customer site) or a local device (e.g., a device in communication withserver110 via a local area network).
Eachremote computer system103105 has its own physical memory system (e.g., hard drive, random access memory, read only memory, etc.) for storing and manipulating data.Client computer system102,server computer system110, andremote computer systems103105 are connected for intercommunication and transfer of data bynetwork bus107. However, it is appreciated that these devices may instead by coupled in a wireless network.
Server computer system110 is coupled to servermass storage device112 that is or is not accessible byclient computer system102 andcomputer terminals103105 throughnetwork bus107 directly.Client system102 also has its own clientmass storage device170. The present invention includes threads and objects within the application software that are executed byserver computer system110 and/orclient system102 to transfer data therebetween (refer toFIG. 2B, below).
Located withinmass storage device112 isoperational database116a, which receives and stores the current raw data for a data mart or data warehouse. Raw data received and stored withinoperational database116aare transformed by an analytic application into information that is more meaningful for decision support. Data marts/warehouses113a, located withinmass storage device112, include transformed data processed by the analytic application. It is important to point out that data marts/warehouses113aandoperational database116acould each reside within a separate mass storage devices and each mass storage device could be connected bynetwork bus107 to a separate server.
A data file120 is a file stored within eitheroperational database116a, within the database of data warehouse/data mart113b, or elsewhere in servermass storage device112. In accordance with the present invention, data file120 is securely, quickly and reliably transmitted overnetwork bus107 toclient computer system102 or toremote computer systems103105 for display or storage on these systems or for use in analytic applications resident on these systems. Data file120 is a large file containing, for example, operational data such as customer data or third party data. Data file120 may instead contain data transformed according to an analytic application. It is appreciated that the present invention also can be used to transmit a data stream fromserver computer system110 to a target device (e.g.,client computer system102 or toremote computer systems103105).
Operational database116band data warehouse113bare also shown residing within clientmass storage device170. A data file120 is shown also residing in clientmass storage device170 to represent the transmission and receipt of the data file as mentioned in the preceding paragraph. It is appreciated that the present invention can likewise be used to transmit a data is file (or a data stream) fromclient102 toserver110, or from these devices to any other device onnetwork100. Generally speaking, the present invention can be used to transmit a data file or a data stream from a source device to a target device. For simplicity of discussion, the present invention is described in the context of a transfer of a data file from a server to a client.
Refer now toFIG. 1B, which illustrates anexemplary computer system1090 upon which embodiments of the present invention may be practiced.Computer system1090 exemplifiesserver110,client102, andremote computer systems103105 ofFIG. 1A.
In general,computer system1090 ofFIG. 1B comprisesbus1000 for communicating information, one ormore processors1001 coupled withbus1000 for processing information and instructions, random access (volatile) memory (RAM)1002 coupled withbus1000 for storing information and instructions forprocessor1001, read-only (non-volatile) memory (ROM)1003 coupled withbus1000 for storing static information and instructions forprocessor1001,data storage device1004 such as a magnetic or optical disk and disk drive coupled withbus1000 for storing information and instructions, an optional user output device such asdisplay device1005 coupled tobus1000 for displaying information to the computer user, an optional user input device such asalphanumeric input device1006 including alphanumeric and function keys coupled tobus1000 for communicating information and command selections toprocessor1001, and an optional user input device such ascursor control device1007 coupled tobus1000 for communicating user input information and command selections toprocessor1001. Furthermore, an optional input/output (I/O)device1008 is used to couplecomputer system1090 onto, for example, a network.
Display device1005 utilized withcomputer system1090 may be a liquid crystal device, cathode ray tube, or other display device suitable for creating graphic images and alphanumeric characters recognizable to the user.Cursor control device1007 allows the computer user to dynamically signal the two-dimensional movement of a visible symbol (pointer) on a display screen ofdisplay device1005. Many implementations of the cursor control device are known in the art including a trackball, mouse, joystick or special keys onalphanumeric input device1006 capable of signaling movement of a given direction or manner of displacement. It is to be appreciated that thecursor control1007 also may be directed and/or activated via input from the keyboard using special keys and key sequence commands. Alternatively, the cursor may be directed and/or activated via input from a number of specially adapted cursor directing devices.
FIG. 2A illustrates a functional block diagram of an embodiment of the client/servercomputer system network100 ofFIG. 1A in accordance with one embodiment of the present invention. In this embodiment, with reference also toFIG. 1A, the present invention provides asecure data stream118 that transfers data file120 fromserver computer system110 toclient computer system102. Data file120 is originally resident indata warehouse113aoroperational database116ain servermass storage device112, and is transmitted to clientmass storage device170.
For simplicity of discussion, communication is shown as occurring fromserver110 toclient102; however, it is appreciated that communication can similarly occur fromclient102 toserver110. In this latter case, the arrows indicating the direction of data flow would be in the opposite direction, the “output channel” would refer to the channel onclient102, and the “input channel” would refer to the channel onserver110.
FIG. 2B is a functional block diagram providing additional details of the client/servercomputer system network100 in accordance with one embodiment of the present invention. Listener object130ais designed to receive an incoming connection request and to spawn asession thread140ain response (specifically, listener object130acalls session manager object138ato createsession thread140a). Server listener object130areceives, at a well known port132, anincoming request134 fromclient computer system102. In the present embodiment, therequest134 is generated in the session thread140bexecuting onclient102. Therequest134 is a request to establish aclient socket connection136 and to transmit data from server mass storage device112 (e.g., data file120) toclient computer system102.
Arequest134 may be received from a remote device on thenetwork100, or from a local device. That is, for example, arequest134 may be received over the Internet from a device that is outside of a firewall or a company's intranet (e.g., a local area network), or therequest134 may be from a local device within the company's intranet. However, in the present embodiment, instead of trying to determine the source ofrequest134, all requests are delivered/received in encrypted form.
In the present embodiment, all computers in thenetwork100 are considered as non-secure. All keys are stored in encrypted form, with a password-based encryption algorithm used to encrypt and decrypt keys.
All registered users seeking to implement the data retrieval process of the present invention have their own account. Keys for each account are stored in separate files. Each file has the name of the account and is encrypted using the account password. All registered account keys are stored in a central repository (not shown) and are encrypted using a repository password. In the present embodiment, the repository is initialized with a single password hidden and secured by an administrator password. The repository password is used for all secured (encrypted) objects.
The central repository resides in main memory of the server110 (and likewise, a central repository resides in main memory of client102). The central repository has the capability to encrypt any stored object using pass word-based encryption. In one embodiment, the central repository asks the object if it needs encryption.
In the present embodiment, there are three repository object types: an object to represent an account, an object that represents a repository password for the administrative account, and an object to represent each session instance for recovery purposes. The object representing an account contains a key (or password) that is used to establish a secure connection betweenclient102 andserver110 ofFIGS. 2A and 2B. The object representing the repository password for the administrative account is used to gain access to all repository objects, and is secured with an administrator account password. The object representing each session instance contains all needed information for session recovery (refer toFIGS. 6A,6B and6C, below).
With reference again toFIG. 2B, in the present embodiment, listener object130ais part of a multi-thread software application that is capable of parallel execution in coordination with other threads of the present invention. A “thread” is a part of the application that can execute independently of the other parts that may be executing simultaneously in this parallel mode. Parallel execution of threads in this embodiment of the present invention is accomplished by sharing as much as possible of the application execution between the different threads. Such a multi-threading embodiment increases the speed of the transfer of data in the present invention.
Listener object130aestablishesclient socket connection136 at well known port132 requested byclient computer system102 onserver computer system110. When auser request134 is received, listener thread130acalls the session manager object138ato create a new session thread and to start to handle the user request. After completing these tasks, listener object130areturns to the task of listening for another incoming user request (e.g., another request fromclient computer system102 or from another computer system innetwork100 ofFIG. 1A).
In the present embodiment, session manager object138aofFIG. 2B spawns thesession thread140athat reads a command from the connection that is established by listener object130a, parses the command, and executes it (refer also toFIG. 5, below). Session manager object138aincludes (tracks) information regarding all of the ongoing sessions.
Asession140aincludes a channel object with multiple threads (e.g., channel139a), over which the data are actually transferred.Channel object139ais designed to transfer data in a secure manner. Additional information regardingchannel object139ais provided below in conjunction withFIGS. 3A,3B,4A and4B.
With reference toFIG. 2B, for security purposes, only clients authorized to accessdata warehouse113aandoperational database116aare allowed to receivedata file120. A protocol incorporated within the present invention is designed to authenticate thatincoming request134 originated at aclient computer system102 that is authorized to receivedata file120. Authentication protocols could include passwords, intelligent tokens, or other well-known techniques.
In the present embodiment, session manager object138aprovides the application program interfaces (APIs) for monitoring and managing sessions. An object is an application data item that includes instructions for the operations to be performed on it. After listener object130areceives auser request134, session manager object138areceives a call from listener object130ato create and start asession thread140afor processing user commands. In this embodiment, session manager object138aspawns session thread140a.
Session manager object138aprovides the functionality to generate a unique identifier (ID) for a session, and to maintain logs of sessions for recovery purposes. The APIs provided by session manager object138ainclude an API to create a session, an API to run the session, an API to stop the session by passing the session ID, an API to update the session's status by passing the session ID, an API to query session information, and an API to recover a failed session.
In the present embodiment, after session manager object138acreates a new session, it assigns a unique ID to that session. Session manager object138asaves (e.g., into an internal hash table) a session information object. Session manager object138a, when it creates a new session, passes its own reference as an initialization parameter to the session. The session then uses this reference, in combination with its unique session ID, to invoke a session manager callback function to provide an update of its status information to session manager object138a.
Thus, in the present embodiment of the present invention, listener object130aofserver110 receives anincoming connection request134 fromclient102 and passes the incoming connection request to the session manager object138a. Session manager object138aofserver110 spawnssession thread140athat reads the command from the connection request134 (e.g., a command requesting transfer of data file120 ofFIG. 2A). The command contains all of the information needed to open data file120 and to send data file120 through a connection betweenclient102 andserver110. Thesession thread140aparses the command and creates and initializes achannel object139a(with its threads), and runs the channel.Channel object139awill be initialized with the currently established network connection betweenserver110 andclient102.
Channel object139arepresents the set of objects needed for sending a file (e.g., data file120). In the present embodiment, the set of objects includes the reader, compressor, encryptor, and writer objects described in conjunction withFIGS. 3A and 4A.
On the client side, listener object130breceives the incoming connection fromserver110 and passes this connection to session manager138b. Session manager138bspawns a session thread140b. Session thread140breads the command from the connection. This command contains all of the information needed to connect toserver110, read the data file120, and to have the data file120 sent toclient102. Session thread140bparses the command and executes the following: establishes a connection withserver110, sends the command to start the transfer of data file120, and initializes and runs the channel.
FIG. 3A illustrates data flow through an embodiment of anoutput channel object139ain accordance with the present invention. In this embodiment,output channel139acomprises four data transformation threads or objects:reader channel object142a,compressor channel object146,encryptor channel object156, andwriter channel object152a. The data transformers (reader channel object142a,compressor channel object146,encryptor channel object156, andwriter channel object152a) can work in parallel (e.g., they each can have their own threads).Output channel139aalso comprises block manager object154a.
Block manager object154acontains multiple data blocks (e.g., vectors of data blocks). A data block is designed to store byte arrays between transformations. In the present embodiment, each data block is associated with one data transformation object, and only that object can write to the data block; however, a data transformation object may be associated with multiple data blocks. A size of a data block can vary, so that if a data transformation object finds that it cannot fit output data into the data block buffer, the data transformation object can create a new (larger) buffer that replaces the old (smaller) buffer. Also, for example, a data block containing compressed data can be smaller than one containing uncompressed data.
Block manager object154acontrols the total count of data blocks for each data transformation object; that is, the block manager object154ahas a parameter limiting the number of data blocks per data transformation object. Generally, about four data blocks are specified per data transformation object. If a data transformation object requests a data block, but the amount of available data blocks is equal to the maximum allowed for the transformation object (that is, there are no free data blocks), then block manager object154aand the data transformation object will wait for a data block to be freed.
Referring still toFIG. 3A, in the present embodiment,reader channel object142areads a part of data file120 and writes that part into a first data block buffer in the main memory ofserver computer system110. Data file120 is typically a large file. By reading a only a part of the file, downstream transformations relating to compression and encryption may commence in parallel, while subsequent parts of data file120 are read and written to first data block buffer.
Compressor channel object146 reads the data in the first data block buffer, transforms it (compresses it), and writes the compressed data to a second data block buffer.Compressor channel object146 encodes the data contained in data file120 in a way that makes it more compact.
Encryptor channel object156 reads the compressed data from the second data block buffer, encrypts it, and writes it a third data block buffer.
Writer channel object152areads the encrypted data block and writes it to the network socket stream (to the input channel139b;FIG. 3B).
In the present embodiment,output channel139afunctions as follows.Output channel139areceivesdata file120. Data file120 may be received byoutput channel139ain its entirety and then broken into smaller blocks of data, or data file120 may be read from mass storage device112 (FIG. 1A) a portion at a time.
Reader channel object142arequest a free data block. Block manager object154asearches for the free data block, and if there is no such block, then block manager object154acreates a new block, marks it as free, and assigns it toreader channel object142a.Reader channel object142awrites data from data file120 to the data block and marks the data as ready for compression.Compressor channel object146 receives this data block from block manager object154aand requests a free block (for its output). Block manager object154acreates a new data block, marks it as free, and assigns it tocompressor channel object146.
In parallel,reader channel object142arequests another data block, and as described above, block manager154acreates a new block, marks it as free, and assigns the new data block toreader channel object142a.Reader channel object142acan then write another portion of data file120 to this block and mark it as ready for compression.
In the meantime,compressor channel object146 compresses (encodes) the data contained in its respective data block, marks it as ready for encryption, and frees its respective data block.Encryptor channel object156 receives this (compressed) data block from block manager object154aand requests a free block for its output. Block manager object154acreates a new data block, marks it as free, and assigns it toencryptor channel object156.
Encryptor channel object156 encrypts the data contained in its respective data block, marks it as ready for ready for writing, and frees its respective data block.Writer channel object152areceives the encoded (compressed) and encrypted data block from block manager object154aand writes to the networksocket output stream307.
The process described above is repeated until thereader channel object142areads the last block of data in data file120. Each block of data is stepped throughoutput channel139a, with data blocks being created and freed as needed by the respective transformation objects. In this manner, the number of data blocks can be reduced so that memory resources are not unduly consumed.
In this embodiment of the present invention, means well known to those of ordinary skill in the art are utilized to verify that data file120 was completely and accurately transmitted toclient102.
Thus, the goals of the present invention are achieved. A data file120 is sent on request fromserver computer system110 to at least one computer system remote from server computer system110 (e.g., client102). The data transfer is accomplish securely, rapidly, and reliably.
FIG. 3B illustrates data flow through an embodiment of an input channel139bof the present invention. As shown inFIGS. 2B and 3B, in another aspect of the present invention, the operations ofserver computer system110 may be mirrored on theclient computer system102. A network stream of compressed/encrypted data blocks307 are received fromserver computer system110 byclient computer system102 and are decrypted, decompressed, and ultimately assembled intodata file120. Alternatively, the data blocks may received byclient102 en masse fromserver110.
On the client side, reader channel object142breads formatted (encrypted and compressed) data fromnetwork input stream307. A decryptor channel object164 reads data from a data block inblock manager object154b, decrypts the data, and writes the data to a data block inblock manager object154b.
Adecompressor channel object158 reads data from a data block inblock manager object154b, decompresses (decodes) the data, and writes the data to a data block inblock manager object154b. Writer channel object152 writes the data to the data file120 output stream to mass storage device170 (FIG. 2A), for example.
The data transformers (reader channel object142b, decryptor channel object164, decompressor channel object168, and writer channel object152) function similar to that described above in conjunction withFIG. 3A. Means well known to those skilled in the art can be utilized to verify that data file120 was completely and accurately transmitted.
Thus, the goals of the present invention are again achieved in the client-side embodiment of the present invention. A data file120 is sent on request ofclient computer system102 fromserver computer system110 toclient computer system102. The data transfer is accomplished securely, rapidly and reliably.
The forgoing discussion illustrates a “pull” of data from theserver computer system110 byclient server system102. As can be appreciated, in another aspect of the present invention, data transfer could be accomplished by “push” of data from theserver computer system110 wherein,server computer system110 would command a “listening”client computer system102 to receive data. Appropriate socket connections, threads, and objects would be created in accordance with the present invention, and data would be transfer over the computer network from theserver computer system110 to theclient computer system102.
FIGS. 4A and 4B illustrate alternative embodiments ofoutput channel139aand input channel139bofFIGS. 3A and 3B (the alternative embodiments are designatedoutput channel122 and input channel124). The operation and function of numbered elements inFIGS. 4A and 4B is the same as like numbered element inFIGS. 3A and 3B, respectively.
In the embodiment ofFIG. 4A, a streaming mechanism is used for compressingdata file120, encryptingdata file120, and then sending data file120 over the network to theclient102 or another remote device. Thus, instead of dividing the file into blocks as described above in conjunction withFIG. 3A, and treating each block as a small file, the file can instead be treated as a contiguous file.
The compressor channel object164 and theencryptor channel object156 may produce an output that is different in size from their input. Thestage output streams186 and188 write data to an output data block buffer until that block is full, or until there is no more data to write. If the current output data block is full, then output streams186 and188 indicate that the current block is ready to be read by the next transformation object, and asks block manager object154afor the next available output data block. By accumulating streaming parts of data file120 fromcompressor channel object146 andencryptor channel object156, better management of data block buffers by block manager object154 may be realized.
For example,compressor channel object146 may be capable of a 10:1 compression ratio. Instead of specifying an output data block buffer size equal to one-tenth the size of the input buffer, better use of the data block buffers may be achieved by accumulating ten parts of compressed data blocks in thestage output stream186 before writing to the output data block buffer, so that the output buffer is sized the same as the input buffer size.
InFIG. 4B, similar to the discussion above,stage output stream190 andstage output stream192 accumulate data for decryptor channel object164 anddecompressor channel object158, respectively. Additionally, stage input stream194 is provided ininput channel124 to receive the entire stream of compressed data blocks until the end of data file120 is reached, because decompressor channel object168 may require a complete compressed data file120 in order to operate.
FIG. 5 illustrates data flow through one embodiment of asession thread140ain a server computer system110 (FIG. 2B) in accordance with the present invention. It is appreciated that a similar data flow occurs through a session thread140bin a client computer system102 (FIG. 2B).Session threads140aand140bare executed under direction of the session manager objects138aand138b, respectively (refer toFIG. 2B).
Referring toFIG. 5, asession thread140ais created for eachincoming request134. Requests can include commands such as status commands, commands to send one or more files (e.g., data file120) to one or more remote devices (e.g., client102), and commands to receive one or more files from a remote device. In one embodiment, the commands inrequest134 use the Extensible Markup Language (XML).
In this embodiment,protocol174 validatesincoming request134 and directs it toXML command translator173.Protocol174 is used to send and receive commands in an encrypted format, and is used for authentication.Protocol174 is used bychannel factory182 to open a communication socket for a channel (e.g.,input channels139bor124, oroutput channels139aor122 ofFIGS. 3B,4B,3A and4A, respectively).
Continuing with reference toFIG. 5, XMLcommand translator object173 parses theincoming request134, generates optimized low-level internal tasks, and inserts the tasks with associated parameters into task table176. Each parameter is passed to all of the tasks that require it using the “declare” task (mentioned below), so that when a parameter is declared, it is shared at multiple locations and in multiple tasks where it is needed.
Incoming request134 is translated into low-level incoming tasks because the number of these tasks can be limited, while the number of XML commands inincoming request134 could be large. However, the XML commands can be translated into low-level internal tasks to facilitate implementation and to make the implementation more extensible. Also, use of low-level internal tasks instead of XML commands facilitates parallel processing and avoids the need for redundant processing steps.
The low-level internal tasks include but are not limited to the following:
Connect: to establish a connection between two devices (e.g.,server110 and client102), to create and initializeprotocol174, and to pass an initialization command to session manager object138a;
Create Channel: to create and initialize a channel;
Run Channel: to perform the file transfer;
External Execute: to execute an external command on the local device;
Get Session Status: to get a status report on one or more sessions;
Stop Session: to stop a session;
Declare: to insert a row in a separate variable vector maintained by task executor178 (the variable vector provides a mechanism to share objects across multiple tasks);
Wait: to wait until a channel has finished transferring a file or files;
Terminate: to terminate a session;
Create Account: to create a new account;
Edit Account: to edit an existing account; and
Remove Account: to remove an existing account.
XML command translator173 places these tasks into task table176 for execution bytask executor178. Task table176 is a memory object and comprises a hash table of the tasks.
Task executor178 executes the tasks from task table176 in a given order.Task executor178 uses an API of session manager object138a(Figure2B) to execute the tasks.Task executor178 executes in a loop through task table176 until terminate command is found. OnceXML command translator173 creates a task table176 for a command141,task executor178 takes control of the session thread and starts executing the tasks in the session thread.Task executor178 also updates session statistics for the recovery option described below in conjunction withFIGS. 6A,6B, and6C.
With reference toFIG. 5, a channel object (e.g.,channel object139a, and alsochannel object122 ofFIG. 4A) is generated and initialized by achannel factory182. In the present embodiment,channel factory182 initializeschannel object139awith input and/or output streams.
Continuing with reference toFIG. 5,channel object139arepresents the set of data transformation objects needed for sending and receiving a file (e.g., data file120). In the present embodiment, the set of data transformation objects includes the reader, compressor, encryptor, decompressor, decryptor, and writer objects described in conjunction withFIGS. 3A–3B and4A–4B.Protocol174 direct executed tasks to aremote session184.
FIGS. 6A,6B and6C illustrate another aspect of the present invention relating to data transfer recovery after a temporary loss and/or failure of a network connection. Because large amounts of data are being transferred in accordance with the present invention, recovery is an important consideration. In the present embodiment, two recovery modes are considered: automatic network connection recovery, and manual session recovery.
Automatic network connection recovery means that both the input channel139band theoutput channel139a(FIG. 2B) are running but the network connection is lost or has failed. In this case, the network connection can be recovered automatically.
When a network connection fails, both channels get notification via an “exception.” When a channel receives an exception, it calls the API for its respective session manager (e.g., session manager object138aor138bofFIG. 2B) to restore the connection. The API returns a new session thread for the connection if the connection can be restored, or a NULL if the connection cannot be restored.
Referring toFIGS. 6A,6B and6C, there are two session threads involved with the recovery process. InFIG. 6A, session manager object138a(FIG. 2B) creates session1 (e.g.,session thread140a) onserver computer system110 and initiates the connection withclient computer system102. Session manager object138b(FIG. 2B) receives the request to start a session and creates session1 (e.g., session thread140b) onclient computer system102.
InFIG. 6B, the connection is lost. InFIG. 6C, once the connection is lost and the initiating session manager (session manager object138aon server110) gets called to recover the session, session manager object138asends a request to client102 (session manager object138b) to restore the network connection forsession1. When client102 (specifically, session manager object138b) receives the request fromserver110, it spawns a second session thread (session2, e.g., session thread140c). Session2 passes the connection to thewaiting session1 onclient102. Once the connection is restored, both channels (output channel139aand input channel139b) continue to transfer data from the point at which they stopped.
Information about a session is stored in session manager objects138aonserver110. Session manager138astores all session parameters and the count of bytes of data written insession1 before the failure. Accordingly, reading can start reading from the correct byte offset, and writing can proceed by appending those data blocks created but not yet sent.
In the recovery mode, task table176 (FIG. 5) contains the same tasks but, when executed, some of the tasks may be skipped depending on the results of previous task execution and settings.
Manual session recovery is used when either of the channels fails. Recovery typically does not occur automatically because it is desirable to first determine and resolve the cause of the failure.
FIG. 7A is a flowchart of the server side steps in aprocess700 for transferring data over a network100 (FIG. 1A) in accordance with one embodiment of the present invention. In this embodiment,process700 is implemented by a server computer system110 (FIG. 1A), exemplified by computer system1090 (FIG. 1B), as computer-readable instructions stored in a memory unit (e.g.,ROM1003,RAM1002 ordata storage device1004 ofFIG. 1B) and executed by a processor (e.g.,processor1001 ofFIG. 1B). However, it is appreciated that some aspects ofprocess700 may be implemented onserver computer system110 with other aspects of theprocess700 performed on client computer system102 (FIG. 1A).
Instep702 ofFIG. 7A,server110 receives a request134 (FIG. 2B) for a data file residing in a mass storage unit on the server (e.g., data file120 residing inmass storage device112 ofFIG. 1A). In one embodiment, a listener object130a(FIG. 2B) is listening for such a request. In the present embodiment, therequest134 includes commands; refer toFIG. 5. In one embodiment, request134 uses XML.
Instep704 ofFIG. 7A, therequest134 is authenticated to make sure that the request is from an authorized user. In one embodiment, protocol174 (FIG. 5) validatesincoming request134.
Instep706 ofFIG. 7A, a session thread (e.g.,session thread140a) is spawned in response to the user request134 (FIG. 2B). In one embodiment, listener object130a(FIG. 2B) calls session manager object138a(FIG. 2B), and session manager object138acreatessession thread140aand assigns a unique ID to it.Session thread140areads the command(s) contained in theuser request134, and translates therequest134 into a set of low-level incoming tasks that are to be executed forsession thread140a(refer toFIG. 5). Session manager138aalso sends a message toclient102 directing it to spawn a session thread (e.g., session thread140b). Achannel object139ais also generated, providing the set of data transformation objects needed for sending and receivingdata file120; refer toFIGS. 3A and 4A.
Instep708 ofFIG. 7A, the data in data file120 are read from server mass storage device112 (FIG. 1A) and compressed as described in conjunction with eitherFIG. 3A orFIG. 4A.
Instep710 ofFIG. 7A, the compressed data are encrypted as described in conjunction withFIG. 3A orFIG. 4A.
Instep712 ofFIG. 7A, the data are sent to the requesting device (e.g., toclient102 over network bus101 innetwork100 ofFIG. 1B), and complete and accurate data transfer are verified.
Steps708,710 and712 are performed in parallel for different parts of the data file120.
FIG. 7B is a flowchart of the client side steps in aprocess750 for transferring analytical data over a network in accordance with one embodiment of the present invention. In this embodiment,process750 is implemented by client computer system102 (FIG. 1A), exemplified by computer system1090 (FIG. 1B), as computer-readable instructions stored in a memory unit (e.g.,ROM1003,RAM1002 ordata storage device1004 ofFIG. 1B) and executed by a processor (e.g.,processor1001 ofFIG. 1B). However, it is appreciated that some aspects ofprocess750 may be implemented onclient computer system102 with other aspects of theprocess750 performed onserver computer system110.
Instep752 ofFIG. 7B, a requesting device (e.g.,client102 ofFIG. 1A) issues a request134 (FIG. 2B) to a server (e.g.,server110 ofFIG. 1A) for a data file120 (FIG. 1A).
Instep754 ofFIG. 7B,client102 receives from server110 (specifically, from session manager object138aofFIG. 2B) amessage directing client102 to spawn a session thread (e.g., session thread140bofFIG. 2B).
Instep756 ofFIG. 7B,client102 receives fromserver110 encrypted and compressed data blocks that represent data file120; refer toFIG. 3B orFIG. 4B.
Instep758 ofFIG. 7B, the data are decrypted as described byFIG. 3B orFIG. 4B.
Instep760 ofFIG. 7B, the data are decompressed as described byFIG. 3B orFIG. 4B.
Steps756,758 and760 are performed in parallel for different parts of the data file120.
In summary, the present invention provides a reliable, secure, authenticated, verifiable, and rapid system and method for the transmission of huge amounts of data over a network, such as the data used in an analytic application (e.g., operational data, and transformed data in a data warehouse/data mart).
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 as 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 (32)

What is claimed is:
1. In a multithreaded analytic application executed by a source computer system and capable of concurrent execution of multiple session threads, a method for transferring data, the method comprising:
receiving an incoming request for analytic data resident in a mass storage unit on the source computer system;
authenticating the incoming request;
spawning a session thread that reads and parses a command received via the incoming request, the command for sending the data to a second computer system; and
concurrently executing a plurality of data transformation threads within the session thread, comprising
a reader thread that reads data and writes at least a part of the data to a first data block buffer;
a compressor thread that compresses the part of the data in the first data block buffer into a compressed data block and writes the compressed data block to a second data block buffer;
an encryptor thread that encrypts the compressed data block in the second data block buffer into an encrypted and compressed data block and writes the encrypted and compressed data block to a third data block buffer; and
a writer thread that reads the encrypted and compressed data block in the third data block buffer and sends the encrypted and compressed data block to the second computer;
restoring a connection with the second computer system when an ongoing connection is lost; and
resuming transfer of data to the second computer system at the point in the data where the ongoing connection was lost.
2. The method ofclaim 1 further comprising:
verifying that data transfer to the second computer system is complete.
3. The method ofclaim 1 further comprising:
verifying that data transfer to the second computer system is without error.
4. The method ofclaim 1 wherein the source computer system and the second computer system are networked via the Internet.
5. The method ofclaim 1 wherein the data comprises data processed by an analytic application.
6. The method ofclaim 1 wherein the incoming request uses Extensible Markup Language (XML).
7. The method ofclaim 1 wherein spawning a session thread further comprises:
translating the command into a plurality of tasks;
storing the tasks in a task table in a given order; and
executing the tasks in order until a task ending the session thread is found.
8. The method ofclaim 1 wherein the first data block buffer and the second data block buffer are substantially equal in size and wherein enough compressed data blocks are accumulated to fill the second data block buffer before the compressor thread writes to a second data block buffer.
9. The method ofclaim 1 wherein the second data block buffer and the third data block buffer are substantially equal in size and wherein enough encrypted and compressed data blocks are accumulated to fill the third data block buffer before the encryptor thread writes to the third data block buffer.
10. In a first multithreaded analytic application executed by a target computer system and capable of concurrent execution of multiple session threads, a method for receiving data transferred from a source computer, the method comprising:
issuing a request for data to the source computer system on which the data resides, the source computer system executing a second multithreaded analytic application;
spawning a session thread in response to a message from the source computer system;
receiving from the source computer system at least one encrypted and compressed data block of the data; and
concurrently executing a plurality of data transformation threads within the session thread, comprising
a reader thread for writing the encrypted and compressed data block to a first data block buffer;
a decryptor thread for decrypting the encrypted and compressed data block into a compressed data block and writing the compressed data block to a second data block buffer; and
a decompressor thread for decompressing the compressed data block in the second data block buffer and writing a resultant data block to a third data block buffer;
restoring a connection with the source computer system when an ongoing connection is lost; and
resuming transfer of data from the source computer system at the point in the data where the ongoing connection was lost.
11. The method ofclaim 10 further comprising:
verifying that data transfer from the source computer system was complete.
12. The method ofclaim 10 further comprising:
verifying that data transfer from the source computer system was without error.
13. The method ofclaim 10 wherein the target computer system and the source computer system are networked via the Internet.
14. The method ofclaim 10 wherein the data comprises data processed by an analytic application.
15. The method ofclaim 10 wherein a plurality of encrypted and compressed data blocks accumulate before the decryptor thread executes.
16. The method ofclaim 10 wherein a plurality of compressed data blocks accumulate before the decompressor thread executes.
17. A source computer system comprising:
a bus;
a memory unit coupled to the bus; a multithreaded analytic application stored in the memory unit, and comprising:
a listener object for receiving an incoming request for data resident in a mass storage unit on the source computer system;
protocol for authenticating the incoming request;
a session manager object for spawning a session thread that reads and parses a command received via the incoming request, the command for sending the data to a second computer system;
a reader channel object for reading data and writing at least a part of the data to a first data block buffer;
a compressor channel object for compressing the part of the data in the first data block buffer into a compressed data block and writing the compressed data block to a second data block buffer;
an encryptor channel object for encrypting the compressed data block in the second data block buffer into an encrypted and compressed data block and writing the encrypted and compressed data block to a third data block buffer; and
a writer channel object for reading the encrypted and compressed data block in the third data block buffer and sending the encrypted and compressed data block to the second computer, wherein the application executes the reader channel object, the compressor channel object, the encryptor channel object, and the writer channel object concurrently; and
a processor coupled to the bus, the processor configured for executing the multithreaded analytic application, wherein the processor is further configured for:
restoring a connection with the second computer system when an ongoing connection is lost; and
resuming transfer of data to the second computer system at the point in the data where the ongoing connection was lost.
18. The source computer system ofclaim 17 wherein the processor is further configured for verifying that data transfer to the second computer system is complete.
19. The source computer system ofclaim 17 wherein the processor is further configured for verifying that data transfer to the second computer system is without error.
20. The source computer system ofclaim 17 wherein the source computer system and the second computer system are networked via the Internet.
21. The source computer system ofclaim 17 wherein the data comprises data processed by an analytic application.
22. The source computer system ofclaim 17 wherein the incoming request uses Extensible Markup Language (XML).
23. The source computer system ofclaim 17 wherein the session manager object is further configured for:
translating the command into a plurality of tasks;
storing the tasks in a task table in a given order; and
executing the tasks in order until a task ending the session thread is found.
24. The source computer system ofclaim 17 wherein the first data block buffer and the second data block buffer are substantially equal in size and wherein the compressor channel object is further configured for:
accumulating compressed data blocks before data are written to the second data block buffer, wherein enough compressed data blocks are accumulated to fill the second data block buffer.
25. The source computer system ofclaim 17 wherein the second data block buffer and the third data block buffer are substantially equal in size and wherein the encryptor channel object is further configured for:
accumulating encrypted and compressed data blocks before data are written to the third data block buffer, wherein enough encrypted and compressed data blocks are accumulated to fill the third data block buffer.
26. A target computer system comprising:
a bus;
a memory unit coupled to the bus;
a multithreaded analytic application stored in the memory unit, and comprising:
a first session thread for issuing a request for data to a source computer system on which the data resides;
a session manager object for spawning a session thread in response to a message from the source computer system;
a listener object for receiving from the source computer system at least one encrypted and compressed data;
a reader channel object for reading data and writing at least part of the encrypted and compressed data to a first data block buffer;
a decryptor channel object for decrypting the encrypted and compressed data block into a compressed data block and writing the compressed data block to a second data block buffer; and
a decompressor channel object for decompressing the compressed data block in said the second data block buffer and writing a resultant data block to a third data block buffer, wherein the application executes the reader channel object, the decryptor channel object, and the decompressor channel object concurrently; and
a processor coupled to the bus, the processor configured for executing the multithreaded analytic application, wherein the processor is further configured for:
restoring a connection with the source computer system when an ongoing connection is lost; and
resuming transfer of data from the source computer system at the point in the data where the ongoing connection was lost.
27. The target computer system ofclaim 26 wherein the processor is further configured for verifying that data transfer from the source computer system was complete.
28. The target computer system ofclaim 26 wherein the processor is further configured for verifying that data transfer from the source computer system was without error.
29. The target computer system ofclaim 26 wherein the target computer system and the source computer system are networked via the Internet.
30. The target computer system ofclaim 26 wherein the data comprises data processed by an analytic application.
31. The target computer system ofclaim 26 wherein the decryptor channel object is further configured for accumulating encrypted and compressed data blocks before decrypting the encrypted and compressed data blocks.
32. The target computer system ofclaim 26 wherein the decompressor channel object is further configured for accumulating compressed data blocks before decompressing the compressed data blocks.
US09/882,7332001-06-152001-06-15Method and system for providing transfer of analytic application data over a networkExpired - LifetimeUS7162643B1 (en)

Priority Applications (7)

Application NumberPriority DateFiling DateTitle
US09/882,733US7162643B1 (en)2001-06-152001-06-15Method and system for providing transfer of analytic application data over a network
PCT/US2002/018808WO2002103984A2 (en)2001-06-152002-06-14Methods and systems for transferring data over a network
CA2450869ACA2450869C (en)2001-06-152002-06-14Methods and systems for transferring data over a network
DE60218160TDE60218160T2 (en)2001-06-152002-06-14 METHOD AND SYSTEM FOR DATA TRANSMISSION VIA A NETWORK
EP02732069AEP1400086B1 (en)2001-06-152002-06-14Methods and systems for transferring data over a network
AT02732069TATE354242T1 (en)2001-06-152002-06-14 METHOD AND SYSTEMS FOR DATA TRANSMISSION OVER A NETWORK
ES02732069TES2281515T3 (en)2001-06-152002-06-14 SYSTEMS AND METHODS FOR DATA TRANSFER THROUGH A NETWORK.

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
US09/882,733US7162643B1 (en)2001-06-152001-06-15Method and system for providing transfer of analytic application data over a network

Publications (1)

Publication NumberPublication Date
US7162643B1true US7162643B1 (en)2007-01-09

Family

ID=25381232

Family Applications (1)

Application NumberTitlePriority DateFiling Date
US09/882,733Expired - LifetimeUS7162643B1 (en)2001-06-152001-06-15Method and system for providing transfer of analytic application data over a network

Country Status (7)

CountryLink
US (1)US7162643B1 (en)
EP (1)EP1400086B1 (en)
AT (1)ATE354242T1 (en)
CA (1)CA2450869C (en)
DE (1)DE60218160T2 (en)
ES (1)ES2281515T3 (en)
WO (1)WO2002103984A2 (en)

Cited By (56)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20040107263A1 (en)*2002-11-292004-06-03Nec Infrontia CorporationCommunication system with function of encryption/decryption by agency
US20050086328A1 (en)*2003-10-172005-04-21Landram Fredrick J.Self configuring mobile device and system
US20050138195A1 (en)*2003-12-222005-06-23Jean-Pierre BonoData streaming and backup systems having multiple concurrent read threads for improved small file performance
US20060074880A1 (en)*2004-09-302006-04-06Roman BukaryAnalytic application model and marketplace
US20080209203A1 (en)*2007-02-152008-08-28Fujitsu LimitedData encryption apparatus, data decryption apparatus, data encryption method, data decryption method, and data transfer controlling apparatus
US8533661B2 (en)2007-04-272013-09-10Dell Products, LpSystem and method for automated on-demand creation of a customized software application
US8589207B1 (en)2012-05-152013-11-19Dell Products, LpSystem and method for determining and visually predicting at-risk integrated processes based on age and activity
US8615500B1 (en)*2012-03-292013-12-24Emc CorporationPartial block allocation for file system block compression using virtual block metadata
US8782103B2 (en)2012-04-132014-07-15Dell Products, LpMonitoring system for optimizing integrated business processes to work flow
US8805716B2 (en)2012-03-192014-08-12Dell Products, LpDashboard system and method for identifying and monitoring process errors and throughput of integration software
US8943076B2 (en)2012-02-062015-01-27Dell Products, LpSystem to automate mapping of variables between business process applications and method therefor
US9015106B2 (en)2012-04-302015-04-21Dell Products, LpCloud based master data management system and method therefor
US9069898B2 (en)2012-05-312015-06-30Dell Products, LpSystem for providing regression testing of an integrated process development system and method therefor
US9092244B2 (en)2012-06-072015-07-28Dell Products, LpSystem for developing custom data transformations for system integration application programs
US20150281225A1 (en)*2014-03-272015-10-01Microsoft CorporationTechniques to operate a service with machine generated authentication tokens
US9158782B2 (en)2012-04-302015-10-13Dell Products, LpCloud based master data management system with configuration advisor and method therefore
US9183074B2 (en)2013-06-212015-11-10Dell Products, LpIntegration process management console with error resolution interface
US9606995B2 (en)2012-04-302017-03-28Dell Products, LpCloud based master data management system with remote data store and method therefor
US9710282B2 (en)2011-12-212017-07-18Dell Products, LpSystem to automate development of system integration application programs and method therefor
US10009240B2 (en)2015-06-052018-06-26Cisco Technology, Inc.System and method of recommending policies that result in particular reputation scores for hosts
US10116559B2 (en)2015-05-272018-10-30Cisco Technology, Inc.Operations, administration and management (OAM) in overlay data center environments
US10133883B2 (en)2009-02-092018-11-20International Business Machines CorporationRapid safeguarding of NVS data during power loss event
US10171357B2 (en)2016-05-272019-01-01Cisco Technology, Inc.Techniques for managing software defined networking controller in-band communications in a data center network
US10177977B1 (en)2013-02-132019-01-08Cisco Technology, Inc.Deployment and upgrade of network devices in a network environment
US10250446B2 (en)2017-03-272019-04-02Cisco Technology, Inc.Distributed policy store
US10289438B2 (en)2016-06-162019-05-14Cisco Technology, Inc.Techniques for coordination of application components deployed on distributed virtual machines
US10326795B2 (en)2014-03-202019-06-18Microsoft Technology Licensing, LlcTechniques to provide network security through just-in-time provisioned accounts
US10374904B2 (en)2015-05-152019-08-06Cisco Technology, Inc.Diagnostic network visualization
US10498858B2 (en)2016-12-142019-12-03Dell Products, LpSystem and method for automated on-demand creation of and execution of a customized data integration software application
US10523541B2 (en)2017-10-252019-12-31Cisco Technology, Inc.Federated network and application data analytics platform
US10523512B2 (en)2017-03-242019-12-31Cisco Technology, Inc.Network agent for generating platform specific network policies
US10528624B2 (en)*2015-12-072020-01-07Sap SeOptimal hash calculation of archive files and their file entries
US10554501B2 (en)2017-10-232020-02-04Cisco Technology, Inc.Network migration assistant
US10574575B2 (en)2018-01-252020-02-25Cisco Technology, Inc.Network flow stitching using middle box flow stitching
US10594542B2 (en)2017-10-272020-03-17Cisco Technology, Inc.System and method for network root cause analysis
US10594560B2 (en)2017-03-272020-03-17Cisco Technology, Inc.Intent driven network policy platform
US10680887B2 (en)2017-07-212020-06-09Cisco Technology, Inc.Remote device status audit and recovery
US10708152B2 (en)2017-03-232020-07-07Cisco Technology, Inc.Predicting application and network performance
US10708183B2 (en)2016-07-212020-07-07Cisco Technology, Inc.System and method of providing segment routing as a service
US10764141B2 (en)2017-03-272020-09-01Cisco Technology, Inc.Network agent for reporting to a network policy system
US10797970B2 (en)2015-06-052020-10-06Cisco Technology, Inc.Interactive hierarchical network chord diagram for application dependency mapping
US10798015B2 (en)2018-01-252020-10-06Cisco Technology, Inc.Discovery of middleboxes using traffic flow stitching
CN111835700A (en)*2019-12-042020-10-27北京嘀嘀无限科技发展有限公司Data processing method and device, electronic equipment and storage medium
US10826803B2 (en)2018-01-252020-11-03Cisco Technology, Inc.Mechanism for facilitating efficient policy updates
US10873593B2 (en)2018-01-252020-12-22Cisco Technology, Inc.Mechanism for identifying differences between network snapshots
US10873794B2 (en)2017-03-282020-12-22Cisco Technology, Inc.Flowlet resolution for application performance monitoring and management
US10917438B2 (en)2018-01-252021-02-09Cisco Technology, Inc.Secure publishing for policy updates
US10931629B2 (en)2016-05-272021-02-23Cisco Technology, Inc.Techniques for managing software defined networking controller in-band communications in a data center network
US10972388B2 (en)2016-11-222021-04-06Cisco Technology, Inc.Federated microburst detection
US10999149B2 (en)2018-01-252021-05-04Cisco Technology, Inc.Automatic configuration discovery based on traffic flow data
US11128700B2 (en)2018-01-262021-09-21Cisco Technology, Inc.Load balancing configuration based on traffic flow telemetry
US11221778B1 (en)*2019-04-022022-01-11Pure Storage, Inc.Preparing data for deduplication
US11233821B2 (en)2018-01-042022-01-25Cisco Technology, Inc.Network intrusion counter-intelligence
US11528283B2 (en)2015-06-052022-12-13Cisco Technology, Inc.System for monitoring and managing datacenters
US11765046B1 (en)2018-01-112023-09-19Cisco Technology, Inc.Endpoint cluster assignment and query generation
US20240184641A1 (en)*2022-12-032024-06-06Samsung Electronics Co., Ltd.Near-storage format transformation

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6965886B2 (en)2001-11-012005-11-15Actimize Ltd.System and method for analyzing and utilizing data, by executing complex analytical models in real time

Citations (133)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5403147A (en)1991-06-281995-04-04Kao CorporationMethod for warehousing and delivery of articles
US5404513A (en)1990-03-161995-04-04Dimensional Insight, Inc.Method for building a database with multi-dimensional search tree nodes
US5405531A (en)1993-02-161995-04-11Geo-Microbial Technologies, Inc.Method for reducing the amount of and preventing the formation of hydrogen sulfide in an aqueous system
US5410688A (en)1989-07-211995-04-25Hewlett-Packard CompanyDistributed object based systems for communicating object data among different storage domains
US5420688A (en)1992-12-141995-05-30Farah; JohnInterferometric fiber optic displacement sensor
US5455945A (en)1993-05-191995-10-03Vanderdrift; RichardSystem and method for dynamically displaying entering, and updating data from a database
US5511190A (en)1995-01-201996-04-23Tandem Computers, Inc.Hash-based database grouping system and method
US5519859A (en)1993-11-151996-05-21Grace; John A.Method and apparatus for automatic table selection and generation of structured query language instructions
US5537589A (en)1994-06-301996-07-16Microsoft CorporationMethod and system for efficiently performing database table aggregation using an aggregation index
US5563999A (en)1990-10-191996-10-08Moore Business Forms, Inc.Forms automation system
US5603024A (en)1993-10-081997-02-11International Business Machines CorporationLossless distribution of time series data in a relational data base network
US5655101A (en)1993-06-011997-08-05International Business Machines CorporationAccessing remote data objects in a distributed memory environment using parallel address locations at each local memory to reference a same data object
US5675785A (en)1994-10-041997-10-07Hewlett-Packard CompanyData warehouse which is accessed by a user using a schema of virtual tables
US5689566A (en)1995-10-241997-11-18Nguyen; Minhtam C.Network with secure communications sessions
US5692181A (en)1995-10-121997-11-25Ncr CorporationSystem and method for generating reports from a computer database
US5706495A (en)1996-05-071998-01-06International Business Machines CorporationEncoded-vector indices for decision support and warehousing
US5708828A (en)1995-05-251998-01-13Reliant Data SystemsSystem for converting data from input data environment using first format to output data environment using second format by executing the associations between their fields
US5713020A (en)1993-09-021998-01-27Microsoft CorporationMethod and system for generating database queries containing multiple levels of aggregation
US5721903A (en)1995-10-121998-02-24Ncr CorporationSystem and method for generating reports from a computer database
US5721911A (en)1996-06-251998-02-24International Business Machines CorporationMechanism for metadata for an information catalog system
US5778355A (en)1996-06-111998-07-07International Business Machines Corp.Database method and apparatus for interactively retrieving data members and related members from a collection of data
US5781911A (en)1996-09-101998-07-14D2K, IncorporatedIntegrated system and method of data warehousing and delivery
US5787415A (en)1996-10-301998-07-28International Business Machines CorporationLow maintenance data delivery and refresh system for decision support system database
US5794229A (en)1993-04-161998-08-11Sybase, Inc.Database system with methodology for storing a database table by vertically partitioning all columns of the table
US5794246A (en)1997-04-301998-08-11Informatica CorporationMethod for incremental aggregation of dynamically increasing database data sets
US5794030A (en)1995-12-041998-08-11Objectivity, Inc.System and method for maintenance and deferred propagation of schema changes to the affected objects in an object oriented database
US5794228A (en)1993-04-161998-08-11Sybase, Inc.Database system with buffer manager providing per page native data compression and decompression
US5799310A (en)1995-05-011998-08-25International Business Machines CorporationRelational database extenders for handling complex data types
US5806060A (en)1992-11-061998-09-08Ncr CorporationInteractive data analysis employing a knowledge base
US5822751A (en)1996-12-161998-10-13Microsoft CorporationEfficient multidimensional data aggregation operator implementation
US5826258A (en)1996-10-021998-10-20Junglee CorporationMethod and apparatus for structuring the querying and interpretation of semistructured information
US5832496A (en)1995-10-121998-11-03Ncr CorporationSystem and method for performing intelligent analysis of a computer database
US5842213A (en)1997-01-281998-11-24Odom; Paul S.Method for modeling, storing, and transferring data in neutral form
US5848415A (en)1996-12-181998-12-08Unisys CorporationSelective multiple protocol transport and dynamic format conversion in a multi-user network
US5854890A (en)1996-10-151998-12-29National Instruments CorporationFieldbus function block shell with user selectable data ownership
US5857197A (en)1997-03-201999-01-05Thought Inc.System and method for accessing data stores as objects
US5870747A (en)1996-07-091999-02-09Informix Software, Inc.Generalized key indexes
US5870746A (en)1995-10-121999-02-09Ncr CorporationSystem and method for segmenting a database based upon data attributes
US5873102A (en)1997-04-291999-02-16Oracle CorporationPluggable tablespaces on a transportable medium
US5884262A (en)1996-03-281999-03-16Bell Atlantic Network Services, Inc.Computer network audio access and conversion system
US5898431A (en)1996-12-311999-04-27International Business Machines CorporationDatabase graphical user interface with calendar view
WO1999024922A1 (en)1997-11-071999-05-20Informatica CorporationApparatus and method
US5915019A (en)1995-02-131999-06-22Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US5933796A (en)1996-08-091999-08-03Hitachi, Ltd.Data extracting system based on characteristic quantities of data distribution
US5982890A (en)1996-05-241999-11-09Hitachi, Ltd.Method and system for detecting fraudulent data update
US5987454A (en)1997-06-091999-11-16Hobbs; AllenMethod and apparatus for selectively augmenting retrieved text, numbers, maps, charts, still pictures and/or graphics, moving pictures and/or graphics and audio information from a network resource
US5991742A (en)1996-05-201999-11-23Tran; Bao Q.Time and expense logging system
US6003024A (en)1997-07-251999-12-14Amazon. ComSystem and method for selecting rows from dimensional databases
US6002402A (en)1997-04-091999-12-14Symantec CorporationSystem and method for producing a drag-and-drop object from a popup menu item
WO2000004466A1 (en)1998-07-152000-01-27Informatica CorporationMethod and architecture for automated optimization of etl throughput in data warehousing applications
US6026388A (en)1995-08-162000-02-15Textwise, LlcUser interface and other enhancements for natural language information retrieval system and method
WO2000008581A1 (en)1998-08-032000-02-17Harvest Technology, Inc.Dynamic flow-through context switching of investment data into multiple investment tools
US6032158A (en)1997-05-022000-02-29Informatica CorporationApparatus and method for capturing and propagating changes from an operational database to data marts
US6032145A (en)1998-04-102000-02-29Requisite Technology, Inc.Method and system for database manipulation
US6044374A (en)1997-11-142000-03-28Informatica CorporationMethod and apparatus for sharing metadata between multiple data marts through object references
US6065007A (en)1998-04-282000-05-16Lucent Technologies Inc.Computer method, apparatus and programmed medium for approximating large databases and improving search efficiency
US6078994A (en)*1997-05-302000-06-20Oracle CorporationSystem for maintaining a shared cache in a multi-threaded computer environment
US6119167A (en)1997-07-112000-09-12Phone.Com, Inc.Pushing and pulling data in networks
US6122628A (en)1997-10-312000-09-19International Business Machines CorporationMultidimensional data clustering and dimension reduction for indexing and searching
US6128624A (en)1997-11-122000-10-03Ncr CorporationCollection and integration of internet and electronic commerce data in a database during web browsing
EP1043671A2 (en)1999-03-192000-10-11International Business Machines CorporationMessage broker providing a publish/subscribe service and method of processing messages in a publish/subscribe environment
US6141699A (en)1998-05-112000-10-31International Business Machines CorporationInteractive display system for sequential retrieval and display of a plurality of interrelated data sets
US6151601A (en)1997-11-122000-11-21Ncr CorporationComputer architecture and method for collecting, analyzing and/or transforming internet and/or electronic commerce data for storage into a data storage area
US6151584A (en)1997-11-202000-11-21Ncr CorporationComputer architecture and method for validating and collecting and metadata and data about the internet and electronic commerce environments (data discoverer)
GB2350758A (en)1999-06-042000-12-06IbmMessage broker providing a publish/subscribe sevice and method of processing messages in a publish/subscribe environment
WO2000077707A1 (en)1999-06-112000-12-21Onecore Financial Network, Inc.Method and system for allowing a financial consultant to manage a plurality of business accounts
US6173310B1 (en)1999-03-232001-01-09Microstrategy, Inc.System and method for automatic transmission of on-line analytical processing system report output
US6192364B1 (en)1998-07-242001-02-20Jarg CorporationDistributed computer database system and method employing intelligent agents
US6205472B1 (en)1998-09-182001-03-20Tacit Knowledge System, Inc.Method and apparatus for querying a user knowledge profile
WO2001024040A1 (en)1999-09-302001-04-05Hnc Software, Inc.Webstation: configurable web-based workstation for reason driven data analysis
US6216125B1 (en)1998-07-022001-04-10At&T Corp.Coarse indexes for a data warehouse
US6233575B1 (en)1997-06-242001-05-15International Business Machines CorporationMultilevel taxonomy based on features derived from training documents classification using fisher values as discrimination values
GB2357596A (en)1999-12-202001-06-27Univ LondonA navigation engine for assessing the quality of a trail between linked pages
US6262598B1 (en)1999-03-052001-07-17Sharp Kabushiki KaishaVoltage level shifter
US6269336B1 (en)1998-07-242001-07-31Motorola, Inc.Voice browser for interactive services and methods thereof
US6269369B1 (en)1997-11-022001-07-31Amazon.Com Holdings, Inc.Networked personal contact manager
US6272485B1 (en)1999-02-182001-08-07Creative Internet Applications, Inc.Transferring selected formatted documents over a computer network using interface script
US6292657B1 (en)1998-07-132001-09-18Openwave Systems Inc.Method and architecture for managing a fleet of mobile stations over wireless data networks
US6308203B1 (en)1997-10-142001-10-23Sony CorporationInformation processing apparatus, information processing method, and transmitting medium
WO2001018728A8 (en)1999-09-102001-12-13Getapproved Com LlcComputer-implemented dynamic financial mentor
EP1164511A2 (en)2000-06-162001-12-19Cognos IncorporatedMethod of managing slowly changing dimensions
US6336137B1 (en)2000-03-312002-01-01Siebel Systems, Inc.Web client-server system and method for incompatible page markup and presentation languages
US6339775B1 (en)1997-11-072002-01-15Informatica CorporationApparatus and method for performing data transformations in data warehousing
US20020035565A1 (en)2000-04-272002-03-21Arun ShahGraphical user interface for relational database
US6369840B1 (en)1999-03-102002-04-09America Online, Inc.Multi-layered online calendaring and purchasing
US6385604B1 (en)1999-08-042002-05-07Hyperroll, Israel LimitedRelational database management system having integrated non-relational multi-dimensional data store of aggregated data elements
US20020056081A1 (en)*1999-12-022002-05-09Qualcomm IncorporatedApparatus and method for decoding digital image and audio signals
US20020059267A1 (en)2000-04-172002-05-16Arun ShahAnalytical server including metrics engine
US6393386B1 (en)1998-03-262002-05-21Visual Networks Technologies, Inc.Dynamic modeling of complex networks and prediction of impacts of faults therein
US6404884B1 (en)1999-10-082002-06-11Grape Technology Group, Inc.Personalized assistance system and method
US6408292B1 (en)1999-08-042002-06-18Hyperroll, Israel, Ltd.Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions
US20020077787A1 (en)2000-12-182002-06-20Theodore RappaportTextual and graphical demarcation of location, and interpretation of measurements
US6411936B1 (en)1999-02-052002-06-25Nval Solutions, Inc.Enterprise value enhancement system and method
US6418200B1 (en)1999-02-262002-07-09Mitel, Inc.Automatic synchronization of address directories for unified messaging
US6421781B1 (en)1998-04-302002-07-16Openwave Systems Inc.Method and apparatus for maintaining security in a push server
US6424426B1 (en)2000-03-282002-07-23MongonetFax-to-email and email-to-fax communication system and method
US20020099691A1 (en)1998-06-242002-07-25Michael Dean LoreMethod and apparatus for aggregation of data in a database management system
US6430624B1 (en)1999-10-212002-08-06Air2Web, Inc.Intelligent harvesting and navigation system and method
WO2001020438A3 (en)1999-09-172002-08-15Ericsson IncDevice and method for displaying data
US20020112237A1 (en)2000-04-102002-08-15Kelts Brett R.System and method for providing an interactive display interface for information objects
US6438552B1 (en)1998-10-022002-08-20Ncr CorporationSQL-Based automated histogram bin data derivation assist
US6446062B1 (en)1999-12-232002-09-03Bull Hn Information Systems Inc.Method and apparatus for improving the performance of a generated code cache search operation through the use of static key values
US6446096B1 (en)1998-09-112002-09-03International Business Machines CorporationMethod and system for providing device-specific key control using role-based HTML element tags
US6446059B1 (en)1999-06-222002-09-03Microsoft CorporationRecord for a multidimensional database with flexible paths
US6449619B1 (en)1999-06-232002-09-10Datamirror CorporationMethod and apparatus for pipelining the transformation of information between heterogeneous sets of data sources
US6457030B1 (en)1999-01-292002-09-24International Business Machines CorporationSystems, methods and computer program products for modifying web content for display via pervasive computing devices
US6466969B1 (en)1998-03-182002-10-15Sony International (Europe) GmbhNotification subsystem
US20020161770A1 (en)1999-08-202002-10-31Shapiro Eileen C.System and method for structured news release generation and distribution
US6477525B1 (en)1998-12-282002-11-05Oracle CorporationRewriting a query in terms of a summary based on one-to-one and one-to-many losslessness of joins
US6480711B1 (en)1998-09-152002-11-12Nms Communications CorporationMethod and system for wireless data communication over the internet
US20020172247A1 (en)2001-04-052002-11-21Avalon Photonics, Ltd.Vertical-cavity surface-emitting laser with enhanced transverse mode stability and polarization stable single mode output
US6487584B1 (en)1998-03-182002-11-26Sony International (Europe) GmbhMultiple personality internet account
US6493800B1 (en)1999-03-312002-12-10International Business Machines CorporationMethod and system for dynamically partitioning a shared cache
US6491304B2 (en)2000-04-112002-12-10Smc CorporationCylinder having guide
US6502101B1 (en)2000-07-132002-12-31Microsoft CorporationConverting a hierarchical data structure into a flat data structure
US6526335B1 (en)2000-01-242003-02-25G. Victor TreyzAutomobile personal computer systems
US6535872B1 (en)1999-04-082003-03-18International Business Machines CorporationMethod and apparatus for dynamically representing aggregated and segmented data views using view element sets
US6539359B1 (en)1998-10-022003-03-25Motorola, Inc.Markup language for interactive services and methods thereof
US6549937B1 (en)1999-07-212003-04-15Microsoft CorporationSystem and method for multi-protocol communication in a computer network
US6553366B1 (en)1998-10-022003-04-22Ncr CorporationAnalytic logical data model
US6564264B1 (en)1999-12-082003-05-13At&T Corp.System, apparatus and method for automatic address updating of outgoing and incoming user messages in a communications network
US6563912B1 (en)1999-03-022003-05-13Toshiba America Information Systems, Inc.System and method for providing integrated messaging
US6574599B1 (en)1999-03-312003-06-03Microsoft CorporationVoice-recognition-based methods for establishing outbound communication through a unified messaging system including intelligent calendar interface
US6581062B1 (en)2000-03-022003-06-17Nimble Technology, Inc.Method and apparatus for storing semi-structured data in a structured manner
US6601062B1 (en)2000-06-272003-07-29Ncr CorporationActive caching for multi-dimensional data sets in relational database management system
WO2002044953A3 (en)2000-11-172003-09-04Intel CorpCustomizing tabular data for wireless handset units
US6616701B2 (en)1998-05-232003-09-09Eolas Technologies, Inc.Method and apparatus for identifying features of multidimensional image data in hypermedia systems
US6629102B1 (en)2000-07-282003-09-30International Business Machines CorporationEfficiently updating a key table during outline restructure of a multi-dimensional database
US6631497B1 (en)1999-07-192003-10-07International Business Machines CorporationBinding data from data source to cells in a spreadsheet
US6636870B2 (en)1999-10-252003-10-21Oracle CorporationStoring multidimensional data in a relational database management system
US6671689B2 (en)2001-01-192003-12-30Ncr CorporationData warehouse portal
US6721728B2 (en)2001-03-022004-04-13The United States Of America As Represented By The Administrator Of The National Aeronautics And Space AdministrationSystem, method and apparatus for discovering phrases in a database
US6736870B2 (en)2000-09-292004-05-18Thomas Josef Heimbach Gesellschaft Mit Beschrankter HaftungFilter device

Patent Citations (136)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5410688A (en)1989-07-211995-04-25Hewlett-Packard CompanyDistributed object based systems for communicating object data among different storage domains
US5404513A (en)1990-03-161995-04-04Dimensional Insight, Inc.Method for building a database with multi-dimensional search tree nodes
US5563999A (en)1990-10-191996-10-08Moore Business Forms, Inc.Forms automation system
US5403147A (en)1991-06-281995-04-04Kao CorporationMethod for warehousing and delivery of articles
US5806060A (en)1992-11-061998-09-08Ncr CorporationInteractive data analysis employing a knowledge base
US5420688A (en)1992-12-141995-05-30Farah; JohnInterferometric fiber optic displacement sensor
US5405531A (en)1993-02-161995-04-11Geo-Microbial Technologies, Inc.Method for reducing the amount of and preventing the formation of hydrogen sulfide in an aqueous system
US5794228A (en)1993-04-161998-08-11Sybase, Inc.Database system with buffer manager providing per page native data compression and decompression
US5794229A (en)1993-04-161998-08-11Sybase, Inc.Database system with methodology for storing a database table by vertically partitioning all columns of the table
US5455945A (en)1993-05-191995-10-03Vanderdrift; RichardSystem and method for dynamically displaying entering, and updating data from a database
US5655101A (en)1993-06-011997-08-05International Business Machines CorporationAccessing remote data objects in a distributed memory environment using parallel address locations at each local memory to reference a same data object
US5713020A (en)1993-09-021998-01-27Microsoft CorporationMethod and system for generating database queries containing multiple levels of aggregation
US5603024A (en)1993-10-081997-02-11International Business Machines CorporationLossless distribution of time series data in a relational data base network
US5519859A (en)1993-11-151996-05-21Grace; John A.Method and apparatus for automatic table selection and generation of structured query language instructions
US5537589A (en)1994-06-301996-07-16Microsoft CorporationMethod and system for efficiently performing database table aggregation using an aggregation index
US5675785A (en)1994-10-041997-10-07Hewlett-Packard CompanyData warehouse which is accessed by a user using a schema of virtual tables
US5511190A (en)1995-01-201996-04-23Tandem Computers, Inc.Hash-based database grouping system and method
US5915019A (en)1995-02-131999-06-22Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protection
US5799310A (en)1995-05-011998-08-25International Business Machines CorporationRelational database extenders for handling complex data types
US5708828A (en)1995-05-251998-01-13Reliant Data SystemsSystem for converting data from input data environment using first format to output data environment using second format by executing the associations between their fields
US6026388A (en)1995-08-162000-02-15Textwise, LlcUser interface and other enhancements for natural language information retrieval system and method
US5692181A (en)1995-10-121997-11-25Ncr CorporationSystem and method for generating reports from a computer database
US5870746A (en)1995-10-121999-02-09Ncr CorporationSystem and method for segmenting a database based upon data attributes
US5721903A (en)1995-10-121998-02-24Ncr CorporationSystem and method for generating reports from a computer database
US5832496A (en)1995-10-121998-11-03Ncr CorporationSystem and method for performing intelligent analysis of a computer database
US5689566A (en)1995-10-241997-11-18Nguyen; Minhtam C.Network with secure communications sessions
US5794030A (en)1995-12-041998-08-11Objectivity, Inc.System and method for maintenance and deferred propagation of schema changes to the affected objects in an object oriented database
US5884262A (en)1996-03-281999-03-16Bell Atlantic Network Services, Inc.Computer network audio access and conversion system
US5706495A (en)1996-05-071998-01-06International Business Machines CorporationEncoded-vector indices for decision support and warehousing
US5991742A (en)1996-05-201999-11-23Tran; Bao Q.Time and expense logging system
US5982890A (en)1996-05-241999-11-09Hitachi, Ltd.Method and system for detecting fraudulent data update
US5778355A (en)1996-06-111998-07-07International Business Machines Corp.Database method and apparatus for interactively retrieving data members and related members from a collection of data
US5721911A (en)1996-06-251998-02-24International Business Machines CorporationMechanism for metadata for an information catalog system
US5870747A (en)1996-07-091999-02-09Informix Software, Inc.Generalized key indexes
US5933796A (en)1996-08-091999-08-03Hitachi, Ltd.Data extracting system based on characteristic quantities of data distribution
US5781911A (en)1996-09-101998-07-14D2K, IncorporatedIntegrated system and method of data warehousing and delivery
US5826258A (en)1996-10-021998-10-20Junglee CorporationMethod and apparatus for structuring the querying and interpretation of semistructured information
US5854890A (en)1996-10-151998-12-29National Instruments CorporationFieldbus function block shell with user selectable data ownership
US5787415A (en)1996-10-301998-07-28International Business Machines CorporationLow maintenance data delivery and refresh system for decision support system database
US5822751A (en)1996-12-161998-10-13Microsoft CorporationEfficient multidimensional data aggregation operator implementation
US5848415A (en)1996-12-181998-12-08Unisys CorporationSelective multiple protocol transport and dynamic format conversion in a multi-user network
US5898431A (en)1996-12-311999-04-27International Business Machines CorporationDatabase graphical user interface with calendar view
US5842213A (en)1997-01-281998-11-24Odom; Paul S.Method for modeling, storing, and transferring data in neutral form
US5857197A (en)1997-03-201999-01-05Thought Inc.System and method for accessing data stores as objects
US6002402A (en)1997-04-091999-12-14Symantec CorporationSystem and method for producing a drag-and-drop object from a popup menu item
US5873102A (en)1997-04-291999-02-16Oracle CorporationPluggable tablespaces on a transportable medium
US5794246A (en)1997-04-301998-08-11Informatica CorporationMethod for incremental aggregation of dynamically increasing database data sets
US6032158A (en)1997-05-022000-02-29Informatica CorporationApparatus and method for capturing and propagating changes from an operational database to data marts
US6078994A (en)*1997-05-302000-06-20Oracle CorporationSystem for maintaining a shared cache in a multi-threaded computer environment
US5987454A (en)1997-06-091999-11-16Hobbs; AllenMethod and apparatus for selectively augmenting retrieved text, numbers, maps, charts, still pictures and/or graphics, moving pictures and/or graphics and audio information from a network resource
US6233575B1 (en)1997-06-242001-05-15International Business Machines CorporationMultilevel taxonomy based on features derived from training documents classification using fisher values as discrimination values
US6119167A (en)1997-07-112000-09-12Phone.Com, Inc.Pushing and pulling data in networks
US6003024A (en)1997-07-251999-12-14Amazon. ComSystem and method for selecting rows from dimensional databases
US6308203B1 (en)1997-10-142001-10-23Sony CorporationInformation processing apparatus, information processing method, and transmitting medium
US6122628A (en)1997-10-312000-09-19International Business Machines CorporationMultidimensional data clustering and dimension reduction for indexing and searching
US6269369B1 (en)1997-11-022001-07-31Amazon.Com Holdings, Inc.Networked personal contact manager
US6339775B1 (en)1997-11-072002-01-15Informatica CorporationApparatus and method for performing data transformations in data warehousing
WO1999024922A1 (en)1997-11-071999-05-20Informatica CorporationApparatus and method
US6014670A (en)1997-11-072000-01-11Informatica CorporationApparatus and method for performing data transformations in data warehousing
US6151601A (en)1997-11-122000-11-21Ncr CorporationComputer architecture and method for collecting, analyzing and/or transforming internet and/or electronic commerce data for storage into a data storage area
US6128624A (en)1997-11-122000-10-03Ncr CorporationCollection and integration of internet and electronic commerce data in a database during web browsing
US6044374A (en)1997-11-142000-03-28Informatica CorporationMethod and apparatus for sharing metadata between multiple data marts through object references
US6151584A (en)1997-11-202000-11-21Ncr CorporationComputer architecture and method for validating and collecting and metadata and data about the internet and electronic commerce environments (data discoverer)
US6487584B1 (en)1998-03-182002-11-26Sony International (Europe) GmbhMultiple personality internet account
US6466969B1 (en)1998-03-182002-10-15Sony International (Europe) GmbhNotification subsystem
US6393386B1 (en)1998-03-262002-05-21Visual Networks Technologies, Inc.Dynamic modeling of complex networks and prediction of impacts of faults therein
US6032145A (en)1998-04-102000-02-29Requisite Technology, Inc.Method and system for database manipulation
US6065007A (en)1998-04-282000-05-16Lucent Technologies Inc.Computer method, apparatus and programmed medium for approximating large databases and improving search efficiency
US6421781B1 (en)1998-04-302002-07-16Openwave Systems Inc.Method and apparatus for maintaining security in a push server
US6141699A (en)1998-05-112000-10-31International Business Machines CorporationInteractive display system for sequential retrieval and display of a plurality of interrelated data sets
US6616701B2 (en)1998-05-232003-09-09Eolas Technologies, Inc.Method and apparatus for identifying features of multidimensional image data in hypermedia systems
US20020099691A1 (en)1998-06-242002-07-25Michael Dean LoreMethod and apparatus for aggregation of data in a database management system
US6216125B1 (en)1998-07-022001-04-10At&T Corp.Coarse indexes for a data warehouse
US6292657B1 (en)1998-07-132001-09-18Openwave Systems Inc.Method and architecture for managing a fleet of mobile stations over wireless data networks
US6208990B1 (en)1998-07-152001-03-27Informatica CorporationMethod and architecture for automated optimization of ETL throughput in data warehousing applications
WO2000004466A1 (en)1998-07-152000-01-27Informatica CorporationMethod and architecture for automated optimization of etl throughput in data warehousing applications
US6269336B1 (en)1998-07-242001-07-31Motorola, Inc.Voice browser for interactive services and methods thereof
US6192364B1 (en)1998-07-242001-02-20Jarg CorporationDistributed computer database system and method employing intelligent agents
WO2000008581A1 (en)1998-08-032000-02-17Harvest Technology, Inc.Dynamic flow-through context switching of investment data into multiple investment tools
US6446096B1 (en)1998-09-112002-09-03International Business Machines CorporationMethod and system for providing device-specific key control using role-based HTML element tags
US6480711B1 (en)1998-09-152002-11-12Nms Communications CorporationMethod and system for wireless data communication over the internet
US6205472B1 (en)1998-09-182001-03-20Tacit Knowledge System, Inc.Method and apparatus for querying a user knowledge profile
US6553366B1 (en)1998-10-022003-04-22Ncr CorporationAnalytic logical data model
US6549910B1 (en)1998-10-022003-04-15Ncr CorporationSQI-based automated, adaptive, histogram bin data description assist
US6539359B1 (en)1998-10-022003-03-25Motorola, Inc.Markup language for interactive services and methods thereof
US6438552B1 (en)1998-10-022002-08-20Ncr CorporationSQL-Based automated histogram bin data derivation assist
US6477525B1 (en)1998-12-282002-11-05Oracle CorporationRewriting a query in terms of a summary based on one-to-one and one-to-many losslessness of joins
US6457030B1 (en)1999-01-292002-09-24International Business Machines CorporationSystems, methods and computer program products for modifying web content for display via pervasive computing devices
US6411936B1 (en)1999-02-052002-06-25Nval Solutions, Inc.Enterprise value enhancement system and method
US6272485B1 (en)1999-02-182001-08-07Creative Internet Applications, Inc.Transferring selected formatted documents over a computer network using interface script
US6418200B1 (en)1999-02-262002-07-09Mitel, Inc.Automatic synchronization of address directories for unified messaging
US6563912B1 (en)1999-03-022003-05-13Toshiba America Information Systems, Inc.System and method for providing integrated messaging
US6262598B1 (en)1999-03-052001-07-17Sharp Kabushiki KaishaVoltage level shifter
US6369840B1 (en)1999-03-102002-04-09America Online, Inc.Multi-layered online calendaring and purchasing
EP1043671A2 (en)1999-03-192000-10-11International Business Machines CorporationMessage broker providing a publish/subscribe service and method of processing messages in a publish/subscribe environment
US6173310B1 (en)1999-03-232001-01-09Microstrategy, Inc.System and method for automatic transmission of on-line analytical processing system report output
US6574599B1 (en)1999-03-312003-06-03Microsoft CorporationVoice-recognition-based methods for establishing outbound communication through a unified messaging system including intelligent calendar interface
US6493800B1 (en)1999-03-312002-12-10International Business Machines CorporationMethod and system for dynamically partitioning a shared cache
US6535872B1 (en)1999-04-082003-03-18International Business Machines CorporationMethod and apparatus for dynamically representing aggregated and segmented data views using view element sets
GB2350758A (en)1999-06-042000-12-06IbmMessage broker providing a publish/subscribe sevice and method of processing messages in a publish/subscribe environment
WO2000077707A1 (en)1999-06-112000-12-21Onecore Financial Network, Inc.Method and system for allowing a financial consultant to manage a plurality of business accounts
US6446059B1 (en)1999-06-222002-09-03Microsoft CorporationRecord for a multidimensional database with flexible paths
US6449619B1 (en)1999-06-232002-09-10Datamirror CorporationMethod and apparatus for pipelining the transformation of information between heterogeneous sets of data sources
US6631497B1 (en)1999-07-192003-10-07International Business Machines CorporationBinding data from data source to cells in a spreadsheet
US6549937B1 (en)1999-07-212003-04-15Microsoft CorporationSystem and method for multi-protocol communication in a computer network
US6408292B1 (en)1999-08-042002-06-18Hyperroll, Israel, Ltd.Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions
US6385604B1 (en)1999-08-042002-05-07Hyperroll, Israel LimitedRelational database management system having integrated non-relational multi-dimensional data store of aggregated data elements
US20020161770A1 (en)1999-08-202002-10-31Shapiro Eileen C.System and method for structured news release generation and distribution
WO2001018728A8 (en)1999-09-102001-12-13Getapproved Com LlcComputer-implemented dynamic financial mentor
WO2001020438A3 (en)1999-09-172002-08-15Ericsson IncDevice and method for displaying data
WO2001024040A1 (en)1999-09-302001-04-05Hnc Software, Inc.Webstation: configurable web-based workstation for reason driven data analysis
US6404884B1 (en)1999-10-082002-06-11Grape Technology Group, Inc.Personalized assistance system and method
US6430624B1 (en)1999-10-212002-08-06Air2Web, Inc.Intelligent harvesting and navigation system and method
US6636870B2 (en)1999-10-252003-10-21Oracle CorporationStoring multidimensional data in a relational database management system
US20020056081A1 (en)*1999-12-022002-05-09Qualcomm IncorporatedApparatus and method for decoding digital image and audio signals
US6564264B1 (en)1999-12-082003-05-13At&T Corp.System, apparatus and method for automatic address updating of outgoing and incoming user messages in a communications network
GB2357596A (en)1999-12-202001-06-27Univ LondonA navigation engine for assessing the quality of a trail between linked pages
US6446062B1 (en)1999-12-232002-09-03Bull Hn Information Systems Inc.Method and apparatus for improving the performance of a generated code cache search operation through the use of static key values
US6526335B1 (en)2000-01-242003-02-25G. Victor TreyzAutomobile personal computer systems
US6581062B1 (en)2000-03-022003-06-17Nimble Technology, Inc.Method and apparatus for storing semi-structured data in a structured manner
US6424426B1 (en)2000-03-282002-07-23MongonetFax-to-email and email-to-fax communication system and method
US6336137B1 (en)2000-03-312002-01-01Siebel Systems, Inc.Web client-server system and method for incompatible page markup and presentation languages
US20020112237A1 (en)2000-04-102002-08-15Kelts Brett R.System and method for providing an interactive display interface for information objects
US6491304B2 (en)2000-04-112002-12-10Smc CorporationCylinder having guide
US20020059267A1 (en)2000-04-172002-05-16Arun ShahAnalytical server including metrics engine
US20020035565A1 (en)2000-04-272002-03-21Arun ShahGraphical user interface for relational database
EP1164511A2 (en)2000-06-162001-12-19Cognos IncorporatedMethod of managing slowly changing dimensions
US6601062B1 (en)2000-06-272003-07-29Ncr CorporationActive caching for multi-dimensional data sets in relational database management system
US6502101B1 (en)2000-07-132002-12-31Microsoft CorporationConverting a hierarchical data structure into a flat data structure
US6629102B1 (en)2000-07-282003-09-30International Business Machines CorporationEfficiently updating a key table during outline restructure of a multi-dimensional database
US6736870B2 (en)2000-09-292004-05-18Thomas Josef Heimbach Gesellschaft Mit Beschrankter HaftungFilter device
WO2002044953A3 (en)2000-11-172003-09-04Intel CorpCustomizing tabular data for wireless handset units
US20020077787A1 (en)2000-12-182002-06-20Theodore RappaportTextual and graphical demarcation of location, and interpretation of measurements
US6671689B2 (en)2001-01-192003-12-30Ncr CorporationData warehouse portal
US6721728B2 (en)2001-03-022004-04-13The United States Of America As Represented By The Administrator Of The National Aeronautics And Space AdministrationSystem, method and apparatus for discovering phrases in a database
US20020172247A1 (en)2001-04-052002-11-21Avalon Photonics, Ltd.Vertical-cavity surface-emitting laser with enhanced transverse mode stability and polarization stable single mode output

Non-Patent Citations (60)

* Cited by examiner, † Cited by third party
Title
"A Process for Selective Routing of Servlet Transcoding Modules," IBM Technical Disclosure Bulletin, vol. 42, Issue 422, Jun. 1999 UK.
"Parameterized XSL Style Sheets," Research Disclosure, vol. 42, No. 423, Jul. 1, 1999, Havant, UK, Article No. 423110.
24X7 The Magazine of Nonstop Computing, "Compaq's Zero Latency Enterprise Initiative," vol. 1, No. 2, Oct. 2000, pp. 1-25.
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." ODIS '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.
Fernandez, 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 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).
Informatica Press Releases, "Informatica Delivers Industry's First Synchronized Data Marts With Newest Version of Powermart Suite," <http://www.informatica.com/syndata-072798.html>, pp. 1-4, May 27, 1997.
Informatica Press Releases, "Informatica Unveils Architecture for Networking Multiple Data Marts Into an Enterprise-Wide Data Warehouse," <http://www.informatica.com/edm-082697.html>, pp. 1-4, Aug. 26, 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, K., "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," 8<SUP>th </SUP>Delos Workshop: User Interfaces for Digital Libraries, Online, Oct. 21-23, 1998, Sweden, p. 2.
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.
Microsoft Computer Dictionary 4th ed. (1999). Microsoft corporation, Redmond, WA. pp. 64-65.*
Mohania, M. et al.: "Advances and Research Directions in Data Warehousing Technology," Ajis, Austrialian Journal of Information Systems, Wollongong, Au. vol. 7, No. 1, Sep. 1999, pp. 41-59.
Multi-Modal Data Access Research Disclosure, Kenneth Mason Publications, Hampshire, GB, No. 426, Oct. 1999, pp. 133-1386.
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. et al., "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.
Schneier, B., "Applied Cryptography, Second Edition," 1996, pp. 189-196, 226-227.
Seshadri, P. et al., "SQLServer for Windows CE-A Database Engine For Mobile And Embedded Platforms," Data Engineering 2000. Proceedings 16<SUP>th </SUP>International Conference in San Diego, CA, US, Feb. 29, 2000, IEE Computer Soc., US, Feb. 29, 2000, pp. 642-644.
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.
Seshardri P. et al: "SQLServer for Windows CE-a database engine for mobile and embedded platforms" data engineering, 2000. Proceedings 16<SUP>th </SUP>International Conference on San Diego CA USA Feb. 29-Mar. 3, 2000, Los A, USA IEEE Comput. Soc. US, Feb. 29, 2000, pp. 642-644, XP010378761 ISBN 0-7695-0506-6 the whole document.
Seshardri P. et al: "SQLServer for Windows CE-a database engine for mobile and embedded platforms" data engineering, 2000. Proceedings 16th International Conference on San Diego CA USA Feb. 29-Mar. 3, 2000, Los A, USA IEEE Comput. Soc. US, Feb. 29, 2000, pp. 642-644, XP010378761 ISBN 0-7695-0506-6 the whole document.
Shanmugasundaram, J. et al., "Relational Databases for Querying SML Documents Limitations and Opportunities," Proc. Of VLDB, pp. 302-314, 1999.
Shimura, T. et al., "Storage and Retrieval of XML Documents Using Object-Relational Databases," Proc. Of DEXA, pp. 206-217, 1999.
Shneiderman, B. et al., "An Architecture for Automatic Relational Database System Conversion," ACM Transactions on Databases Systems, vol. 7, No. 2, 1982.
Shu N. et al., "Convert: A High Level Transition Definition Language for Data Conversion," Proceedings of the 1975 ACM SIGMOD International Conference on Management of Data, May 1975, p. 111.
Shu, N. et al., "Convert: A High Level Translation Definition Language for Data Conversion," Communications of the ACM, vol. 18, No. 10, Oct. 1975, pp. 557-567.
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.

Cited By (123)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US20040107263A1 (en)*2002-11-292004-06-03Nec Infrontia CorporationCommunication system with function of encryption/decryption by agency
US20050086328A1 (en)*2003-10-172005-04-21Landram Fredrick J.Self configuring mobile device and system
US8244903B2 (en)*2003-12-222012-08-14Emc CorporationData streaming and backup systems having multiple concurrent read threads for improved small file performance
US20050138195A1 (en)*2003-12-222005-06-23Jean-Pierre BonoData streaming and backup systems having multiple concurrent read threads for improved small file performance
US20060074880A1 (en)*2004-09-302006-04-06Roman BukaryAnalytic application model and marketplace
US8732696B2 (en)*2004-09-302014-05-20Sap AktiengesellschaftAnalytic application model and marketplace
US20080209203A1 (en)*2007-02-152008-08-28Fujitsu LimitedData encryption apparatus, data decryption apparatus, data encryption method, data decryption method, and data transfer controlling apparatus
US8321659B2 (en)*2007-02-152012-11-27Fujitsu LimitedData encryption apparatus, data decryption apparatus, data encryption method, data decryption method, and data transfer controlling apparatus
US8533661B2 (en)2007-04-272013-09-10Dell Products, LpSystem and method for automated on-demand creation of a customized software application
US9176711B2 (en)2007-04-272015-11-03Dell Products, LpSystem and method for automated on-demand creation of a customized software application
US10133883B2 (en)2009-02-092018-11-20International Business Machines CorporationRapid safeguarding of NVS data during power loss event
US9710282B2 (en)2011-12-212017-07-18Dell Products, LpSystem to automate development of system integration application programs and method therefor
US8943076B2 (en)2012-02-062015-01-27Dell Products, LpSystem to automate mapping of variables between business process applications and method therefor
US8805716B2 (en)2012-03-192014-08-12Dell Products, LpDashboard system and method for identifying and monitoring process errors and throughput of integration software
US9251159B1 (en)*2012-03-292016-02-02Emc CorporationPartial block allocation for file system block compression using virtual block metadata
US8615500B1 (en)*2012-03-292013-12-24Emc CorporationPartial block allocation for file system block compression using virtual block metadata
US8782103B2 (en)2012-04-132014-07-15Dell Products, LpMonitoring system for optimizing integrated business processes to work flow
US9158782B2 (en)2012-04-302015-10-13Dell Products, LpCloud based master data management system with configuration advisor and method therefore
US9015106B2 (en)2012-04-302015-04-21Dell Products, LpCloud based master data management system and method therefor
US9606995B2 (en)2012-04-302017-03-28Dell Products, LpCloud based master data management system with remote data store and method therefor
US8589207B1 (en)2012-05-152013-11-19Dell Products, LpSystem and method for determining and visually predicting at-risk integrated processes based on age and activity
US9069898B2 (en)2012-05-312015-06-30Dell Products, LpSystem for providing regression testing of an integrated process development system and method therefor
US9092244B2 (en)2012-06-072015-07-28Dell Products, LpSystem for developing custom data transformations for system integration application programs
US10177977B1 (en)2013-02-132019-01-08Cisco Technology, Inc.Deployment and upgrade of network devices in a network environment
US9864673B2 (en)2013-06-212018-01-09Dell Products, LpIntegration process management console with error resolution interface
US9183074B2 (en)2013-06-212015-11-10Dell Products, LpIntegration process management console with error resolution interface
US10326795B2 (en)2014-03-202019-06-18Microsoft Technology Licensing, LlcTechniques to provide network security through just-in-time provisioned accounts
US20150281225A1 (en)*2014-03-272015-10-01Microsoft CorporationTechniques to operate a service with machine generated authentication tokens
US10374904B2 (en)2015-05-152019-08-06Cisco Technology, Inc.Diagnostic network visualization
US10116559B2 (en)2015-05-272018-10-30Cisco Technology, Inc.Operations, administration and management (OAM) in overlay data center environments
US11528283B2 (en)2015-06-052022-12-13Cisco Technology, Inc.System for monitoring and managing datacenters
US10728119B2 (en)2015-06-052020-07-28Cisco Technology, Inc.Cluster discovery via multi-domain fusion for application dependency mapping
US10181987B2 (en)2015-06-052019-01-15Cisco Technology, Inc.High availability of collectors of traffic reported by network sensors
US12335275B2 (en)2015-06-052025-06-17Cisco Technology, Inc.System for monitoring and managing datacenters
US11252060B2 (en)2015-06-052022-02-15Cisco Technology, Inc.Data center traffic analytics synchronization
US10320630B2 (en)2015-06-052019-06-11Cisco Technology, Inc.Hierarchichal sharding of flows from sensors to collectors
US10171319B2 (en)2015-06-052019-01-01Cisco Technology, Inc.Technologies for annotating process and user information for network flows
US10326673B2 (en)2015-06-052019-06-18Cisco Technology, Inc.Techniques for determining network topologies
US11368378B2 (en)2015-06-052022-06-21Cisco Technology, Inc.Identifying bogon address spaces
US10439904B2 (en)2015-06-052019-10-08Cisco Technology, Inc.System and method of determining malicious processes
US12278746B2 (en)2015-06-052025-04-15Cisco Technology, Inc.Auto update of sensor configuration
US10505828B2 (en)2015-06-052019-12-10Cisco Technology, Inc.Technologies for managing compromised sensors in virtualized environments
US10516586B2 (en)2015-06-052019-12-24Cisco Technology, Inc.Identifying bogon address spaces
US10516585B2 (en)2015-06-052019-12-24Cisco Technology, Inc.System and method for network information mapping and displaying
US12231308B2 (en)2015-06-052025-02-18Cisco Technology, Inc.Unique ID generation for sensors
US12231307B2 (en)2015-06-052025-02-18Cisco Technology, Inc.System and method for user optimized application dependency mapping
US11477097B2 (en)2015-06-052022-10-18Cisco Technology, Inc.Hierarchichal sharding of flows from sensors to collectors
US12224921B2 (en)2015-06-052025-02-11Cisco Technology, Inc.Technologies for managing compromised sensors in virtualized environments
US12212476B2 (en)2015-06-052025-01-28Cisco Technology, Inc.System and method for network policy simulation
US12192078B2 (en)2015-06-052025-01-07Cisco Technology, Inc.System and method of assigning reputation scores to hosts
US12177097B2 (en)2015-06-052024-12-24Cisco Technology, Inc.Policy utilization analysis
US12113684B2 (en)2015-06-052024-10-08Cisco Technology, Inc.Identifying bogon address spaces
US10693749B2 (en)2015-06-052020-06-23Cisco Technology, Inc.Synthetic data for determining health of a network security system
US11502922B2 (en)2015-06-052022-11-15Cisco Technology, Inc.Technologies for managing compromised sensors in virtualized environments
US10177998B2 (en)2015-06-052019-01-08Cisco Technology, Inc.Augmenting flow data for improved network monitoring and management
US11252058B2 (en)2015-06-052022-02-15Cisco Technology, Inc.System and method for user optimized application dependency mapping
US10735283B2 (en)2015-06-052020-08-04Cisco Technology, Inc.Unique ID generation for sensors
US10742529B2 (en)2015-06-052020-08-11Cisco Technology, Inc.Hierarchichal sharding of flows from sensors to collectors
US11968103B2 (en)2015-06-052024-04-23Cisco Technology, Inc.Policy utilization analysis
US10797970B2 (en)2015-06-052020-10-06Cisco Technology, Inc.Interactive hierarchical network chord diagram for application dependency mapping
US11968102B2 (en)2015-06-052024-04-23Cisco Technology, Inc.System and method of detecting packet loss in a distributed sensor-collector architecture
US11936663B2 (en)2015-06-052024-03-19Cisco Technology, Inc.System for monitoring and managing datacenters
US11924073B2 (en)2015-06-052024-03-05Cisco Technology, Inc.System and method of assigning reputation scores to hosts
US10862776B2 (en)2015-06-052020-12-08Cisco Technology, Inc.System and method of spoof detection
US11924072B2 (en)2015-06-052024-03-05Cisco Technology, Inc.Technologies for annotating process and user information for network flows
US11902122B2 (en)2015-06-052024-02-13Cisco Technology, Inc.Application monitoring prioritization
US11902120B2 (en)2015-06-052024-02-13Cisco Technology, Inc.Synthetic data for determining health of a network security system
US11894996B2 (en)2015-06-052024-02-06Cisco Technology, Inc.Technologies for annotating process and user information for network flows
US11153184B2 (en)2015-06-052021-10-19Cisco Technology, Inc.Technologies for annotating process and user information for network flows
US11700190B2 (en)2015-06-052023-07-11Cisco Technology, Inc.Technologies for annotating process and user information for network flows
US10979322B2 (en)2015-06-052021-04-13Cisco Technology, Inc.Techniques for determining network anomalies in data center networks
US11695659B2 (en)2015-06-052023-07-04Cisco Technology, Inc.Unique ID generation for sensors
US11637762B2 (en)2015-06-052023-04-25Cisco Technology, Inc.MDL-based clustering for dependency mapping
US11522775B2 (en)2015-06-052022-12-06Cisco Technology, Inc.Application monitoring prioritization
US11102093B2 (en)2015-06-052021-08-24Cisco Technology, Inc.System and method of assigning reputation scores to hosts
US10009240B2 (en)2015-06-052018-06-26Cisco Technology, Inc.System and method of recommending policies that result in particular reputation scores for hosts
US10528624B2 (en)*2015-12-072020-01-07Sap SeOptimal hash calculation of archive files and their file entries
US11546288B2 (en)2016-05-272023-01-03Cisco Technology, Inc.Techniques for managing software defined networking controller in-band communications in a data center network
US10931629B2 (en)2016-05-272021-02-23Cisco Technology, Inc.Techniques for managing software defined networking controller in-band communications in a data center network
US12021826B2 (en)2016-05-272024-06-25Cisco Technology, Inc.Techniques for managing software defined networking controller in-band communications in a data center network
US10171357B2 (en)2016-05-272019-01-01Cisco Technology, Inc.Techniques for managing software defined networking controller in-band communications in a data center network
US10289438B2 (en)2016-06-162019-05-14Cisco Technology, Inc.Techniques for coordination of application components deployed on distributed virtual machines
US10708183B2 (en)2016-07-212020-07-07Cisco Technology, Inc.System and method of providing segment routing as a service
US11283712B2 (en)2016-07-212022-03-22Cisco Technology, Inc.System and method of providing segment routing as a service
US10972388B2 (en)2016-11-222021-04-06Cisco Technology, Inc.Federated microburst detection
US10498858B2 (en)2016-12-142019-12-03Dell Products, LpSystem and method for automated on-demand creation of and execution of a customized data integration software application
US11088929B2 (en)2017-03-232021-08-10Cisco Technology, Inc.Predicting application and network performance
US10708152B2 (en)2017-03-232020-07-07Cisco Technology, Inc.Predicting application and network performance
US10523512B2 (en)2017-03-242019-12-31Cisco Technology, Inc.Network agent for generating platform specific network policies
US11252038B2 (en)2017-03-242022-02-15Cisco Technology, Inc.Network agent for generating platform specific network policies
US11509535B2 (en)2017-03-272022-11-22Cisco Technology, Inc.Network agent for reporting to a network policy system
US11146454B2 (en)2017-03-272021-10-12Cisco Technology, Inc.Intent driven network policy platform
US10594560B2 (en)2017-03-272020-03-17Cisco Technology, Inc.Intent driven network policy platform
US10250446B2 (en)2017-03-272019-04-02Cisco Technology, Inc.Distributed policy store
US12368629B2 (en)2017-03-272025-07-22Cisco Technology, Inc.Network agent for reporting to a network policy system
US10764141B2 (en)2017-03-272020-09-01Cisco Technology, Inc.Network agent for reporting to a network policy system
US10873794B2 (en)2017-03-282020-12-22Cisco Technology, Inc.Flowlet resolution for application performance monitoring and management
US11202132B2 (en)2017-03-282021-12-14Cisco Technology, Inc.Application performance monitoring and management platform with anomalous flowlet resolution
US11683618B2 (en)2017-03-282023-06-20Cisco Technology, Inc.Application performance monitoring and management platform with anomalous flowlet resolution
US11863921B2 (en)2017-03-282024-01-02Cisco Technology, Inc.Application performance monitoring and management platform with anomalous flowlet resolution
US10680887B2 (en)2017-07-212020-06-09Cisco Technology, Inc.Remote device status audit and recovery
US11044170B2 (en)2017-10-232021-06-22Cisco Technology, Inc.Network migration assistant
US10554501B2 (en)2017-10-232020-02-04Cisco Technology, Inc.Network migration assistant
US10523541B2 (en)2017-10-252019-12-31Cisco Technology, Inc.Federated network and application data analytics platform
US10594542B2 (en)2017-10-272020-03-17Cisco Technology, Inc.System and method for network root cause analysis
US10904071B2 (en)2017-10-272021-01-26Cisco Technology, Inc.System and method for network root cause analysis
US11233821B2 (en)2018-01-042022-01-25Cisco Technology, Inc.Network intrusion counter-intelligence
US11750653B2 (en)2018-01-042023-09-05Cisco Technology, Inc.Network intrusion counter-intelligence
US11765046B1 (en)2018-01-112023-09-19Cisco Technology, Inc.Endpoint cluster assignment and query generation
US10798015B2 (en)2018-01-252020-10-06Cisco Technology, Inc.Discovery of middleboxes using traffic flow stitching
US10826803B2 (en)2018-01-252020-11-03Cisco Technology, Inc.Mechanism for facilitating efficient policy updates
US11924240B2 (en)2018-01-252024-03-05Cisco Technology, Inc.Mechanism for identifying differences between network snapshots
US10917438B2 (en)2018-01-252021-02-09Cisco Technology, Inc.Secure publishing for policy updates
US10999149B2 (en)2018-01-252021-05-04Cisco Technology, Inc.Automatic configuration discovery based on traffic flow data
US10873593B2 (en)2018-01-252020-12-22Cisco Technology, Inc.Mechanism for identifying differences between network snapshots
US10574575B2 (en)2018-01-252020-02-25Cisco Technology, Inc.Network flow stitching using middle box flow stitching
US11128700B2 (en)2018-01-262021-09-21Cisco Technology, Inc.Load balancing configuration based on traffic flow telemetry
US12008255B2 (en)2019-04-022024-06-11Pure Storage, Inc.Aligning variable sized compressed data to fixed sized storage blocks
US11221778B1 (en)*2019-04-022022-01-11Pure Storage, Inc.Preparing data for deduplication
CN111835700A (en)*2019-12-042020-10-27北京嘀嘀无限科技发展有限公司Data processing method and device, electronic equipment and storage medium
CN111835700B (en)*2019-12-042022-07-22北京嘀嘀无限科技发展有限公司Data processing method and device, electronic equipment and storage medium
US12271767B2 (en)*2022-12-032025-04-08Samsung Electronics Co., Ltd.Near-storage format transformation
US20240184641A1 (en)*2022-12-032024-06-06Samsung Electronics Co., Ltd.Near-storage format transformation

Also Published As

Publication numberPublication date
ATE354242T1 (en)2007-03-15
CA2450869A1 (en)2002-12-27
WO2002103984A3 (en)2003-04-24
EP1400086A2 (en)2004-03-24
ES2281515T3 (en)2007-10-01
WO2002103984A2 (en)2002-12-27
EP1400086B1 (en)2007-02-14
DE60218160T2 (en)2007-10-31
CA2450869C (en)2012-03-20
DE60218160D1 (en)2007-03-29

Similar Documents

PublicationPublication DateTitle
US7162643B1 (en)Method and system for providing transfer of analytic application data over a network
US7350212B2 (en)Method and apparatus for data transfer across a network
US6985958B2 (en)Messaging infrastructure for identity-centric data access
US7178163B2 (en)Cross platform network authentication and authorization model
US7571322B2 (en)Enhanced cookie management
US7280658B2 (en)Systems, methods, and computer program products for accelerated dynamic protection of data
US7127477B2 (en)Method and system for access to automatically synchronized remote files
US7603322B2 (en)Method and apparatus for managing a key management system
US20070189541A1 (en)Method and system for initialzing a key management system
US20010007128A1 (en)Security mechanism providing access control for locally-held data
US20070055891A1 (en)Protocol translation
US20090198820A1 (en)Preserving state information client-server system networked via a stateless protocol
US20040088539A1 (en)System and method for securing digital messages
Itani et al.J2ME application-layer end-to-end security for m-commerce
US20080306875A1 (en)Method and system for secure network connection
US7448071B2 (en)Dynamic downloading of keyboard keycode data to a networked client
US12244743B2 (en)Systems and methods for performing blockchain operations using multi-party computation cohort management groupings
US20070263876A1 (en)In-memory compression and encryption
US7039952B2 (en)Using patterns to perform personal identification data substitution
US7689703B2 (en)Systems and methods of utilizing and expanding standard protocol
US20230421396A1 (en)Systems and methods for performing two-tiered multi-party computation signing procedures to perform blockchain operations
KR20230120606A (en)Service system having unconfirmed algorithm for distribution of authentication information using blockchain and method for processing thereof
CN106355101A (en)Transparent file encryption and decryption system and method for simple storage services
CN105872101A (en)Server communication management device and server communication form configuration method
CN115065493A (en)Autonomous security VDI model based on Spice protocol and optimization method thereof

Legal Events

DateCodeTitleDescription
ASAssignment

Owner name:INFORMATICA CORPORATION, CALIFORNIA

Free format text:ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SANKARAN, MOHAN;BUTSKY, VOLODYMYR;KORITALA, SRIDHAR C.;AND OTHERS;REEL/FRAME:011917/0822;SIGNING DATES FROM 20010607 TO 20010613

STCFInformation on status: patent grant

Free format text:PATENTED CASE

FPAYFee payment

Year of fee payment:4

FPAYFee payment

Year of fee payment:8

ASAssignment

Owner name:BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH CAROLINA

Free format text:SECURITY AGREEMENT;ASSIGNOR:INFORMATICA CORPORATION;REEL/FRAME:036294/0701

Effective date:20150806

Owner name:BANK OF AMERICA, N.A., AS COLLATERAL AGENT, NORTH

Free format text:SECURITY AGREEMENT;ASSIGNOR:INFORMATICA CORPORATION;REEL/FRAME:036294/0701

Effective date:20150806

ASAssignment

Owner name:INFORMATICA LLC, CALIFORNIA

Free format text:CHANGE OF NAME;ASSIGNOR:INFORMATICA CORPORATION;REEL/FRAME:036453/0406

Effective date:20150806

MAFPMaintenance fee payment

Free format text:PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553)

Year of fee payment:12

ASAssignment

Owner name:NOMURA CORPORATE FUNDING AMERICAS, LLC, NEW YORK

Free format text:NOTICE OF SUCCESSION OF AGENCY;ASSIGNOR:BANK OF AMERICA, N.A.;REEL/FRAME:052018/0070

Effective date:20200225

ASAssignment

Owner name:NOMURA CORPORATE FUNDING AMERICAS, LLC, NEW YORK

Free format text:SECURITY INTEREST;ASSIGNOR:INFORMATICA LLC;REEL/FRAME:052022/0906

Effective date:20200225

ASAssignment

Owner name:JPMORGAN CHASE BANK, N.A., NEW YORK

Free format text:SECURITY INTEREST;ASSIGNOR:INFORMATICA LLC;REEL/FRAME:057973/0568

Effective date:20211029

Owner name:INFORMATICA LLC, CALIFORNIA

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:NOMURA CORPORATE FUNDING AMERICAS, LLC;REEL/FRAME:057973/0507

Effective date:20211029

Owner name:INFORMATICA LLC, CALIFORNIA

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:NOMURA CORPORATE FUNDING AMERICAS, LLC;REEL/FRAME:057973/0496

Effective date:20211029


[8]ページ先頭

©2009-2025 Movatter.jp