US10594773B2 - Temporal optimization of data operations using distributed search and server management - Google Patents
Temporal optimization of data operations using distributed search and server management Download PDFInfo
- Publication number
- US10594773B2 US10594773B2 US15/877,379 US201815877379A US10594773B2 US 10594773 B2 US10594773 B2 US 10594773B2 US 201815877379 A US201815877379 A US 201815877379A US 10594773 B2 US10594773 B2 US 10594773B2
- Authority
- US
- United States
- Prior art keywords
- data
- server
- data file
- location
- host group
- 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.)
- Active, expires
Links
- 238000005457 optimization Methods 0.000 title abstract description 42
- 230000002123 temporal effect Effects 0.000 title abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 144
- 230000005540 biological transmission Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 description 80
- 238000007726 management method Methods 0.000 description 39
- 238000012545 processing Methods 0.000 description 26
- 230000004044 response Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 18
- 238000013500 data storage Methods 0.000 description 18
- 239000008186 active pharmaceutical agent Substances 0.000 description 16
- 238000013499 data model Methods 0.000 description 13
- 238000005192 partition Methods 0.000 description 13
- 230000032683 aging Effects 0.000 description 12
- 238000012546 transfer Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 8
- 238000007796 conventional method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000000638 solvent extraction Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 238000005259 measurement Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000001066 destructive effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 239000004557 technical material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
-
- H04L29/08072—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/162—Delete operations
-
- G06F17/2705—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
-
- H04L65/601—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Definitions
- the present invention relates generally to computer and data science, computer software and hardware, computer and server memory, distributed server configuration, and data storage and retrieval management. More specifically, techniques for temporal optimization of data operations using distributed search and server management are described.
- FIG. 1 illustrates an exemplary computing environment for temporal optimization of data operations using distributed server and shard management
- FIG. 2 illustrates an exemplary application architecture for temporal optimization of data operations using distributed server and shard management
- FIG. 3 illustrates an exemplary host group and server cluster configuration for temporal optimization of data operations using distributed server and shard management
- FIG. 4 illustrates an exemplary manifest file structure for temporal optimization of data operations using distributed server and shard management
- FIG. 5A illustrates an exemplary data model and flow diagram for temporal optimization of data operations using distributed server and shard management
- FIG. 5B illustrates an alternative exemplary data model and flow diagram for temporal optimization of data operations using distributed server and shard management
- FIG. 5C illustrates a further exemplary data model and flow diagram for temporal optimization of data operations using distributed server and shard management
- FIG. 6 illustrates an exemplary process for temporal optimization of data operations using distributed server and shard management
- FIG. 7A illustrates another exemplary process for temporal optimization of data operations using distributed server and shard management
- FIG. 7B illustrates an exemplary process for host group and server configuration for temporal optimization of data operations using distributed server and shard management
- FIG. 7C illustrates an exemplary process for reconciliation operations for temporal optimization of data operations using distributed server and shard management
- FIG. 8A illustrates an alternative exemplary process for temporal optimization of data operations using distributed server and shard management
- FIG. 8B illustrates an exemplary process for temporally optimized data retrieval using distributed server and shard management
- FIG. 8C illustrates an exemplary process for temporally optimized data queries using distributed server and shard management
- FIG. 8D illustrates an exemplary process for retrieving temporally optimized data using distributed server and shard management
- FIG. 8E illustrates an alternative exemplary process for retrieving temporally optimized data using distributed server and shard management
- FIG. 9 illustrates an exemplary computing system suitable for temporal optimization of data operations using distributed server and shard management.
- FIG. 1 illustrates an exemplary computing system for temporal optimization of data operations using distributed server and shard management.
- system 100 includes application 102 , logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , query manager 114 , application programming interface (hereafter “API”) 115 , data networks 116 - 118 , index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , client 130 , mobile clients 132 - 134 , and computer 136 .
- API application programming interface
- system may refer to or include the description of a computer network system or topology associated with a map, network, layout, environment, or the like of computing resources that are used to implement a feature, function, process, element, component, part, or multiple instances thereof, without any particular limitation as to the type, configuration, programming or formatting language, service, class, resource, specification, protocol, or other attributes thereof.
- application may also be used interchangeably or synonymously with, or refer to a computer program, software, program, firmware, or any other term that may be used to describe, reference, or refer to a logical set of instructions that, when executed, performs a function or set of functions within a computing system or machine, regardless of whether physical, logical, or virtual and without restriction or limitation to any particular implementation, design, configuration, instance, or state.
- platform may refer to any type of computer hardware (hereafter “hardware”) and/or software environment using one or more local, remote, distributed, networked, or computing cloud (hereafter “cloud”)-based computing resources (e.g., computers, clients, servers, tablets, notebooks, smart phones, cell phones, mobile computing platforms or tablets, and the like) to execute an application, such as those described above, without restriction or limitation to any particular implementation, design, configuration, instance, or state.
- cloud computing resources
- Distributed resources such as cloud networks (also referred to interchangeably as “computing clouds,” “storage clouds,” “cloud networks,” or, simply, “clouds,” without restriction or limitation to any particular implementation, design, configuration, instance, or state) may be used for processing and/or storage computing resources, without restriction or limitation to any particular implementation, design, configuration, instance, or state of a device or machine, physical, virtual, logical, or otherwise.
- cloud networks also referred to interchangeably as “computing clouds,” “storage clouds,” “cloud networks,” or, simply, “clouds,” without restriction or limitation to any particular implementation, design, configuration, instance, or state
- computing resources may be used for processing and/or storage computing resources, without restriction or limitation to any particular implementation, design, configuration, instance, or state of a device or machine, physical, virtual, logical, or otherwise.
- data may be processed from various sources, including, but not limited to index database 120 , database 122 , social database 124 , manifest files database 126 , and metadata database 128 .
- Data may be retrieved from local, remote, distributed, networked, or cloud-based databases or data sources such as data streams or sources of data that are generated from various types of applications or clients.
- data may be stored in various types of data structures including, but not limited to databases, data repositories, data warehouses, data stores, or other data structures configured to store data in various computer programming languages and formats in accordance with various types of data schemas such as SQL, MySQL, NoSQL, DynamoDBTM from Amazon® Web Services, Inc.
- references to databases, data structures, or any type of data storage facility may include any embodiment as a local, remote, distributed, networked, cloud-based, or combined implementation thereof.
- social networking applications being used on different types of devices may be generating data in different forms, formats, and data storage schema on different types of data storage devices and databases that are configured to store data generated for text messaging, image, audio or video streams, blog (i.e., World Wide Web-posted log) or vlog (i.e., video log) entries, instant messages, disappearing messages (e.g. snaps using SnapchatTM, simple message system (i.e., SMS, IRC, and the like) messages, and the like, without limitation or restriction.
- blog i.e., World Wide Web-posted log
- vlog i.e., video log
- instant messages e.g. snaps using SnapchatTM
- simple message system i.e., SMS, IRC, and the like
- Data may be generated from “tweets” or messages from applications such as Twitter® of San Francisco, Calif., “snaps” using the Snapchat® application such as those developed by Snap® of Venice, Calif., or “messenger” posts using applications such as Facebook® of Menlo Park, Calif.
- data may be formatted using simple messaging data communication and transmission protocols such as Internet Relay Chat (IRC), SMS, instant messaging (IM), or others, without limitation.
- client 130 , mobile clients 132 - 134 , and computer 136 may generate data in other forms and formats using programming and formatting languages intended to transmit, transfer, or transport data at different levels of an application architecture (as described in greater detail below).
- Java®, JavaScript®, PythonTM, XML, and other data formats and programs may be used in conjunction with the techniques described herein by application 102 , which may be implemented to provide messaging functionality at the application layer of a seven-layer “stack” application architecture following a standard such as the Open Systems Interconnect (OSI) model.
- OSI Open Systems Interconnect
- application 102 may be an application configured to receive data from various sources (e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , client 130 , mobile clients 132 - 134 , computer 136 , or others), which may include stored data (e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or others) or data generated in real-time or substantially real-time from other applications, clients, or systems.
- sources e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or others
- stored data e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or others
- data may be sent or received over data networks 116 - 118 , which may be local area networks (LAN), wide area networks (WAN), municipal area networks (MAN), wireless local area networks (WLAN), cloud computing or cloud data networks that use disparate computing and storage resources managed by other applications or resources to provide storage and processing capabilities.
- data may be sent using any type of data network that is configured to send and receive data in any type of digital format, regardless of program or formatting language, without limitation.
- data may be queried from, retrieved, or stored to one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other types, schema, or structures, all, some, or none of which may be configured to store data in data structures such as a database, data store, data repository, data facility, data warehouse, or the like.
- Data may also be generated and received from or sent to one or more of client 130 , mobile clients 132 - 134 , computer 136 , or other clients (not shown) that consume, use, or generate data.
- client 130 mobile clients 132 - 134 , and computer 136 are representative of types of clients and devices that may send data to or receive data from application 102 over data network 118 .
- Data may be in any type of output format generated by an application (e.g., Twitter®, Snapchat®, Messenger®, instant messaging, email, text messaging, IRC, HTML, XML, Java®, or others, without limitation), transmitted over data networks 118 to application 102 .
- data may be stored in any type of format and, in some examples, classified as various types of data formats in one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other databases (not shown).
- messaging data may be transmitted from a mobile tablet (e.g., mobile clients 132 - 134 ) over data network 118 to application 102 .
- Application 102 may be configured to receive or send data directly or indirectly to/from any of modules 104 - 115 over data networks 116 - 118 .
- data received by or sent from application 102 may be transmitted over application programming interface 115 , which may be configured to receive, convert, and transfer (i.e., send) data in any type of data format from clients 130 - 136 for processing by application 102 (or any of modules 104 - 114 ) before being stored to one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other databases (not shown).
- data may be queried and retrieved from one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other databases (not shown) using, for example, API 115 .
- data may also be processed by one or more of modules 104 - 114 and transferred using API 115 over data network 116 (which may also be implemented using a single or multiple data networks) to one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other databases (not shown) to be stored at a location that may be indicated in a server or database index (hereafter “index”).
- index database index which may also be implemented using a single or multiple data networks
- Application 102 may also be configured to transfer data to/from one or more of clients 130 - 136 over API 115 to one or more of logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , or query manager 114 to perform processing or other functions on the data before transmitting data back to clients 130 - 136 or storing processed data (i.e., “processed data” refers to resultant data generated by one or more of logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , query manager 114 , or application 102 ) on one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 .
- processed data refers to resultant data generated by one or more of logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , query manager 114 , or application 102
- a stream of “social data” (e.g., data generated by a social media application or network such as those described above or others, without limitation) may be received as input to application 102 over data network 118 .
- Social data in some examples, may refer to data generated from any type of application, system, device, platform, program, or other set of computer instructions that are intended for use in enabling data transfer and communication between endpoints used by and for social purposes such as the creation, management, or participation in a computing or online community.
- online may refer to any type of computing environment in which endpoints (e.g., clients 130 - 136 ) are configured to transfer data between each other, either directly or indirectly over one or more data networks (e.g., data networks 116 - 118 ).
- social data may be generated from social media (e.g., content that is transmitted digitally to/from various types of devices such as posting digital still images, video and audio files, text-based content such as editorials, news feeds, entertainment-related information, and others, without limitation or restriction), social networks (e.g., data networks that are purposes-configured and deployed to transfer social data), or applications that can be used for purposes such as social media, among others.
- social data is an example of data that application 102 may be executed upon, but is neither a limitation nor a restriction on the types of data that may be processed by application 102 .
- social data may be stored in social database 124 and transmitted from or sent to one or more of clients 130 - 136 using application 102 .
- data may be transferred between clients 130 - 136 and data storage facilities (e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or others as described herein) directly (not shown) or indirectly through, for example, application 102 using data networks 116 - 118 or other data networks (not shown).
- data storage facilities e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or others as described herein
- data received by application 102 may be processed by one or more of logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and/or query manager 114 in order to temporally optimize the storage and retrieval of data generated from, for example, clients 130 - 136 .
- “Temporal optimization” techniques are described in greater detail below.
- application 102 is configured with logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 .
- application 102 may be configured differently than is shown with more, fewer, or different modules apart from those shown and described (i.e., logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 ).
- logic module 104 cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 may be implemented as software, hardware, firmware, or a combination thereof, without limitation or restriction to any computer programming or formatting language, device, type, or configuration.
- logic module 104 cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 may be implemented as software modules that are configured to communicate with each other module over a local or distributed data network.
- application 102 and logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 may be implemented as part of a software platform where each module may be encoded using, for example, Java®, PythonTM, JavaScript (also referred to as JS), binary encoding, machine assembly, COBOL, HTML, xHTML, XML, or any other type of computer programming and formatting languages.
- Java® PythonTM
- JavaScript also referred to as JS
- binary encoding machine assembly
- COBOL HyperText Markup Language
- HTML HyperText Markup Language
- xHTML HyperText Markup Language
- XML XML
- logic module 104 is configured to provide processes and algorithms for various features and functionality, including providing control functionality for cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 .
- logic module 104 may be a set of rules that are manually input to provide parameters, thresholds, and other quantitative restrictions or comparative statements to help determine actions to be taken, which of cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , or query manager 114 to invoke, service calls to make (e.g., over API 115 ), or any other functions that require decisions or a determinant action to be taken.
- logic module 104 may be implemented not as a rules-based engine or module, but instead as a heuristic, semantic, or context evaluation set of algorithms that evaluate incoming data from, for example, clients 130 - 136 or elsewhere (e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other data storage or processing resources over data networks such as data networks 116 - 118 ) in order to parse, evaluate, analyze, or perform other functions provided by application 102 .
- a heuristic, semantic, or context evaluation set of algorithms that evaluate incoming data from, for example, clients 130 - 136 or elsewhere (e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other data storage or processing resources over data networks such as data networks 116 - 118 ) in order to parse, evaluate, analyze, or perform other functions provided by application 102 .
- application 102 is configured with several modules that provide different platform functions for temporally managing data from various sources in order to optimize or improve the efficiency of searching and retrieval in response to queries as well as reducing latency in returning data in response to a query, accurately and efficiently.
- social data (not shown) is generated from an input or “stream” of social data coming from one or more of clients 130 - 136 , it may be received at API 115 and further processed by resource manager 108 , which may be configured to manage various types of storage resources (e.g., local, distributed, networked, cloud-based, and the like) to determine the technical configuration and location of the social data to be stored (e.g., in social database 124 ).
- storage resources e.g., local, distributed, networked, cloud-based, and the like
- Resource manager 108 may also exchange data with one or more other modules (e.g., cluster manifest file manager 106 , indexer 110 , search platform 112 , query manager 114 , or API 115 ) to perform other functions.
- resource manager 108 in some examples, can be used cooperatively with cluster manifest file manager 106 and indexer 110 in order to determine a location that has been temporally-optimized (as described in further detail below) for subsequent search and retrieval in response to query requests (hereafter “query” or “request,” which may be used substantially synonymously or interchangeably with each other to indicate a request for data in response to a request formatted in accordance with a query language (without limitation or restriction to any particular language) from a given location and resource (e.g., server or group of logically or physically coupled (directly, indirectly, or remotely) servers).
- query requests hereafter “query” or “request,” which may be used substantially synonymously or interchangeably with each other to indicate a request for data in response to a request format
- cluster manifest file manager 106 may be configured to receive instructions from logic module 104 and/or resource manager 108 to configure one or more databases intended to store processed data generated from data received by application 102 from, for example, clients 130 - 136 .
- Databases may include index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , and others, without limitation or restriction to those shown and described.
- storage and/or processing resources such as index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , and others may be configured by cluster manifest file manager 106 to create a managed system of resources that can store data processed by application 102 by optimizing the storage and retrieval of data (i.e., increasing the speed of execution of program instructions to execute a query, delete, add, or write operation in one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other database(s), without limitation).
- cluster manifest file manager 106 is configured to provide program instructions from application 102 to each of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , or other databases (not shown) in order to configure and partition by establishing shards and slicing each storage server in order to ensure that queries, when received by application 102 , are executed and sent responses by minimalizing search time.
- Distributed search platforms or applications such as SolrTM the Apache LuceneTM Foundation, or others may be used, in some examples, to implement search platform 112 to provide data searching functionality. In other examples, different search platforms or applications may be used and are not limited to the examples shown and described.
- search platform 112 may be configured to receive a query from API 115 and, using the techniques described herein, “rewrite” (i.e., structure and configure a query request received by application 102 for a given data schema, without limitation or restriction to any particular data storage facility or schema shown or described) a query and execute it against a given data structure (i.e., database and data schema such as those implemented by one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , and others).
- a given data structure i.e., database and data schema such as those implemented by one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , metadata database 128 , and others.
- one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , and metadata database 128 may be configured in one or more host groups.
- host group configuration may be performed using a manifest file (not shown), which includes various server parameters, ports, services, rules, thresholds, limitations, restrictions, data transmission protocols, policies, addresses, partitioning (i.e., identifying, allocating, and/or configuring, among other functions shards, stripes, and partitions of servers), or any other setting that may be used to determine how to allocate storage resources for storing data received from and retrieved by application 102 .
- a manifest file may be used to configure one or more host groups in order to partition storage resources to temporally optimize data processing and storage functions.
- a manifest file may be used to configure a given host group to store data that is aged within a give time range.
- a time characteristic such as a time range may be measured in seconds, minutes, hours, days, weeks, months, or any other measurement of time that may be useful for server configuration.
- a “time characteristic” may refer to a time range, a time bucket, a bucket of time, a time bracket, or any expression that is used to encompass a discrete period of time, regardless of the actual unit of time measurement.
- a different host group may be allocated for movement and storage of the data.
- the data may be moved from one host group to another; from a device or resource of a given server class to another device or resource of a different server class.
- This “bucketing” or sharding of data permits faster query responses for rewritten queries generated by query manager 114 because indexer 110 can return a location to be searched by search platform 112 for the requested (i.e., target) data to be returned. Further detail regarding temporal optimization of server resources for processing, storing, and retrieving data (e.g., social data, among others, without limitation or restriction) is described in greater detail below.
- index database 120 may be configured using one or more manifest files to configure for temporal optimization of data processing, storage, and retrieval.
- database 122 may include multiple storage servers configured to store data for different time ranges and, as stored data (e.g., data and processed data that has been directed for storage by application 102 ) ages, it may be moved between different partitions (e.g., shards, slices, stripes, and the like), host groups, and server classes in order to provide storage and retrieval functionality that is optimized to retrieve recently-generated data at higher data retrieval speeds using servers with data retrieval speeds and technologies that are faster and more expensive.
- partitions e.g., shards, slices, stripes, and the like
- data storage can be optimized by targeting data within given time ranges onto different host groups and different server classes, each of which may have different costs associated with the use of servers assigned to these classes. In so doing, data storage is optimized to not only optimize storage and processor resource costs, but also minimize latency and increase accuracy of data retrieval.
- server configuration using a manifest file may be further performed by determining, for a given host group, a server type and class to be used to implement the host group.
- data generated more recently i.e., not aging significantly since initial generation from clients 130 - 136
- server configuration using a manifest file may be further performed by determining, for a given host group, a server type and class to be used to implement the host group.
- data generated more recently i.e., not aging significantly since initial generation from clients 130 - 136
- the techniques described herein for host group configuration can partition processing and storage resources based on time characteristics and assign different server classes having different access speeds that are allocated amongst data that is more likely to be requested in large numbers of query requests as opposed to aged data that may be stored on other servers or storage resources that have slower (i.e., and less expensive) server classes assigned.
- system 100 is capable of responding to large numbers of queries due to increased read-write-access capabilities (e.g., solid state memory technologies providing faster addressing speeds than mechanically-addressed memory technologies, quantum computing processors relative to conventional semiconductor, silicon-based memory technologies, and others) and provide increased performance by assigned to faster processing, storage, and retrieval resources more recent data (e.g., data from clients 130 - 136 within the first twenty-four (24) hours since initial generation)).
- read-write-access capabilities e.g., solid state memory technologies providing faster addressing speeds than mechanically-addressed memory technologies, quantum computing processors relative to conventional semiconductor, silicon-based memory technologies, and others
- data may be moved between different server classes as aging increases, or other parameters or characteristics, in addition to time characteristics, change.
- a periodicity for performing reconciliation may also be indicated in a manifest file.
- query manager 114 may be configured to parse, evaluate, and re-write a given request into a rewritten query that is run against those servers identified by indexer 110 as being assigned to data stored in the first twenty-four (24) hours.
- indexer 110 may be configured to modify a server index (hereafter “index”) to specify a location, including host group, server, shard, slice, partition, server class, or other parameter to be used by search platform 112 in executing a query.
- index server index
- indices for given servers may be stored in index database 120 , among others.
- Data e.g., actual data or copies thereof as generated by clients 130 - 136
- Data may be stored in one or more databases such as database 120 or others.
- Different types of data may also be segmented, isolated, or otherwise separated and stored in different host groups using the techniques described herein.
- data generated from social media applications and networks may be stored as “social data” in social database 124 .
- Further examples of using different data storage resources may also include storing manifest files in manifest files database 126 and metadata in metadata database 128 , among others.
- Metadata may refer to descriptive data that is generated during the parsing and evaluation of data from clients 130 - 136 by application 102 or any modules or elements (e.g., logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 , among others that may not be shown or described in FIG. 1 ). Metadata may be generated when application 102 parses data generated by clients 130 - 136 such as HTML or XML tags that may be used in a database to associate a given data file with another data file. For example, data received from clients 130 - 136 by application 102 may be parsed and evaluated prior to be stored on database 122 .
- modules or elements e.g., logic module 104 , cluster manifest file manager 106 , resource manager 108 , indexer 110 , search platform 112 , and query manager 114 , among others that may not be shown or described in FIG. 1 ). Metadata may be generated when application 102 parses data generated by clients 130
- a copy of the received data file(s) may be generated and the original data may be stored as a “master” version of the data file(s) while a copy is stored in another database (not shown) apart from database 122 .
- storage resources e.g., index database 120 , database 122 , social database 124 , manifest files database 126 , and metadata database 128 , among others
- metadata stored in metadata database 128 may be used to identify any copies of data file(s) intended for updating (e.g., due to data operations such as deleting, adding, or writing data to a given data file previously stored in a different state).
- metadata may also be used to identify aging associated with a given data file in order to determine a host group and server class to which the data is moved in order to maintain temporal optimization.
- a process e.g., an algorithm or set of algorithms that may or may not be logically related to update a given state of stored data and storage resources
- reconciliation e.g., an algorithm or set of algorithms that may or may not be logically related to update a given state of stored data and storage resources
- index(s) are updated by indexer 110 to reflect modified locations and any parameters such as those specified above.
- Various types of data operations may be performed in order to “reconcile” a previously stored version of a data file with a more recently received data file by application 102 .
- a master version of a data file (not shown) and a copy of a data file stored (not shown), for example, in database 122 may be stored on a server shard located on a device of a server class that has the highest data retrieval rate in system 100 .
- a newly received data file may be evaluated by application 102 to determine that one or more data operations (e.g., add, delete, read, write, transfer, or others) is to be performed based on, for example, time characteristics that indicate the data file is to be transferred to another host group in which a different server class is used for data storage and retrieval.
- reconciliation may be used to manage how data files are stored on one or more of index database 120 , database 122 , social database 124 , manifest files database 126 , and metadata database 128 , among others.
- system 100 and the above-described elements may be implemented differently, with variations in function, order, procedure, and process, without limitation to any of the examples or accompanying descriptions.
- FIG. 2 illustrates an exemplary application architecture for temporal optimization of data operations using distributed server and shard management.
- application 202 including logic module 104 ( FIG. 1 ), cluster manifest file manager 106 ( FIG. 1 ), resource manager 108 ( FIG. 1 ), indexer 110 ( FIG. 1 ), search platform 112 ( FIG. 1 ), query manager 114 ( FIG. 1 ), API 115 ( FIG. 1 ), shard manager 214 , class manager 216 , cluster/host group module 220 , and reconciliation module 222 .
- logic module 104 may be implemented substantially similarly to the like-numbered elements shown above and described in connection with FIG. 1 .
- application 202 may be implemented as an alternative configuration of application 102 ( FIG. 1 ) with additional elements (i.e., shard manager 214 , class manager 216 , cluster/host group module 220 , and reconciliation module 222 ) that may be implemented and configured to provide additional functionality.
- application 202 may be implemented as hardware, software, firmware, logic-specific circuitry, or as a combination thereof, without restriction or limitation to any particular implementation environment, state, or configuration.
- application 202 using API 115 may be in data communication with one or more data processing and/or storage resources (not shown) over one or more data networks (not shown).
- one or more host groups can be configured by application 202 using the techniques described herein.
- shard manager 214 can be configured to determine how, across a number of storage resources (as identified by resource manager 108 ( FIG.
- shards can be partitioned and identified to store various segments of data and data files (as used herein, “data” and “data files” may be used interchangeably without limitation and are not subject to any particular implementation or configuration) based on a time associated with the generation, transmission, receipt, or other time characteristic associated with the data.
- data files can be determined by application 202 to identify metadata (e.g., metadata stored in metadata database 128 ) to indicate time characteristics such as those described herein. Time characteristics can, in some examples, be used to determine shards in which to store data and processed data, including determining individual partitions (e.g., shards, slices) and partitioning techniques such as striping.
- shard manager 214 may be configured to determine how shards are partitioned across host groups managed by application 202 as well as identifying to cluster/host group module 220 , which shards are assigned to a given host group or, in some examples, whether given shards span multiple servers that are being used in different host groups, as described in greater detail below.
- class manager 216 may be configured as a software, hardware, firmware, circuitry, or combination thereof and used as an individual component or element of application 202 to assign or determine the assignment of particular classes of servers to host groups being managed by application 202 .
- server class 1 may be assigned to a host group as solid state memory for fast data access, retrieval, and data operations for data to be stored that was originally generated in the last 12 hours.
- data that has aged past 12 hours e.g., 12 hours and 1 second or longer
- may be moved to a different host group using older, mechanically-addressed memory technology e.g., disk drives, and the like.
- the location of data stored on either of the above-referenced host groups may be identified to query manager 114 ( FIG. 1 ), which can track and associate queries intended for data within the first 12 hour time range or the “12 hour and older” time range and, in so doing, target more precisely and quickly, rewritten queries so as to not consume storage and/or processing resources searching host group(s) outside of the time range of requested data (i.e., as indicated in a query).
- class manager 216 may be configured to associate, assign, track, or identify which classes of servers are assigned to various host groups. Data transferred between class manager 216 and cluster/host group module 220 may be used by application 202 to implement a management system of various host groups and clusters of servers in order to deploy the techniques described herein.
- clusters of servers may be used interchangeably with “server cluster” or “cluster” and is intended to refer to a computing cluster or node of servers that are logically assigned together as a group, which may include multiple instances of physical or virtual machines or servers, partitions, shards, slices, or the like.
- cluster/host group module 220 may also exchange data with reconciliation module 222 in order to reconcile (i.e., perform reconciliation) data stored throughout various host groups and/or server clusters if, in some examples, new incoming data (e.g., input data streams for various social media, social networks, or social media-oriented applications, and the like) indicate that data previously stored has changed.
- new incoming data e.g., input data streams for various social media, social networks, or social media-oriented applications, and the like
- cluster/host group module 220 may send data as a command in order to trigger or initiate reconciliation module 222 to perform one or more data operations in order to effect the change.
- data operation may refer to any type of computer programming or formatting operation that results in data being added, deleted, modified, replaced, changed, reordered, joined, shifted, or the like, without limitation or restriction to any particular type of database or data schema operation.
- reconciliation may be performed on a schedule, intermittently, infrequently, frequently, periodically, rapidly, or on any type of schedule or random occurrence, without limitation or restriction.
- Reconciliation in some examples, is used to ensure that host groups and clusters of servers managed by application 202 store updated data and data files, or copies thereof, in order to provide accurate and updated information in response to queries.
- Various types of programming and formatting languages may be used to implement reconciliation module 222 (or any of the elements shown in FIGS. 1 and 2 ), including Scala, or others, without limitation or restriction.
- application 202 and the above-described elements may be implemented differently, with variations in function, order, procedure, and process, without limitation to any of the examples or accompanying descriptions.
- FIG. 3 illustrates an exemplary host group and server cluster configuration for temporal optimization of data operations using distributed server and shard management.
- computing environment 300 includes application 202 ( FIG. 2 ), cluster/host group module 220 ( FIG. 2 ), reconciliation module 222 ( FIG. 2 ), databases 306 - 308 , data network 310 , clusters 312 - 316 , and servers 318 - 332 .
- application 202 may be implemented similarly to the examples shown and described above.
- cluster/host group module 220 and reconciliation module 222 may also be implemented functionally and structurally in a substantially similar manner to that described above in connection with FIG. 2 .
- application 202 , cluster/host group module 220 , and/or reconciliation module 222 may be implemented functionally and/or structurally differently than the examples shown and described above in connection with FIG. 2 .
- databases 306 and 308 may be placed in data communication with application 202 , directly or indirectly.
- application 202 may access, store, or retrieve data (among other performing other data operations) in database 306 by transferring data over data network 310 .
- data network 310 may be implemented as a computing cloud or distributed set of data networks that are configured to route and transfer data between application 202 , databases 306 - 308 , or servers 318 - 332 , the latter of which may be implemented using various types and quantities of servers, without limitation or restriction.
- application 202 may also be in data communication with database 308 in order to access, store, or retrieve data, but using a direct data communication link.
- Various types of data communication protocols such as transport control protocol/internet protocol (TCP/IP), hypertext transfer protocol (HTTP or HTTPS), ICMP, or others may be used and are not intended to be a specific limitation or restriction to the techniques described herein.
- data or data files accessed, stored, or retrieved by application 202 from various sources may be stored in any of databases 306 - 308 or on any of servers 318 - 332 on clusters 312 - 316 , which may be configured into one or more host groups by application 202 using a manifest file (not shown).
- application 202 may invoke cluster/host group module 220 to use configuration settings and parameters in a manifest file to configure clusters 312 - 316 into one or more host groups.
- clusters 312 - 316 may represent individual host groups, wherein varying types and quantities of servers are implemented.
- cluster 312 may be implemented using servers 318 - 320 of a given server class (e.g., class 1).
- cluster 314 may be implemented using servers 322 - 328 , which may be of a different server class than those deployed for cluster 312 (e.g., class 2).
- cluster 316 may be implemented as another host group having servers 330 - 332 , which may of a similar or different class than those implemented for clusters 312 - 314 .
- clusters 312 - 316 could be grouped logically to create one or more addressable host groups.
- multiple clusters of servers can be grouped to create a host group and the examples shown and described are not intended to be limiting.
- more or fewer clusters and host groups using servers of similar or different classes can be implemented (i.e., deployed) and the examples shown and described are not intended to be limiting.
- application 202 can use cluster/host group module 220 to configure and manage one or more host groups, as described above. Further, application 202 can generate control data and signals that are intended to control, manage, and logically group, address, or otherwise organize various servers into host groups and/or clusters by partitioning (e.g., sharding, slicing, striping, and the like) server resources to store data in a temporally-optimized manner.
- partitioning e.g., sharding, slicing, striping, and the like
- cluster 312 includes servers 318 - 320 , which are “class 1” servers that utilize fast, but expensive, solid state memory technologies that are capable of performing data operations at a rate faster than that of other classes (e.g., “class 2,” “class n,” or the like), application 202 ( FIG. 2 ) can designate cluster 312 to store and/or process data (i.e., data files) that has “aged” beyond an initial time range.
- “aging” may refer to a time characteristic such as the length of time that has transpired since a subject data file was generated, transmitted, or otherwise initially received from a source (e.g., clients 130 - 136 ).
- system 300 may be configured by application 202 to move data as it ages from an initial period, for example, from server 318 to server 326 and, when further aging has occurred, to server 332 .
- the configuration of host groups and clusters (e.g., clusters 312 - 316 ) may be performed by application 202 to optimize the use of different classes of servers (e.g., for storage, processing, or other operations) for different types of data, which may be segregated based on time characteristics such as aging.
- temporal optimization of data processing and storage resources may be achieved by directing different classes of servers, which may be distinguished based on read/write/access speeds, performance, and cost, to store and/or process different types of data based on characteristics such as time characteristics (e.g., aging, time ranges, time buckets, or others).
- Temporal optimization storage and processing techniques described herein also enable data and data files (regardless of whether data (i.e., master versions of data and data files) or copies of data files) to be accessed and retrieved in response to queries rapidly and accurately by discretely identifying clusters and/or host groups on which requested data is stored. Further, temporal optimization may also be increased by using reconciliation, as described herein, to ensure that requested data and data files returned in response to queries are accurate and updated.
- reconciliation module 222 may be used (for example, in a Scala-implemented architecture) to perform various data operations on data stored on one or more of clusters 312 - 316 and servers 318 - 332 . Data operations such as those described above may be performed by reconciliation module 222 when logic module 204 ( FIG. 2 ) detects, in newly received data, that a change has occurred or is indicated to data previously stored. In some examples, logic module 204 may generate control data and signals to servers 318 - 332 to identify a location, access the location, and perform a data operation on data or data files stored at the location.
- logic module 204 may generate control data and signals to create a copy of the data targeted for data operations to be performed by reconciliation module 222 in order to keep an earlier version of the data, in addition to a master version of the data as it was originally received, for various purposes such as disaster recovery, catastrophic recovery, rollbacks (i.e., rolling back stored data to an earlier state in order to pre-data a catastrophic, destructive, or corrupting event).
- system 300 , application 202 , and the above-described elements may be implemented differently, with variations in function, order, procedure, and process, without limitation to any of the examples or accompanying descriptions.
- FIG. 4 illustrates an exemplary manifest file structure for temporal optimization of data operations using distributed server and shard management.
- data structure 400 may be an example of an implementation of a manifest file that may be used by application 102 ( FIG. 1 ) or 202 ( FIGS. 2-3 ) to configure one or more servers into one or more host groups and/or clusters to temporally optimize data storage, processing, and retrieval.
- data structure 400 includes substructure 402 - 408 , which may be used as described below.
- substructure 402 may be used to present parameters and settings that, when received by a server (e.g., any of those described above) are used to designate a cluster name, shard size, slice size, and one or more host group names.
- substructure 404 may be used to provide parameters and settings to configure a first set of hosts within the host group based on an assigned class of servers.
- substructure 406 may be used to provide parameters and settings for configuring a second group of hosts assigned, within the host group, to one or more servers that may be implemented using devices of a different class than those used for the set of hosts above (e.g., Hosts A 1 through A(n) comparative, based on server class, to Hosts B 1 through B(n)).
- substructure 408 includes a file system prefix that may be used to identify manifest file represented by data structure 400 , without limitation or restriction to any particular parameters, settings, or examples shown and described.
- data structure 400 and the above-described substructures 402 - 408 may be implemented differently, with variations in function, order, procedure, and process, without limitation to any of the examples or accompanying descriptions.
- FIG. 5A illustrates an exemplary data model and flow diagram for temporal optimization of data operations using distributed server and shard management.
- data model 500 includes platform 508 (i.e., which may be implemented as a process, apparatus, system, device, machine (physical or virtual; singular or multiple instances), algorithm, or as a logical set of processes or algorithms (e.g., such as a platform application or system, which may be a collection of functions implemented using, for example, various types of software, firmware, hardware, circuitry, or a combination thereof)) and data types 504 - 516 , one or more of which may be used by platform 508 for various data operations.
- platform 508 i.e., which may be implemented as a process, apparatus, system, device, machine (physical or virtual; singular or multiple instances), algorithm, or as a logical set of processes or algorithms (e.g., such as a platform application or system, which may be a collection of functions implemented using, for example, various types of software, firmware, hardware, circuitry, or a
- data types 504 - 516 may include data 504 , query data 506 , cluster configuration data 510 , host group data 512 - 514 , and reconciliation data 516 .
- data 504 may be any type of data configured to be received by platform 508 , which may include, but is not limited to, digital and/or analog (e.g., binary) data in any type of format or schema, including, but not limited to files, packets, segments, frames, partitions, containers, .jar files, characters, strings, text, integers, real, Boolean, alphanumeric, ASCII, RSS, or any other type beyond those listed here), or others, without limitation or restriction.
- digital and/or analog e.g., binary
- Data 504 may include data from one or more other applications or clients (e.g., clients 130 - 136 ( FIG. 1 ); not shown) such as social media applications, social networks, applications (e.g., other computer programs, applications, operating systems, services, or the like), content feeds, computers, servers, mobile devices such as smart phones, tablet computers, or others without limitation.
- data 504 may be an input stream of data to platform 508 with social data (i.e., data from social media applications, social networks, or the like) including a single or multiple data files, each of which has been assigned a time and date stamp that might be included in, for example, a packet header, footer or payload.
- a date and time may be determined and converted into a time period based on resolving the assigned time into a number of seconds, minutes, hours, or the like, as measured against a clock or clock signal (not shown) referenced by platform 508 .
- a “stream” e.g., continuous output of data
- data 504 may be parsed, evaluated, and processed by platform 508 , application 102 ( FIG. 1 ), application 202 ( FIG. 2 ), or other elements shown and described above.
- other types of data e.g., query data 506 , cluster configuration data 510 , host group data 512 - 514 , among others
- other types of data e.g., query data 506 , cluster configuration data 510 , host group data 512 - 514 , among others
- query data 506 may be received by platform 508 and, when received, may represent a query request initiated by a client (e.g., clients 130 - 136 ( FIG. 1 ); not shown), application, platform, system, or other computing device, machine, or process.
- a query in some examples, may be a machine or algorithmically generated request for previously stored data, irrespective of data type, content or format.
- platform 508 receives query data 506 , for example, parsing and evaluation may generated other data such as control signals or instructions to one or more storage locations implemented using virtual, physical, logical, cloud, or other types of storage or computing resources (e.g., storage servers).
- temporal optimization of stored data may have stored the requested data at a location that is assigned to a given time range, which has been assigned to a given host group implemented using one or more server classes.
- platform 508 may rewrite or write a new query (not shown) using parsed data from query data 506 and send a rewritten request that has been targeted to a given host group based on determining a time associated with the requested data (i.e., stored data to be returned in response to the initial query).
- host group data 512 - 514 may include rewritten queries, queries generated by platform 508 , or other data or signals that, when sent by application 508 , or any of the elements shown and described herein, is used to executed one or more data operations on servers assigned to host groups, but which are targeted for execution based on temporal optimization and identification of time ranges in which queried data is assigned.
- host group data 512 - 514 may be issued to retrieve stored data from a given host group if, based on parsing query data 506 , a given host group or servers assigned to a host group have been partitioned to encompass the time range within which the requested stored data (i.e., data may be stored on a server, shard, slice, stripe, or other type of partition based on a time of when the data was generated, transmitted, received, or otherwise assigned a given time).
- host groups and servers assigned to given time ranges for purposes of storing data in a temporally optimized manner may be configured using data, signals, or instructions included within cluster configuration data 510 .
- configuration of clusters, host groups, and servers may be performed, instructed, or otherwise managed by platform 508 using cluster manifest file 502 and cluster configuration data 510 .
- cluster manifest file 502 may be illustrative of data that includes manifest files (such as those described above) that may be used to configure one or more storage and/or processing resources in order to temporally optimize the storage and retrieval of data.
- cluster manifest file 502 and cluster configuration data 510 may include information on cluster and host group configuration, server configuration, shard determination and configuration, server striping (hereafter “striping”), server slice determination, or other partitioning and configuration data or information that may be used to determine how to store and retrieve (or otherwise process) data.
- data is stored based on a time assigned to the stored data.
- Resources e.g., clusters, host groups, servers, shards, slices, stripes, partitions, or the like
- time characteristics such as time ranges.
- platform 508 may instruct moving data from a given resource (e.g., a location, server, host group, cluster, or the like) to another resource in response to reconciliation data 516 .
- platform 508 may provide data and instructions in reconciliation data 516 to determine whether any stored data, based on aging, should be deleted from a given resource and stored on another resource (e.g., moving data that has aged from a faster, more expensive class of server hardware to a slower, less expensive class of server hardware).
- reconciliation data 516 may also include data or signals that may be used to modify, by executing various data operations (e.g., delete, copy, add, join, or others, without limitation or restriction), stored data (not shown).
- data model 500 and the above-described elements may be implemented differently, with variations in function, order, procedure, or process, without limitation or restriction to any of the examples or accompanying descriptions.
- FIG. 5B illustrates an alternative exemplary data model and flow diagram for temporal optimization of data operations using distributed server and shard management.
- data model 520 includes platform 508 ( FIG. 5A ), which may be implemented in function and structure substantially similar to the like-numbered elements described above in connection with FIG. 5A (i.e., manifest file 502 , query data 506 , cluster configuration data 510 , host group data 512 - 514 , and reconciliation data 516 .
- social data 522 is input to platform 508 and, once parsed and evaluated, is stored in a host group.
- social data 522 may be stored in a server at a location that is stored in a server index (hereafter “index”).
- the time assessed to social data 522 increments in the unit of measurement (e.g., seconds, minutes, hours, days, weeks, months, years, decades, centuries, millennia, or a fraction thereof) assigned by platform 508 as a “time characteristic.”
- a time characteristic indicates that a given data file, packet, frame, segment, or the like has incremented so as to traverse a given time range to a different time range
- platform 508 may generate data and signals to direct moving social data 522 (similarly to data 504 ( FIG.
- instructions to store data and queries requesting particular data may be performed at decreased speeds, reducing processor demands and latency times for generating responses or returning data in response to queries.
- data model 520 and the above-described elements may be implemented differently, with variations in function, order, procedure, or process, without limitation or restriction to any of the examples or accompanying descriptions.
- FIG. 5C illustrates a further exemplary data model and flow diagram for temporal optimization of data operations using distributed server and shard management.
- data model 530 illustrates exemplary flow of data 532 across servers 534 - 542 , which may be implemented using different classes of servers.
- data 532 may be directed, instructed, or otherwise signaled (e.g., by application 102 ( FIG. 1 ), application 202 ( FIG. 2 ), platform 508 ( FIGS. 5A-5B ), or other elements such as those shown and described herein) to be stored in one or more storage servers (not shown).
- a time scale (designed by variable “t”) is shown across which storage and/or retrieval activity of data 532 occurs over servers A-n (servers 534 - 542 ), which may be implemented using different classes of servers (e.g., i2, r3, r(n), and others, without limitation or restriction as to server type or schema, including, but not limited to, physical, virtual, logical, or others).
- servers A-n servers 534 - 542
- servers 534 - 542 may be implemented using different classes of servers (e.g., i2, r3, r(n), and others, without limitation or restriction as to server type or schema, including, but not limited to, physical, virtual, logical, or others).
- server 534 which may be implemented as a class “i2” server.
- server 534 may be implemented as a class “i2” server.
- server classes e.g., i2, r3, r(n)
- server classes e.g., i2, r3, r(n)
- server class or “class” may refer to a type or categorization of processing or storage server based on various attributes and characteristics such as memory technology type (e.g., solid state, random access memory (RAM), read only memory (ROM), disk drive, quantum computing, semiconductor, or others), data transfer rates, storage capacity or volume, compatibility (e.g., for use in arrays such as a redundant array of independent disks (“RAID”)), or others, without limitation or restriction to any particular or specific type of class.
- memory technology type e.g., solid state, random access memory (RAM), read only memory (ROM), disk drive, quantum computing, semiconductor, or others
- data transfer rates e.g., for use in arrays such as a redundant array of independent disks (“RAID”)
- RAID redundant array of independent disks
- movement of data may refer to data retrieval operations to remove data from a location on a server, performing another data operation to delete the data from the location at the server, and performing a further data operation to write (i.e., save) the data to a new location on a different server; although the order of deleting and writing may be performed synchronously, simultaneously, in reverse order, or in no particular order.
- the above-described data model 530 and corresponding flow description may be varied in process, order, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 6 illustrates an exemplary process for temporal optimization of data operations using distributed server and shard management.
- process 600 may be implemented as an algorithm, program, application, process, method, procedure, operation, or a group thereof configured to be performed by application 102 ( FIG. 1 ), application 202 ( FIG. 2 ), platform 508 ( FIGS. 5A-5B ), or another instance of the described techniques.
- process 600 starts by configuring a data network using a manifest file, as described above ( 602 ).
- a cluster or set of clusters having one or more host groups that, in turn, have one or more servers configured for storage or processing may be used to provide parameter and settings to configure servers to store data for temporal optimization of data operations to store and retrieve data (e.g., in response to queries).
- data (which may include any type of data, such as those described herein including, but not limited to, social data) is received at a platform (e.g., platform 508 ( FIGS. 5A-5B )) ( 604 ). Once received at platform 508 , one or more elements such as those described above in connection with FIGS.
- 1-3 may be configured to parse the received data ( 606 ) to determine, for example, a time characteristic such as a time of generation, transmission, creation, or other attribute of the received data, which may be a post to a social media application or network, as an example.
- a time characteristic such as a time of generation, transmission, creation, or other attribute of the received data, which may be a post to a social media application or network, as an example.
- data received by platform 508 may be parsed to determine other time characteristics, parameters, or other quantitative or qualitative attributes beyond those described herein and are not limited to any specific example shown or described.
- the data may be stored to a location on one or more servers of a given server class ( 608 ).
- a platform e.g., platform 508 ( FIGS. 5A-5B ) have been configured using a manifest file (not shown)
- the stored data is written to a location (e.g., memory location) that is either annotated or referenced by, for example, a pointer in a server index.
- the pointer can direct queries from platform 508 to the location where requested data has been written and can be retrieved ( 610 ).
- data can be reconciled, as described herein, at various, scheduled, regular, irregular, periodic, occasional, on-demand, or random time intervals ( 612 ).
- process 600 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 7A illustrates another exemplary process for temporal optimization of data operations using distributed server and shard management.
- process 700 may be an alternative implementation of a temporal optimization process practicing the techniques described herein which, in some examples, may commence by configuring a host group having one or more servers (e.g., configured to provide processor or storage resources) using a manifest file as described herein ( 702 ). In some examples, configuration of server resources using a manifest file is described in further detail below in connection with FIG. 7B .
- data may be received by, for example, application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), or platform 508 ( FIGS.
- API application programming interface
- 704 an application programming interface
- API may be used to provide an adapter or data communication structure to facilitate data transfer between, for example, application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), or platform 508 ( FIGS. 5A-5B ) and one or more applications, networks, devices, clients, computers, servers, hosts, or any other type of computing device or machine, physical or virtual, remote or local, single instance or distributed, without limitation or restriction.
- multiple APIs may be implemented and the techniques described herein are not limited to any particular number of instances or specific configurations of said instances of an API.
- the data may be parsed by application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), platform 508 ( FIGS. 5A-5B ), or one or more modules thereof such as those described above in connection with FIGS. 1-3 .
- application 102 FIG. 1
- application 202 FIGS. 2-3
- platform 508 FIGS. 5A-5B
- logic module 104 FIGS.
- 1-2 may parse received data to generate a processed data file, which may include, for example, time characteristics such as a time associated with the initial posting of a “blog” (i.e., a log configured for display on multiple devices over the World Wide Web (“Web”)) entry, or a user's post to a social media site, application, or network (e.g., InstagramTM, Facebook®, Snapchat®, or others), or the like ( 706 ).
- time characteristics such as a time associated with the initial posting of a “blog” (i.e., a log configured for display on multiple devices over the World Wide Web (“Web”)) entry, or a user's post to a social media site, application, or network (e.g., InstagramTM, Facebook®, Snapchat®, or others), or the like ( 706 ).
- received data or data files may be stored at a location on a server, host group, cluster, or a set thereof based on the assignment of the data to a given time range and, subsequently, a server class.
- the location of the stored data may be referenced in an index by using various types of reference techniques such as pointers, addresses, and the like ( 708 ).
- additional data may be received that, when parsed, may indicate one or more data operation that need to be performed in order to reconcile changes ( 710 ).
- data may be reconciled by performing one or more data operations to delete, modify, move (e.g., as described above and in reaction to aging from an initial event such as generation, creation, initialization, posting, publishing, or others), retrieve, copy, or other operations.
- the above-described process 700 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 7B illustrates an exemplary process for host group and server configuration for temporal optimization of data operations using distributed server and shard management.
- process 714 is shown and described, illustrating an exemplary process for configuring a cluster, host group, server, or a set thereof using a manifest file.
- a determination is made by, for example, application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), platform 508 ( FIGS. 5A-5B ) to determine whether multiple or a single server class is available for configuration using a manifest file ( 720 ). If multiple classes of servers are available, multiple host groups are created and configured in accordance with indicated parameters and settings in a manifest file.
- available server resources may include, but are not limited, to local, distributed, or cloud-based storage and processing resources made available by service networks such as AmazonTM Web Services (“AWS”) as provided by Amazon, Inc. of Seattle, Wash., among others, without limitation or restriction.
- AWS AmazonTM Web Services
- a time range may be designated to represent a time range of data to be stored on each resource assigned to a given server class, if multiple server classes are available.
- multiple time ranges may be further associated with each resource of a host group of a server class ( 724 ).
- time ranges may be identified as aging (as described herein) occurs, subsequently generating, from available server resources, additional clusters, host groups, shards, and slices of different servers.
- Partitioning of available server resources may be performed by identifying and assigning shards and slices of each available server resource or striping server resources in order to determine how and when data is to be stored (i.e., multiple instances or a single instance of a physical or virtual (i.e., virtual machine) storage or processor-configured server) based on control data and signals generated by application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), and platform 508 ( FIGS. 5A-B ) ( 726 ).
- multiple server classes may be assigned to different time ranges in order to segregate or separate stored data into different “time buckets” (i.e., ranges of time that indicate locations for data to be stored based on time characteristics associated with or determined or parsed from received data).
- Available server resources are then assigned to host groups configured for temporal optimization of data storage, processing, and retrieval operations ( 728 ).
- process 720 determines there is a single class of servers
- data received by application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), platform 508 ( FIGS. 5A-5B may be processed (e.g., performing any type of data operations using available server resources of the single server class, without limitation or restriction) or stored ( 730 ). Once stored, reconciliation may be performed as described herein and in connection with FIG. 7C below.
- the above-described process 714 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 7C illustrates an exemplary process for reconciliation operations for temporal optimization of data operations using distributed server and shard management.
- process 740 begins by invoking reconciliation, which may be a single instruction or algorithm or a logical group or algorithms, programs, applications, or processes that are configured to reconcile one or more available server resources configured for temporal optimization to store or retrieve data ( 742 ).
- a determination is made as to whether data being received by, for example, application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), platform 508 ( FIGS. 5A-5B ) indicates changes (i.e., modifications in the current state of stored data) are present ( 744 ). If received data (e.g., newly received data or data received by application 102 ( FIG.
- determining the type of change that has occurred to previously stored data may include identifying one or more data operations to be performed on stored data. Once the type(s) of change has been determined and one or more data operations associated with enacting the indicated change(s) has also been determined, a server index may be referenced to determine a location associated with the targeted stored data. After determining the location of the stored data targeted for change (i.e., modification) by referencing a pointer, address, or other locating information included within a data structure configured as a server index (“index”), the associated data operation(s) are performed ( 748 ).
- data operation may refer to any type of algorithmic, digital, software, method, or process that can modify data, regardless of programming language, format, or application architectural level (e.g., various levels of an application “stack” as identified in various types of models such as the Open Systems Interconnect (“OSI”) model).
- OSI Open Systems Interconnect
- performance of a data operation may include identifying a location of stored data indicated for change by received data (i.e., data received after the target data was stored), copying the stored data in its unmodified state to a cache, buffer, or temporary memory location, performing the data operation on the copy of the stored data, and storing the modified stored data to the original location from which the data was retrieved or to a different location, if specified by data received by application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), platform 508 ( FIGS. 5A-5B ), or a sub-module thereof (e.g., modules such as those indicated in FIGS. 1-3 ) ( 750 ).
- the above-described process 740 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 8A illustrates an alternative exemplary process for temporal optimization of data operations using distributed server and shard management.
- process 800 may be implemented as an alternative implementation or embodiment of process 700 described above in connection with FIG. 7A .
- process 800 starts by configuring clusters, host groups, and available server sources (e.g., individual or multiple instances of servers (physical, virtual, or logical), server classes, or the like) by making assignments based on time characteristics.
- available server resources and server classes may be assigned based on time characteristics such as time ranges into which stored data can be grouped ( 802 ).
- striping of available server resources and generation and assignment of shards (as described above) may be assigned to available storage resources based on time characteristics ( 804 ).
- a query requesting data retrieval may be received by application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), platform 508 ( FIGS. 5A-5B ), or a sub-module thereof (e.g., modules such as those indicated in FIGS. 1-3 ) ( 806 ).
- a query requesting data retrieval of stored data it is further parsed and evaluated to identify a time characteristic (e.g., a time range in which the requested data was stored) associated with the stored data ( 808 ).
- a location is determined to identify one or more server resources on which the stored data is housed ( 810 ).
- application 102 FIG. 1
- application 202 FIGS. 2-3
- platform 508 FIGS. 5A-5B
- a sub-module thereof e.g., modules such as those indicated in FIGS.
- a request to the location (i.e., “location”) may be formatted based on the class and data storage schema of the location, but also targeted at a given cluster, host group, and/or server based on comparing the determined time characteristic with one of the indexed time ranges associated with available server resources.
- server resources assigned to time ranges inside or outside that of the stored data may be excluded, thus preventing unnecessary server and processor resources being consumed.
- a precise location of data being requested by a given query may not be readily identified within a server index.
- an enveloping time range can be identified and, once identified, assigned server resources can be searched in a targeted manner avoiding expending processor and computing sources on unrelated server resources, which not only reduces latency in returning accurate results in response to queries, but also improves the allocation of server resources to storage of large amounts of stored.
- a copy when stored data requested for retrieval is copied into a cache, buffer, or other temporary or permanent memory location, a copy may be maintained for disaster or catastrophic recovery or rollback (i.e., resetting a state of a memory device to a previous state in order to restore data from a destructive, catastrophic, or corrupting event) purposes.
- disaster or catastrophic recovery or rollback i.e., resetting a state of a memory device to a previous state in order to restore data from a destructive, catastrophic, or corrupting event
- stored data when stored data is requested for retrieval in response to a query, a copy is made to a cache, buffer, or other temporary or permanent memory location and then the stored data is deleted from the location.
- stored data may be handled differently and is not limited to the specific examples shown and described.
- the above-described process 800 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 8B illustrates an exemplary process for temporally optimized data retrieval using distributed server and shard management.
- process 820 starts by determining clusters and host groups to be configured ( 822 ).
- application 102 FIG. 1
- application 202 FIGS. 2-3
- platform 508 FIGS. 5A-5B
- a sub-module thereof e.g., logic module 104 ( FIGS. 1-2 )
- determines times ranges to assign to each host group or, in some examples, individual hosts, or sub-host groups ( 824 ).
- a determination is made as to which server classes are available ( 826 ).
- server classes are assigned to host groups, individual hosts, or sub-host groups being temporally optimized for data retrieval ( 828 ).
- shards may be determined for assigned to various time ranges assigned to host groups ( 830 ). In other words, some shards may be implemented using one or multiple server resources (e.g., physical, virtual, or logical) of a single or multiple server classes. Logically, shards may be assigned to a given time range and server class, but actually implemented using a server resource or a fraction thereof, in some examples.
- a query requesting stored data may be rewritten in the data schema, format, or programming or formatting language of databases installed the elements set forth above ( 832 ).
- queries may also be rewritten in order to be executed using a given search facility, application, platform, or system.
- queries may be rewritten by query manager 114 ( FIG. 2 ) in order to transform a query from a web-input, text-based submission from one or more of clients 130 - 136 ( FIG. 1 ) into a query request in Solr, which may be used as an enterprise-level search platform.
- a Solr query may be run against various, disparate databases and server resources within a given time range in order to locate, retrieve (as discussed above), and return targeted stored data in response to the original request.
- an enterprise-level search platform e.g., Solr
- Solr an enterprise-level search platform that is configured to search various, disparate databases and data structures deployed on server resources that have been configured to store data on host groups supporting different server classes
- latency is decreased and accuracy is increased in return stored data in response to queries by avoiding the need to search all server resources deployed for a given cluster or host group.
- the above-described process 820 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 8C illustrates an exemplary process for temporally optimized data queries using distributed server and shard management.
- process 840 starts by logic module 104 ( FIGS. 1-2 ) initiating evaluation of a query received by, for example, application 102 ( FIG. 1 ), application 202 ( FIGS. 2-3 ), platform 508 ( FIGS. 5A-5B ), or a sub-module thereof (e.g., logic module 104 ( FIGS. 1-2 )) ( 842 ).
- query manager 114 FIGS. 1-2
- search platform 112 may be configured to rewrite and execute a received query in a data schema and format of a given host group, server, or class as identified in sub-process 846 above ( 848 ), which is described in greater detail below in connection with FIG. 8D .
- a copy of the data being sought by the query is retrieved ( 850 ).
- the copy of the requested data is returned in response to the request in a format and language (e.g., HTML, XML, Java®, JavaScript, command line interface, binary, or any other type of programming or formatting language that may be used to display data) to the client that initiated the query ( 852 ).
- a format and language e.g., HTML, XML, Java®, JavaScript, command line interface, binary, or any other type of programming or formatting language that may be used to display data
- the above-described process 840 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- the value determined from a received query is used to reference an index to determine a match to locate stored data to be returned in response to a query ( 864 ).
- a determination is then made to determine if a value in the index matches the value parsed from the original query ( 868 ). If not match is found, an error message may be returned and the process ends ( 870 ). If a match is found, then the matched value is converted into the data schema for the server resource on which the requested data is stored ( 872 ). The requested data is then retrieved and returned in response to the original query ( 874 ).
- the above-described process 860 may be varied in process, order, steps, sub-processes, or other aspects, without limitation or restriction to the examples shown and described.
- FIG. 8E illustrates an alternative exemplary process for retrieving temporally optimized data using distributed server and shard management.
- process 880 illustrates an alternative process for rewriting and executing a query in a database format or schema for a target server resource.
- several sub-processes of process 880 may be similar to those described above in connection with FIG. 8D .
- a query is received, it is evaluated to determine or identify a value associated with or indicated of the data requested ( 862 ; FIG. 8D ). Once a value has been determined, a location associated with the value is identified to the extent that a host group and/or a server class are identified for querying ( 863 ).
- a master copy of the requested data may be located using metadata parsed from the original query. For example, a query may be parsed to identify various types and formats of metadata that may be used to identify data requested. Using the metadata, a search may be performed of the host group and associated server resources to locate a master copy of the requested data ( 882 ). Once located, a copy of the master data (or master data file(s)) may be retrieved ( 884 ).
- a data operation to reconcile the stored data may be performed by storing a copy of the master data at the location indicated by the index ( 886 ). After storing the copy of the master data at the location where the queried data should have been stored (i.e., but was damaged or deleted), another copy of the master data is returned in response to the original query ( 888 ).
- the above-described process 880 may be used to replace, modify, fix, replace, address, write, or otherwise save data to a location that may have been corrupted for various reasons, including, but not limited, to power outages, disasters, catastrophic loss, server damage, corrupted memory or data structures, or others.
- FIG. 9 illustrates an exemplary computing system suitable for temporal optimization of data operations using distributed server and shard management.
- computer system 900 may be used to implement computer programs, applications, methods, processes, or other software to perform the above-described techniques.
- Computing system 900 includes a bus 902 or other communication mechanism for communicating information, which interconnects subsystems and devices, such as processor 904 , system memory 906 (e.g., RAM), storage device 908 (e.g., ROM), disk drive 910 (e.g., magnetic or optical), communication interface 912 (e.g., modem or Ethernet card), display 914 (e.g., CRT or LCD), input device 916 (e.g., keyboard), cursor control 918 (e.g., mouse or trackball), communication link 920 , and network 922 .
- processor 904 system memory 906 (e.g., RAM), storage device 908 (e.g., ROM), disk drive 910 (e.g., magnetic or optical), communication interface 912 (
- computing system 900 performs specific operations by processor 904 executing one or more sequences of one or more instructions stored in system memory 906 . Such instructions may be read into system memory 906 from another computer readable medium, such as static storage device 908 or disk drive 910 . In some examples, hard-wired circuitry may be used in place of or in combination with software instructions for implementation.
- Non-volatile media includes, for example, optical or magnetic disks, such as disk drive 910 .
- Volatile media includes dynamic memory, such as system memory 906 .
- Computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
- Transmission medium may include any tangible or intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine, and includes digital or analog communications signals or other intangible medium to facilitate communication of such instructions.
- Transmission media includes coaxial cables, copper wire, and fiber optics, including wires that comprise bus 902 for transmitting a computer data signal.
- execution of the sequences of instructions may be performed by a single computer system 900 .
- two or more computing system 900 coupled by communication link 920 may perform the sequence of instructions in coordination with one another.
- Computing system 900 may transmit and receive messages, data, and instructions, including program, i.e., application code, through communication link 920 and communication interface 912 .
- Received program code may be executed by processor 904 as it is received, and/or stored in disk drive 910 , or other non-volatile storage for later execution.
- the above-described techniques may be implemented differently in design, function, and/or structure and are not intended to be limited to the examples described and/or shown in the drawings.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
Claims (20)
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/877,379 US10594773B2 (en) | 2018-01-22 | 2018-01-22 | Temporal optimization of data operations using distributed search and server management |
AU2019209542A AU2019209542B2 (en) | 2018-01-22 | 2019-01-22 | Temporal optimization of data operations using distributed search and server management |
EP19741372.7A EP3743822A4 (en) | 2018-01-22 | 2019-01-22 | Temporal optimization of data operations using distributed search and server management |
PCT/US2019/014637 WO2019144159A1 (en) | 2018-01-22 | 2019-01-22 | Temporal optimization of data operations using distributed search and server management |
US16/820,697 US11102271B2 (en) | 2018-01-22 | 2020-03-16 | Temporal optimization of data operations using distributed search and server management |
US17/334,135 US11496545B2 (en) | 2018-01-22 | 2021-05-28 | Temporal optimization of data operations using distributed search and server management |
AU2022200375A AU2022200375B2 (en) | 2018-01-22 | 2022-01-20 | Temporal optimization of data operations using distributed search and server management |
US17/982,437 US12137137B2 (en) | 2022-11-07 | Temporal optimization of data operations using distributed search and server management |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/877,379 US10594773B2 (en) | 2018-01-22 | 2018-01-22 | Temporal optimization of data operations using distributed search and server management |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/820,697 Continuation US11102271B2 (en) | 2018-01-22 | 2020-03-16 | Temporal optimization of data operations using distributed search and server management |
Publications (2)
Publication Number | Publication Date |
---|---|
US20190230151A1 US20190230151A1 (en) | 2019-07-25 |
US10594773B2 true US10594773B2 (en) | 2020-03-17 |
Family
ID=67298858
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/877,379 Active 2038-07-01 US10594773B2 (en) | 2018-01-22 | 2018-01-22 | Temporal optimization of data operations using distributed search and server management |
US16/820,697 Active US11102271B2 (en) | 2018-01-22 | 2020-03-16 | Temporal optimization of data operations using distributed search and server management |
US17/334,135 Active US11496545B2 (en) | 2018-01-22 | 2021-05-28 | Temporal optimization of data operations using distributed search and server management |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/820,697 Active US11102271B2 (en) | 2018-01-22 | 2020-03-16 | Temporal optimization of data operations using distributed search and server management |
US17/334,135 Active US11496545B2 (en) | 2018-01-22 | 2021-05-28 | Temporal optimization of data operations using distributed search and server management |
Country Status (1)
Country | Link |
---|---|
US (3) | US10594773B2 (en) |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11102271B2 (en) * | 2018-01-22 | 2021-08-24 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US11128589B1 (en) | 2020-09-18 | 2021-09-21 | Khoros, Llc | Gesture-based community moderation |
US11438282B2 (en) | 2020-11-06 | 2022-09-06 | Khoros, Llc | Synchronicity of electronic messages via a transferred secure messaging channel among a system of various networked computing devices |
US11438289B2 (en) | 2020-09-18 | 2022-09-06 | Khoros, Llc | Gesture-based community moderation |
US11470161B2 (en) | 2018-10-11 | 2022-10-11 | Spredfast, Inc. | Native activity tracking using credential and authentication management in scalable data networks |
US11539655B2 (en) | 2017-10-12 | 2022-12-27 | Spredfast, Inc. | Computerized tools to enhance speed and propagation of content in electronic messages among a system of networked computing devices |
US11538064B2 (en) | 2017-04-28 | 2022-12-27 | Khoros, Llc | System and method of providing a platform for managing data content campaign on social networks |
US11546331B2 (en) | 2018-10-11 | 2023-01-03 | Spredfast, Inc. | Credential and authentication management in scalable data networks |
US11570128B2 (en) | 2017-10-12 | 2023-01-31 | Spredfast, Inc. | Optimizing effectiveness of content in electronic messages among a system of networked computing device |
US11601398B2 (en) | 2018-10-11 | 2023-03-07 | Spredfast, Inc. | Multiplexed data exchange portal interface in scalable data networks |
US11627053B2 (en) | 2019-05-15 | 2023-04-11 | Khoros, Llc | Continuous data sensing of functional states of networked computing devices to determine efficiency metrics for servicing electronic messages asynchronously |
US11627100B1 (en) | 2021-10-27 | 2023-04-11 | Khoros, Llc | Automated response engine implementing a universal data space based on communication interactions via an omnichannel electronic data channel |
US11657053B2 (en) | 2018-01-22 | 2023-05-23 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US11687573B2 (en) | 2017-10-12 | 2023-06-27 | Spredfast, Inc. | Predicting performance of content and electronic messages among a system of networked computing devices |
US11714629B2 (en) | 2020-11-19 | 2023-08-01 | Khoros, Llc | Software dependency management |
US11741551B2 (en) | 2013-03-21 | 2023-08-29 | Khoros, Llc | Gamification for online social communities |
US11765248B2 (en) | 2017-11-22 | 2023-09-19 | Spredfast, Inc. | Responsive action prediction based on electronic messages among a system of networked computing devices |
US11924375B2 (en) | 2021-10-27 | 2024-03-05 | Khoros, Llc | Automated response engine and flow configured to exchange responsive communication data via an omnichannel electronic communication channel independent of data source |
US11936652B2 (en) | 2018-10-11 | 2024-03-19 | Spredfast, Inc. | Proxied multi-factor authentication using credential and authentication management in scalable data networks |
US12120078B2 (en) | 2020-09-18 | 2024-10-15 | Khoros, Llc | Automated disposition of a community of electronic messages under moderation using a gesture-based computerized tool |
US12137137B2 (en) | 2022-11-07 | 2024-11-05 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10108637B2 (en) * | 2016-03-08 | 2018-10-23 | International Business Machines Corporation | Spatial-temporal storage system, method, and recording medium |
FR3076001B1 (en) * | 2017-12-27 | 2021-05-28 | Bull Sas | DATA STORAGE PROCESS AND APPLICATION EXECUTION PROCESS WITH REDUCTION IN ACCESS TIME TO STORED DATA |
US10983954B2 (en) * | 2019-05-24 | 2021-04-20 | Hydrolix Inc. | High density time-series data indexing and compression |
US11500930B2 (en) * | 2019-05-28 | 2022-11-15 | Slack Technologies, Llc | Method, apparatus and computer program product for generating tiered search index fields in a group-based communication platform |
CN110971590A (en) * | 2019-11-07 | 2020-04-07 | 珠海许继芝电网自动化有限公司 | Data transmission method and equipment for efficient reverse-crossing safety isolation device |
US11853808B2 (en) * | 2022-02-09 | 2023-12-26 | harpoon Corp. | Visual cluster deployment and operation system and method |
Citations (234)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6041311A (en) | 1995-06-30 | 2000-03-21 | Microsoft Corporation | Method and apparatus for item recommendation using automated collaborative filtering |
US6146026A (en) | 1996-12-27 | 2000-11-14 | Canon Kabushiki Kaisha | System and apparatus for selectively publishing electronic-mail |
US20010025253A1 (en) | 2000-02-08 | 2001-09-27 | Massmedium. Com | Multi-level award program |
US20010042087A1 (en) | 1998-04-17 | 2001-11-15 | Jeffrey Owen Kephart | An automated assistant for organizing electronic documents |
US20010047290A1 (en) | 2000-02-10 | 2001-11-29 | Petras Gregory J. | System for creating and maintaining a database of information utilizing user opinions |
US20020010746A1 (en) | 2000-02-14 | 2002-01-24 | Jilk David J. | System, method, apparatus and computer program product for operating a web site by electronic mail |
US20020049793A1 (en) | 2000-10-20 | 2002-04-25 | Akihiro Okumura | Electronic mail transfer apparatus and electronic mail apparatus |
US6385611B1 (en) | 1999-05-07 | 2002-05-07 | Carlos Cardona | System and method for database retrieval, indexing and statistical analysis |
US20020070953A1 (en) | 2000-05-04 | 2002-06-13 | Barg Timothy A. | Systems and methods for visualizing and analyzing conditioned data |
US20020105545A1 (en) | 2000-11-10 | 2002-08-08 | John Carter | Method and apparatus for automatic conversion of electronic mail to an internet web site |
US20030028525A1 (en) | 2001-08-01 | 2003-02-06 | Santos Richard A. | System for and method of determining and using subject matter experts in a forum environment |
US20030078959A1 (en) | 2001-10-18 | 2003-04-24 | Wilson Yeung | Deployment of business logic software and data content onto network servers |
US20030128203A1 (en) | 2002-01-04 | 2003-07-10 | Marshall Carl S. | Determining a node path through a node graph |
US20030135565A1 (en) | 2002-01-14 | 2003-07-17 | Julio Estrada | Electronic mail application with integrated collaborative space management |
US20030225850A1 (en) | 2002-05-28 | 2003-12-04 | Teague Alan H. | Message processing based on address patterns |
US6684239B1 (en) | 2000-05-16 | 2004-01-27 | At&T Corp. | System and method for automatically publishing electronic mail messages on the internet |
US6742032B1 (en) | 1999-12-17 | 2004-05-25 | Xerox Corporation | Method for monitoring and encouraging community activity in a networked environment |
US20040174397A1 (en) | 2003-03-05 | 2004-09-09 | Paul Cereghini | Integration of visualizations, reports, and data |
US20050060643A1 (en) | 2003-08-25 | 2005-03-17 | Miavia, Inc. | Document similarity detection and classification system |
US6871232B2 (en) | 2001-03-06 | 2005-03-22 | International Business Machines Corporation | Method and system for third party resource provisioning management |
US20050132348A1 (en) | 2003-12-15 | 2005-06-16 | Meulemans Michael E. | System and method for managing and communicating software updates |
US20050206644A1 (en) | 2003-04-04 | 2005-09-22 | Robert Kincaid | Systems, tools and methods for focus and context viewving of large collections of graphs |
US20060010215A1 (en) | 2004-05-29 | 2006-01-12 | Clegg Paul J | Managing connections and messages at a server by associating different actions for both different senders and different recipients |
US20060036685A1 (en) | 2004-07-30 | 2006-02-16 | Microsoft Corporation | Suggesting a discussion group based on indexing of the posts within that discussion group |
US7032030B1 (en) | 1999-03-11 | 2006-04-18 | John David Codignotto | Message publishing system and method |
US20060129602A1 (en) | 2004-12-15 | 2006-06-15 | Microsoft Corporation | Enable web sites to receive and process e-mail |
US20060143307A1 (en) | 1999-03-11 | 2006-06-29 | John Codignotto | Message publishing system |
US20060155581A1 (en) | 2005-01-10 | 2006-07-13 | George Eisenberger | Systems with user selectable data attributes for automated electronic search, identification and publication of relevant data from electronic data records at multiple data sources |
US20060206578A1 (en) | 2005-03-11 | 2006-09-14 | Niklas Heidloff | Publication to shared content sources using natural language electronic mail destination addresses and interest profiles registered by the shared content sources |
US20070083536A1 (en) | 2005-10-07 | 2007-04-12 | Darnell Benjamin G | Indirect subscriptions to a user's selected content feed items |
US7222156B2 (en) | 2001-01-25 | 2007-05-22 | Microsoft Corporation | Integrating collaborative messaging into an electronic mail program |
US20070136354A1 (en) | 2005-12-10 | 2007-06-14 | International Business Machines Corporation | System and method for importing content into a content management system using an e-mail application |
US20070171716A1 (en) | 2005-11-30 | 2007-07-26 | William Wright | System and method for visualizing configurable analytical spaces in time for diagrammatic context representations |
US20070282800A1 (en) | 2006-06-05 | 2007-12-06 | Laurence England | Method and data processing system for managing user roles |
US20070286528A1 (en) | 2006-06-12 | 2007-12-13 | D&S Consultants, Inc. | System and Method for Searching a Multimedia Database using a Pictorial Language |
US20080005284A1 (en) | 2006-06-29 | 2008-01-03 | The Trustees Of The University Of Pennsylvania | Method and Apparatus For Publishing Textual Information To A Web Page |
US20080034058A1 (en) | 2006-08-01 | 2008-02-07 | Marchex, Inc. | Method and system for populating resources using web feeds |
US20080033776A1 (en) | 2006-05-24 | 2008-02-07 | Archetype Media, Inc. | System and method of storing data related to social publishers and associating the data with electronic brand data |
US20080040673A1 (en) | 2006-08-11 | 2008-02-14 | Mark Zuckerberg | System and method for dynamically providing a news feed about a user of a social network |
US20080103906A1 (en) | 2006-10-26 | 2008-05-01 | Gurvinder Singh | Online publishing of multimedia content |
US20080109245A1 (en) | 2006-11-03 | 2008-05-08 | Sezwho Inc. | Method and system for managing domain specific and viewer specific reputation on online communities |
US20080109491A1 (en) | 2006-11-03 | 2008-05-08 | Sezwho Inc. | Method and system for managing reputation profile on online communities |
US20080120379A1 (en) | 2001-06-25 | 2008-05-22 | Malik Dale W | System and method for sorting e-mail |
US20080126476A1 (en) | 2004-08-04 | 2008-05-29 | Nicholas Frank C | Method and System for the Creating, Managing, and Delivery of Enhanced Feed Formatted Content |
US20080133488A1 (en) | 2006-11-22 | 2008-06-05 | Nagaraju Bandaru | Method and system for analyzing user-generated content |
US20080178125A1 (en) | 2007-01-23 | 2008-07-24 | Microsoft Corporation | Providing dynamic content in a user interface in an application |
US7409710B1 (en) | 2003-10-14 | 2008-08-05 | Sun Microsystems, Inc. | Method and system for dynamically generating a web-based user interface |
US20080189406A1 (en) | 2007-02-05 | 2008-08-07 | Jian Shen | System and method of a peer-to-peer web service monitoring network |
US20080215591A1 (en) | 2006-11-06 | 2008-09-04 | Robert Howard | Email interface for weblog entries |
US20080221870A1 (en) | 2007-03-08 | 2008-09-11 | Yahoo! Inc. | System and method for revising natural language parse trees |
US20080263603A1 (en) | 2007-04-19 | 2008-10-23 | Youbiquity, Llc | User interface architecture for an electronic content asset publication system |
US20080294680A1 (en) | 2007-05-22 | 2008-11-27 | Dominic George Thomas Powell | Data Navigation Module, Apparatus and Method |
US20080306830A1 (en) | 2007-06-07 | 2008-12-11 | Cliquality, Llc | System for rating quality of online visitors |
US20090013043A1 (en) | 2004-07-30 | 2009-01-08 | Thirdsight Pte. Ltd. | Method of populating a collaborative workspace and a system for providing the same |
US20090043852A1 (en) | 2007-08-06 | 2009-02-12 | International Business Machines Corporation | System and method for collaboration |
US20090089657A1 (en) | 1999-05-21 | 2009-04-02 | E-Numerate Solutions, Inc. | Reusable data markup language |
WO2009047674A2 (en) | 2007-10-08 | 2009-04-16 | Koninklijke Philips Electronics N.V. | Generating metadata for association with a collection of content items |
US20090106080A1 (en) | 2007-10-22 | 2009-04-23 | Carrier Scott R | System and method for managing a survey for a community development asset |
US20090132311A1 (en) | 2007-11-20 | 2009-05-21 | Theresa Klinger | Method and System for Monetizing User-Generated Content |
US20090138472A1 (en) | 2005-04-01 | 2009-05-28 | Wine Science Ltd. | Method of Supplying Information Articles at a Website and a System for Supplying Such Articles |
US20090144723A1 (en) | 2007-11-30 | 2009-06-04 | Microsoft Corporation | Dynamic Updateable Web Toolbar |
US20090157667A1 (en) | 2007-12-12 | 2009-06-18 | Brougher William C | Reputation of an Author of Online Content |
US20090157899A1 (en) | 2007-12-13 | 2009-06-18 | Highwinds Holdings, Inc. | Content delivery network |
US20090157708A1 (en) | 2003-09-22 | 2009-06-18 | Jean-Christophe Denis Bandini | Delay technique in e-mail filtering system |
US20090158265A1 (en) | 2007-12-13 | 2009-06-18 | Matthew Fenton Davis | Implementation of advanced endpoint functions within third party software by using a plug-in approach |
US20090177670A1 (en) | 2008-01-09 | 2009-07-09 | Keibi Technologies, Inc. | Classification of digital content by using aggregate scoring |
US20090181649A1 (en) | 2008-01-10 | 2009-07-16 | Bull William E | Dynamic Delivery and Presentation of Electronic Data to Mobile Electronic Devices |
US20090210282A1 (en) | 2008-02-11 | 2009-08-20 | Clearshift Corporation | Online Work Management System with Job Division Support |
US20090249451A1 (en) | 2008-03-31 | 2009-10-01 | Yahoo!, Inc. | Access to Trusted User-Generated Content Using Social Networks |
US7606865B2 (en) | 2002-11-29 | 2009-10-20 | Grouptivity | Collaboration system and method |
US20090292722A1 (en) | 2008-05-22 | 2009-11-26 | Yahoo! Inc. | Real time expert dialog service |
US20090300036A1 (en) | 2008-06-03 | 2009-12-03 | Sony Corporation | Information processing device, information processing method, and program |
US7644057B2 (en) | 2001-01-03 | 2010-01-05 | International Business Machines Corporation | System and method for electronic communication management |
US20100082503A1 (en) | 2008-09-29 | 2010-04-01 | Yahoo! Inc. | Estimating on-line advertising inventory value based on contract eligibility information |
US7702541B2 (en) | 2000-08-01 | 2010-04-20 | Yahoo! Inc. | Targeted e-commerce system |
US20100106730A1 (en) | 2007-04-30 | 2010-04-29 | Aminian Mehdi | Method of intermediation within a social network of users of a service/application to expose relevant media items |
US20100121843A1 (en) | 2008-11-13 | 2010-05-13 | Buzzient, Inc. | Website network and advertisement analysis using analytic measurement of online social media content |
US7725492B2 (en) | 2005-12-23 | 2010-05-25 | Facebook, Inc. | Managing information about relationships in a social network via a social timeline |
US20100169148A1 (en) | 2008-12-31 | 2010-07-01 | International Business Machines Corporation | Interaction solutions for customer support |
US7751620B1 (en) | 2007-01-25 | 2010-07-06 | Bitdefender IPR Management Ltd. | Image spam filtering systems and methods |
US7756926B2 (en) | 2006-08-16 | 2010-07-13 | Tagged, Inc. | User created tags for online social networking |
US20100205663A1 (en) | 2006-05-05 | 2010-08-12 | Visible Technologies Llc | Systems and methods for consumer-generated media reputation management |
US20100223341A1 (en) | 2009-02-27 | 2010-09-02 | Microsoft Corporation | Electronic messaging tailored to user interest |
US20100250683A1 (en) | 2009-03-30 | 2010-09-30 | International Business Machines Corporation | Automatic conversion of email threads into collaborative workspaces |
US20100246797A1 (en) | 2009-03-26 | 2010-09-30 | Avaya Inc. | Social network urgent communication monitor and real-time call launch system |
US7818758B2 (en) | 2002-01-18 | 2010-10-19 | Mobitv, Inc. | Efficient multi-protocol software architecture with shared resources for different applications |
US20100274732A1 (en) | 2006-03-29 | 2010-10-28 | Grinchenko Pavlo O | Processes for verifying creators of works represented in an electronic catalog |
US20100287512A1 (en) | 2009-05-06 | 2010-11-11 | Gan jeff | Visual hierarchy explorer |
US20100306122A1 (en) | 2009-05-29 | 2010-12-02 | Cisco Technology,Inc. | System and Method for Providing an Electronic Literature Club in a Network Environment |
US20100312769A1 (en) | 2009-06-09 | 2010-12-09 | Bailey Edward J | Methods, apparatus and software for analyzing the content of micro-blog messages |
US20110004922A1 (en) | 2009-07-01 | 2011-01-06 | Microsoft Corporation | User Specified Privacy Settings |
US20110055217A1 (en) | 2009-08-31 | 2011-03-03 | Accenture Global Services Gmbh | System to modify websites for organic search optimization |
US20110055264A1 (en) | 2009-08-28 | 2011-03-03 | Microsoft Corporation | Data mining organization communications |
US20110077988A1 (en) | 2009-04-12 | 2011-03-31 | Cates Thomas M | Emotivity and Vocality Measurement |
CN102054033A (en) | 2010-12-25 | 2011-05-11 | 百度在线网络技术(北京)有限公司 | Expression search engine, expression management system using same and expression management method |
US20110113041A1 (en) | 2008-10-17 | 2011-05-12 | Louis Hawthorne | System and method for content identification and customization based on weighted recommendation scores |
US20110119593A1 (en) | 2009-11-16 | 2011-05-19 | Xobni Corporation | Collecting and presenting data including links from communications sent to or from a user |
US20110125826A1 (en) | 2009-11-20 | 2011-05-26 | Avaya Inc. | Stalking social media users to maximize the likelihood of immediate engagement |
US20110144801A1 (en) | 2009-12-14 | 2011-06-16 | Edwin Selker | Vending Machine |
US20110153603A1 (en) | 2009-12-17 | 2011-06-23 | Yahoo! Inc. | Time series storage for large-scale monitoring system |
US20110197146A1 (en) | 2010-02-08 | 2011-08-11 | Samuel Shoji Fukujima Goto | Assisting The Authoring Of Posts To An Asymmetric Social Network |
US8006187B1 (en) | 2007-02-10 | 2011-08-23 | Adobe Systems Incorporated | Checkpoint sequence fallout metrics management during path analysis |
US20110212430A1 (en) | 2009-09-02 | 2011-09-01 | Smithmier Donald E | Teaching and learning system |
US20110219087A1 (en) | 2008-01-18 | 2011-09-08 | Craig Jorasch | Systems and methods for webpage creation and updating |
US8027931B2 (en) | 2008-06-26 | 2011-09-27 | Yahoo! Inc. | Automated friend finder |
US20110246513A1 (en) | 2006-01-03 | 2011-10-06 | Edward Covannon | System and method for generating a work of communication with supplemental context |
US20110289574A1 (en) | 2004-01-29 | 2011-11-24 | Hull Mark E | Social network with multiple logins |
US8082308B1 (en) | 2006-12-04 | 2011-12-20 | Andrey Filev | Online collaboration and planning system transparently integrated with e-mail |
US20120036080A1 (en) | 2009-04-06 | 2012-02-09 | Tracx Systems Ltd. | Method and system for tracking online social interactions |
US20120054135A1 (en) | 2010-08-30 | 2012-03-01 | Stratify, Inc. | Automated parsing of e-mail messages |
US8131745B1 (en) | 2007-04-09 | 2012-03-06 | Rapleaf, Inc. | Associating user identities with different unique identifiers |
US20120076367A1 (en) | 2010-09-24 | 2012-03-29 | Erick Tseng | Auto tagging in geo-social networking system |
US20120077158A1 (en) | 2010-09-28 | 2012-03-29 | Government Of The United States, As Represented By The Secretary Of The Air Force | Predictive Performance Optimizer |
US20120095861A1 (en) | 2010-10-15 | 2012-04-19 | At&T Intellectual Property I, L.P. | Personal customer care agent |
US20120102021A1 (en) | 2010-10-21 | 2012-04-26 | International Business Machines Corporation | Visual meme tracking for social media analysis |
US8171128B2 (en) | 2006-08-11 | 2012-05-01 | Facebook, Inc. | Communicating a newsfeed of media content based on a member's interactions in a social network environment |
US20120117059A1 (en) | 2010-11-09 | 2012-05-10 | Microsoft Corporation | Ranking Authors in Social Media Systems |
US8200527B1 (en) | 2007-04-25 | 2012-06-12 | Convergys Cmg Utah, Inc. | Method for prioritizing and presenting recommendations regarding organizaion's customer care capabilities |
US8225376B2 (en) | 2006-07-25 | 2012-07-17 | Facebook, Inc. | Dynamically generating a privacy summary |
US20120195422A1 (en) | 2011-02-01 | 2012-08-02 | Cisco Technology, Inc. | Routing contact center interactions |
US20120208568A1 (en) | 2008-12-03 | 2012-08-16 | Zumobi, Inc. | Systems and Methods for Remotely Controlling and Customizing Applications Resident on a Mobile Device |
US20120232953A1 (en) | 2011-03-08 | 2012-09-13 | Joseph Custer | System and Method for Tracking Merchant Performance Using Social Media |
US20120254321A1 (en) | 2011-04-04 | 2012-10-04 | Microsoft Corporation | Providing additional email content in an email client |
US8286154B2 (en) | 2006-03-22 | 2012-10-09 | Honeywell International Inc. | Apparatus and method for live loading of version upgrades in a process control environment |
US20120265806A1 (en) | 2011-04-13 | 2012-10-18 | Autonomy Corporation Ltd | Methods and systems for generating concept-based hash tags |
US20120271729A1 (en) | 2011-04-19 | 2012-10-25 | Perfect Commerce, LLC. | Method and System for Managing Sourcing Program Requests |
US20120284155A1 (en) | 2011-05-06 | 2012-11-08 | Center Consult Organizational Architecture B.V. | Data analysis system |
US20120290605A1 (en) | 2011-05-12 | 2012-11-15 | Microsoft Corporation | Identifying and recommending experts using shared queries and interactions |
US8321300B1 (en) | 2008-06-30 | 2012-11-27 | Bazaarvoice, Inc. | Method and system for distribution of user generated content |
US20120303659A1 (en) | 2011-05-24 | 2012-11-29 | Avaya Inc. | Social media identity discovery and mapping |
US20120317198A1 (en) | 2011-06-07 | 2012-12-13 | Banjo, Inc | Method for relevant content discovery |
US20130007121A1 (en) | 2011-06-29 | 2013-01-03 | International Business Machines Corporation | Predictive collaboration management |
US20130018957A1 (en) | 2011-07-14 | 2013-01-17 | Parnaby Tracey J | System and Method for Facilitating Management of Structured Sentiment Content |
US20130024522A1 (en) | 2011-07-22 | 2013-01-24 | Wall Street Network. Inc. | Email to Content Conversion and Publication System for Use in Knowledge Management Solutions |
US20130050747A1 (en) | 2011-08-31 | 2013-02-28 | Ronald Steven Cok | Automated photo-product specification method |
US20130066876A1 (en) | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Identifying unseen content of interest |
US20130110946A1 (en) | 2011-10-28 | 2013-05-02 | Blether Labs LLC | Ad hoc group chat using a social networking service |
US20130116044A1 (en) | 2011-11-03 | 2013-05-09 | Lawrence Schwartz | Network multi-player trivia-based game and contest |
US20130138428A1 (en) | 2010-01-07 | 2013-05-30 | The Trustees Of The Stevens Institute Of Technology | Systems and methods for automatically detecting deception in human communications expressed in digital form |
US20130159472A1 (en) | 2011-12-14 | 2013-06-20 | Level 3 Communications, Llc | Content delivery network |
US8505069B1 (en) | 2012-08-10 | 2013-08-06 | Kaspersky Lab Zao | System and method for updating authorized software |
US20130218801A1 (en) | 2012-02-01 | 2013-08-22 | Openonward, Llc | Method and system for grant management and funding |
US20130218865A1 (en) | 2012-02-21 | 2013-08-22 | Spotright, Inc. | Systems and methods for identifying and analyzing internet users |
US20130282417A1 (en) | 2012-04-20 | 2013-10-24 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
WO2013158839A1 (en) | 2012-04-20 | 2013-10-24 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
US20130291058A1 (en) | 2012-04-27 | 2013-10-31 | Klout, Inc. | Systems and methods for implementing custom privacy settings |
US20130298038A1 (en) | 2012-01-27 | 2013-11-07 | Bottlenose, Inc. | Trending of aggregated personalized information streams and multi-dimensional graphical depiction thereof |
US20130304758A1 (en) | 2012-05-14 | 2013-11-14 | Apple Inc. | Crowd Sourcing Information to Fulfill User Requests |
US20130304726A1 (en) | 2012-04-30 | 2013-11-14 | Ubervu Ltd. | Methods and systems useful for identifying the most influent social media users in query-based social data streams |
US20130318156A1 (en) | 2012-05-23 | 2013-11-28 | Klout, Inc. | Dynamic information streams in a social network platform |
US8606792B1 (en) | 2010-02-08 | 2013-12-10 | Google Inc. | Scoring authors of posts |
US8615442B1 (en) | 2009-12-15 | 2013-12-24 | Project Rover, Inc. | Personalized content delivery system |
US20140006524A1 (en) | 2012-06-29 | 2014-01-02 | International Business Machines Corporation | Enhancing posted content in discussion forums |
US20140032306A1 (en) | 2010-12-29 | 2014-01-30 | Christopher Sukornyk | System and method for real-time search re-targeting |
US20140047429A1 (en) | 2012-08-10 | 2014-02-13 | Adobe Systems Incorporated | Directing plug-in updates for a software application to a target audience using manifest parameters |
US20140067520A1 (en) | 2012-08-28 | 2014-03-06 | SmartBridge, LLC | Methods, Systems and Apparatuses for Analyzing and Comparing Performance of Marketing Channels in Integrated Marketing Campaigns |
US20140074844A1 (en) | 2012-09-09 | 2014-03-13 | Oracle International Corporation | Method and system for implementing semantic analysis of internal social network content |
US20140082072A1 (en) | 2012-09-17 | 2014-03-20 | Accenture Global Services Limited | Dynamic expert solicitation, collaboration and reputation management system |
US20140108675A1 (en) | 2010-04-09 | 2014-04-17 | Mobila, Inc. | Subscription-Based Dynamic Content Optimization |
US8752041B2 (en) | 2002-09-13 | 2014-06-10 | Ricoh Company, Ltd. | Image forming apparatus and methods used in the image forming apparatus |
US20140164352A1 (en) | 2012-11-20 | 2014-06-12 | Karl L. Denninghoff | Search and navigation to specific document content |
WO2014089460A2 (en) | 2012-12-07 | 2014-06-12 | Lithium Technologies, Inc. | Device, method and user interface for presenting analytic data |
US20140173501A1 (en) | 2012-12-07 | 2014-06-19 | Lithium Technologies, Inc. | Device, Method and User Interface for Presenting Analytic Data |
US20140181194A1 (en) | 2012-12-20 | 2014-06-26 | Daniel Sullivan | Advocacy retention scoring for online community advocacy management platform |
US8769417B1 (en) | 2010-08-31 | 2014-07-01 | Amazon Technologies, Inc. | Identifying an answer to a question in an electronic forum |
US20140184841A1 (en) | 2012-12-28 | 2014-07-03 | Samsung Electronics Co., Ltd. | Photographing device for producing composite image and method using the same |
US20140200989A1 (en) | 2013-01-15 | 2014-07-17 | Datorama Technologies, Ltd. | System and method for performing cross-platform big data analytics |
US20140222834A1 (en) | 2013-02-05 | 2014-08-07 | Nirmit Parikh | Content summarization and/or recommendation apparatus and method |
US20140244621A1 (en) | 2013-02-27 | 2014-08-28 | Facebook, Inc. | Ranking data items based on received input and user context information |
US8825515B1 (en) | 2011-10-27 | 2014-09-02 | PulsePopuli, LLC | Sentiment collection and association system |
US20140280113A1 (en) | 2013-03-14 | 2014-09-18 | Shutterstock, Inc. | Context based systems and methods for presenting media file annotation recommendations |
WO2014153463A2 (en) | 2013-03-21 | 2014-09-25 | Lithium Technologies, Inc. | Gamification for online social communities |
US20140298199A1 (en) | 2013-03-29 | 2014-10-02 | International Business Machines Corporation | User Collaboration for Answer Generation in Question and Answer System |
US20140304249A1 (en) | 2013-04-04 | 2014-10-09 | Evernote Corporation | Expert discovery via search in shared content |
US20140324902A1 (en) | 2013-04-25 | 2014-10-30 | Microsoft Corporation | Automatic generation of a collection of content |
US8892524B1 (en) | 2012-05-22 | 2014-11-18 | International Business Machines Corporation | Collection of data from collaboration platforms |
US20140358911A1 (en) | 2011-08-31 | 2014-12-04 | University College Dublin, National Uniaversity of Ireland | Search and discovery system |
US20150032492A1 (en) | 2013-07-24 | 2015-01-29 | Lithium Technologies, Inc. | Methods of Identifying Relevant Content and Subject Matter Expertise for Online Communities |
US20150032751A1 (en) | 2013-07-24 | 2015-01-29 | Lithium Technologies, Inc. | Methods and Systems for Utilizing Subject Matter Experts in an Online Community |
WO2015013436A2 (en) | 2013-07-24 | 2015-01-29 | Lithium Technologies, Inc. | Methods of identifying relevant content and subject matter expertise for online communities |
US20150039705A1 (en) | 2013-08-01 | 2015-02-05 | Jp Morgan Chase Bank, N.A. | Systems and methods for electronic message prioritization |
US8972428B2 (en) | 2010-08-31 | 2015-03-03 | Amazon Technologies, Inc. | Providing an answer to a question left unanswered in an electronic forum |
US20150100537A1 (en) | 2013-10-03 | 2015-04-09 | Microsoft Corporation | Emoji for Text Predictions |
US20150112918A1 (en) | 2012-03-17 | 2015-04-23 | Beijing Yidian Wangju Technology Co., Ltd. | Method and system for recommending content to a user |
US9021361B1 (en) | 2011-10-11 | 2015-04-28 | Google Inc. | System and method for flow visualization and interaction with network traffic |
US20150120713A1 (en) | 2013-10-25 | 2015-04-30 | Marketwire L.P. | Systems and Methods for Determining Influencers in a Social Data Network |
US20150127453A1 (en) | 2013-11-04 | 2015-05-07 | Meemo, Llc | Word recognition and ideograph or in-app advertising system |
US20150134457A1 (en) | 2012-02-02 | 2015-05-14 | Wishabi Inc. | Dynamic digital flyer system |
US20150170294A1 (en) | 2013-12-17 | 2015-06-18 | Adobe Systems Incorporated | Method and apparatus for scheduling multiple social media posts to maximize engagement and on-site activity |
US20150193504A1 (en) | 2011-11-14 | 2015-07-09 | Google Inc. | Data Processing Service |
US9143478B2 (en) | 2009-11-08 | 2015-09-22 | Venkat Ramaswamy | Email with social attributes |
US20150312200A1 (en) | 2014-04-28 | 2015-10-29 | Elwha LLC, a limited liability company of the State of Delaware | Methods, systems, and devices for outcome prediction of text submission to network based on corpora analysis |
US20150310018A1 (en) | 2013-03-15 | 2015-10-29 | Yahoo! Inc | Social Media Based Content Selection System |
US20150381552A1 (en) | 2014-06-30 | 2015-12-31 | Ravi Kiran Holur Vijay | Personalized delivery time optimization |
US9229702B1 (en) | 2013-08-28 | 2016-01-05 | Lithium Technologies, Inc. | Systems and methods for application plugin deployment for websites |
US20160057576A1 (en) | 2014-08-21 | 2016-02-25 | ARC10 Technologies Inc. | Systems and methods for connecting and communicating with others in a mobile device environment |
US20160073166A1 (en) | 2014-09-05 | 2016-03-10 | Verizon Patent And Licensing Inc. | Methods and Systems for Identifying a Media Program Clip Associated With a Trending Topic |
US20160080445A1 (en) * | 2014-09-15 | 2016-03-17 | Edgecast Networks, Inc. | Multi-Tenant Over-The-Top Multicast |
US9311683B1 (en) | 2012-04-25 | 2016-04-12 | Microstrategy Incorporated | Measuring engagement with a social networking platform |
US20160110688A1 (en) | 2007-02-02 | 2016-04-21 | Leydig, Voit & Mayer, Ltd. | Case management system |
US20160125157A1 (en) | 2014-10-30 | 2016-05-05 | Lithium Technologies, Inc. | Systems and Methods to Monitor Health of Online Social Communities |
US20160132904A1 (en) | 2013-05-31 | 2016-05-12 | Hewlett-Packard Development Company, L.P. | Influence score of a brand |
US20160134580A1 (en) | 2012-11-01 | 2016-05-12 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for providing near real-time predicted engagement level feedback to a user composing a social media message |
US20160147760A1 (en) | 2014-11-26 | 2016-05-26 | Adobe Systems Incorporated | Providing alternate words to aid in drafting effective social media posts |
US20160151704A1 (en) | 2013-03-21 | 2016-06-02 | Lithium Technologies, Inc. | Gamification for Online Social Communities |
US9378295B1 (en) | 2012-12-26 | 2016-06-28 | Google Inc. | Clustering content based on anticipated content trend topics |
US20160203221A1 (en) | 2014-09-12 | 2016-07-14 | Lithium Technologies, Inc. | System and apparatus for an application agnostic user search engine |
US20160203523A1 (en) | 2014-02-21 | 2016-07-14 | Lithium Technologies, Inc. | Domain generic large scale topic expertise and interest mining across multiple online social networks |
US20160210555A1 (en) | 2012-12-20 | 2016-07-21 | Robert W. Lange | Dynamic model data facility and automated operational model building and usage |
US20160321694A1 (en) | 2014-05-07 | 2016-11-03 | Yandex Europe Ag | Apparatus and method of selection and placement of targeted messages into a search engine result page |
US20160321261A1 (en) | 2015-05-02 | 2016-11-03 | Lithium Technologies, Inc. | System and method of providing a content discovery platform for optimizing social network engagements |
US20160321562A1 (en) | 2015-04-29 | 2016-11-03 | InsideSales.com, Inc. | Enhancement of Machine Learning Techniques for an Electronic Message System |
US20160320926A1 (en) | 2014-05-22 | 2016-11-03 | Yandex Europe Ag | E-mail interface and method for processing user interactions with email messages |
US20160335572A1 (en) | 2015-05-15 | 2016-11-17 | Microsoft Technology Licensing, Llc | Management of commitments and requests extracted from communications and content |
US9509742B2 (en) * | 2014-10-29 | 2016-11-29 | DLVR, Inc. | Configuring manifest files referencing infrastructure service providers for adaptive streaming video |
US20160352667A1 (en) | 2015-06-01 | 2016-12-01 | Facebook, Inc. | Providing augmented message elements in electronic communication threads |
US9519723B2 (en) | 2012-09-18 | 2016-12-13 | Adobe Systems Incorporated | Aggregating electronic content items from different sources |
US9596206B2 (en) | 2012-10-09 | 2017-03-14 | Facebook, Inc. | In-line images in messages |
US20180053114A1 (en) | 2014-10-23 | 2018-02-22 | Brighterion, Inc. | Artificial intelligence for context classifier |
US20180091468A1 (en) | 2016-09-26 | 2018-03-29 | Facebook, Inc. | Indicating Live Videos for Trending Topics on Online Social Networks |
US20180144389A1 (en) | 2016-11-22 | 2018-05-24 | Paul Fredrich | Adaptive scheduling of electronic messaging based on predictive consumption of the sampling of items via a networked computing platform |
US20180152471A1 (en) | 2016-11-30 | 2018-05-31 | Agari Data, Inc. | Detecting computer security risk based on previously observed communications |
US20180219830A1 (en) | 2017-01-30 | 2018-08-02 | HubSpot Inc. | Introducing a new message source into an electronic message delivery environment |
US10084838B2 (en) * | 2014-10-29 | 2018-09-25 | DLVR, Inc. | Generating and using manifest files including content delivery network authentication data |
US20180329565A1 (en) | 2015-12-23 | 2018-11-15 | Intel Corporation | Touch gesture detection assessment |
US10142386B2 (en) * | 2014-10-29 | 2018-11-27 | DLVR, Inc. | Determining manifest file data used in adaptive streaming video delivery |
US20180367484A1 (en) | 2017-06-15 | 2018-12-20 | Google Inc. | Suggested items for use with embedded applications in chat conversations |
US20190116137A1 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Optimizing effectiveness of content in electronic messages among a system of networked computing device |
WO2019075284A2 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Predicting performance of content and electronic messages among a system of networked computing devices |
US20190116148A1 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Computerized tools to enhance speed and propagation of content in electronic messages among a system of networked computing devices |
US20190114356A1 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Predicting performance of content and electronic messages among a system of networked computing devices |
US20190158610A1 (en) | 2017-11-22 | 2019-05-23 | Spredfast, Inc. | Responsive action prediction based on electronic messages among a system of networked computing devices |
WO2019144159A1 (en) | 2018-01-22 | 2019-07-25 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US20190228093A1 (en) | 2018-01-22 | 2019-07-25 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
Family Cites Families (151)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9900305B2 (en) | 1998-01-12 | 2018-02-20 | Soverain Ip, Llc | Internet server access control and monitoring systems |
US6157955A (en) | 1998-06-15 | 2000-12-05 | Intel Corporation | Packet processing system including a policy engine having a classification unit |
US6226752B1 (en) | 1999-05-11 | 2001-05-01 | Sun Microsystems, Inc. | Method and apparatus for authenticating users |
US7031952B1 (en) | 1999-10-08 | 2006-04-18 | Knowledge Filter, Inc. | Knowledge filter |
US6675211B1 (en) | 2000-01-21 | 2004-01-06 | At&T Wireless Services, Inc. | System and method for adjusting the traffic carried by a network |
US9514459B1 (en) | 2000-03-24 | 2016-12-06 | Emc Corporation | Identity broker tools and techniques for use with forward proxy computers |
US7168094B1 (en) | 2000-12-29 | 2007-01-23 | Intralinks, Inc. | Method and system for managing access to information and the transfer thereof |
US7290283B2 (en) | 2001-01-31 | 2007-10-30 | Lancope, Inc. | Network port profiling |
US7370351B1 (en) | 2001-03-22 | 2008-05-06 | Novell, Inc. | Cross domain authentication and security services using proxies for HTTP access |
US7792948B2 (en) | 2001-03-30 | 2010-09-07 | Bmc Software, Inc. | Method and system for collecting, aggregating and viewing performance data on a site-wide basis |
US7246230B2 (en) | 2002-01-29 | 2007-07-17 | Bea Systems, Inc. | Single sign-on over the internet using public-key cryptography |
JP3780507B2 (en) | 2002-03-14 | 2006-05-31 | 日本アイ・ビー・エム株式会社 | Session information takeover method, application server, Web site, and program |
US7191467B1 (en) | 2002-03-15 | 2007-03-13 | Microsoft Corporation | Method and system of integrating third party authentication into internet browser code |
KR100613316B1 (en) | 2002-04-26 | 2006-08-21 | 인터내셔널 비지네스 머신즈 코포레이션 | Identity management system using single sign-on |
US7899915B2 (en) | 2002-05-10 | 2011-03-01 | Richard Reisman | Method and apparatus for browsing using multiple coordinated device sets |
US7373662B2 (en) | 2002-08-27 | 2008-05-13 | Hewlett-Packard Development Company, L.P. | Secure resource access |
US20040049673A1 (en) | 2002-09-05 | 2004-03-11 | Docomo Communications Laboratories Usa, Inc. | Apparatus and method for a personal cookie repository service for cookie management among multiple devices |
US7158985B1 (en) * | 2003-04-09 | 2007-01-02 | Cisco Technology, Inc. | Method and apparatus for efficient propagation of large datasets under failure conditions |
US7707039B2 (en) | 2004-02-15 | 2010-04-27 | Exbiblio B.V. | Automatic modification of web pages |
US20120210119A1 (en) | 2004-06-14 | 2012-08-16 | Arthur Baxter | Method and Apparatus for Secure Internet Browsing |
US7454623B2 (en) | 2004-06-16 | 2008-11-18 | Blame Canada Holdings Inc | Distributed hierarchical identity management system authentication mechanisms |
US8744937B2 (en) | 2005-02-25 | 2014-06-03 | Sap Ag | Consistent set of interfaces derived from a business object model |
US8903949B2 (en) * | 2005-04-27 | 2014-12-02 | International Business Machines Corporation | Systems and methods of specifying service level criteria |
US20060294196A1 (en) | 2005-06-27 | 2006-12-28 | Elie Feirouz | Method and system for storing a web browser application session cookie from another client application program |
KR100572478B1 (en) * | 2005-10-13 | 2006-04-18 | 주식회사 케이티 | Method and system for providing multimedia content to multiple clients |
US20070220029A1 (en) | 2006-03-17 | 2007-09-20 | Novell, Inc. | System and method for hierarchical storage management using shadow volumes |
US20070226177A1 (en) | 2006-03-23 | 2007-09-27 | International Business Machines Corporation | Evaluating a current partitioning of a database |
US7720777B2 (en) | 2006-04-11 | 2010-05-18 | Palo Alto Research Center Incorporated | Method, device, and program product to monitor the social health of a persistent virtual environment |
US8437369B2 (en) | 2006-05-19 | 2013-05-07 | Integrated Device Technology, Inc. | Packets transfer device that intelligently accounts for variable egress channel widths when scheduling use of dispatch bus by egressing packet streams |
CN101094226B (en) * | 2006-06-19 | 2011-11-09 | 华为技术有限公司 | Security framework of managing network, and information processing method |
US7697558B2 (en) | 2007-03-13 | 2010-04-13 | Alcatel Lucent | Emergency alert system enhancement using alert server and metro ATM network for DSL deployment |
GB0710845D0 (en) | 2007-06-06 | 2007-07-18 | Crisp Thinking Ltd | Communication system |
EP2238777B1 (en) | 2008-01-16 | 2023-10-25 | BlackBerry Limited | Secured presentation layer virtualization for wireless handheld communication device |
US11087261B1 (en) | 2008-03-14 | 2021-08-10 | DataInfoCom USA Inc. | Apparatus, system and method for processing, analyzing or displaying data related to performance metrics |
US8468382B2 (en) * | 2008-05-08 | 2013-06-18 | Elektrobit Wireless Communications Oy | Methods and equipment for fault tolerant IP service |
US20090292608A1 (en) | 2008-05-22 | 2009-11-26 | Ruth Polachek | Method and system for user interaction with advertisements sharing, rating of and interacting with online advertisements |
US20100071052A1 (en) | 2008-09-13 | 2010-03-18 | Microsoft Corporation | Reverse proxy architecture |
KR101074624B1 (en) | 2008-11-03 | 2011-10-17 | 엔에이치엔비즈니스플랫폼 주식회사 | Method and system for protecting abusinng based browser |
EP2359283A1 (en) * | 2008-11-17 | 2011-08-24 | Medicalgorithmics Ltd. | Outpatient monitoring systems and methods |
US8219638B2 (en) | 2008-12-15 | 2012-07-10 | Google Inc. | Editing information configured for use in selecting content regarding at least one content provider |
US20100257117A1 (en) | 2009-04-03 | 2010-10-07 | Bulloons.Com Ltd. | Predictions based on analysis of online electronic messages |
US8621011B2 (en) | 2009-05-12 | 2013-12-31 | Avaya Inc. | Treatment of web feeds as work assignment in a contact center |
US8856869B1 (en) | 2009-06-22 | 2014-10-07 | NexWavSec Software Inc. | Enforcement of same origin policy for sensitive data |
US9684683B2 (en) | 2010-02-09 | 2017-06-20 | Siemens Aktiengesellschaft | Semantic search tool for document tagging, indexing and search |
US8756684B2 (en) | 2010-03-01 | 2014-06-17 | Emc Corporation | System and method for network security including detection of attacks through partner websites |
US8590014B1 (en) | 2010-09-13 | 2013-11-19 | Zynga Inc. | Network application security utilizing network-provided identities |
US9143633B2 (en) | 2010-10-12 | 2015-09-22 | Lexmark International Technology S.A. | Browser-based scanning utility |
US8689297B2 (en) | 2010-11-19 | 2014-04-01 | Blackberry Limited | System, devices and method for secure authentication |
US9779423B2 (en) | 2010-11-29 | 2017-10-03 | Biocatch Ltd. | Device, system, and method of generating and managing behavioral biometric cookies |
US20120150759A1 (en) | 2010-12-09 | 2012-06-14 | Yahoo! Inc. | Non-gaming on-line achievement awards |
US8473437B2 (en) | 2010-12-17 | 2013-06-25 | Microsoft Corporation | Information propagation probability for a social network |
US8688949B2 (en) | 2011-02-01 | 2014-04-01 | Cleversafe, Inc. | Modifying data storage in response to detection of a memory system imbalance |
US9165134B2 (en) | 2011-03-08 | 2015-10-20 | Telefonica, S.A. | Method for providing authorized access to a service application in order to use a protected resource of an end user |
US8544069B1 (en) | 2011-04-29 | 2013-09-24 | Intuit Inc. | Methods systems and articles of manufacture for implementing user access to remote resources |
US9314699B2 (en) | 2011-07-01 | 2016-04-19 | Baydin, Inc. | Systems and methods for applying game mechanics to the completion of tasks by users |
US20130091266A1 (en) * | 2011-10-05 | 2013-04-11 | Ajit Bhave | System for organizing and fast searching of massive amounts of data |
US20130126042A1 (en) * | 2011-11-21 | 2013-05-23 | Brian Dale DEWALD | Apparatus for dispensing and/or vending a bulk product and improvements therein |
US9325696B1 (en) | 2012-01-31 | 2016-04-26 | Google Inc. | System and method for authenticating to a participating website using locally stored credentials |
US8904018B2 (en) | 2012-02-01 | 2014-12-02 | International Business Machines Corporation | Browser start pages based on remote content |
JP2013164822A (en) | 2012-02-13 | 2013-08-22 | Fujitsu Ltd | Load threshold value calculating program, load threshold value calculating device, and load threshold value calculating method |
US9299168B2 (en) | 2012-03-06 | 2016-03-29 | Apple Inc. | Context aware user interface for image editing |
US9253176B2 (en) | 2012-04-27 | 2016-02-02 | Intralinks, Inc. | Computerized method and system for managing secure content sharing in a networked secure collaborative exchange environment |
US9251360B2 (en) | 2012-04-27 | 2016-02-02 | Intralinks, Inc. | Computerized method and system for managing secure mobile device content viewing in a networked secure collaborative exchange environment |
AU2013251304B2 (en) | 2012-04-27 | 2018-12-20 | Intralinks, Inc. | Computerized method and system for managing networked secure collaborative exchange |
US20130332262A1 (en) | 2012-06-11 | 2013-12-12 | John Hunt | Internet marketing-advertising reporting (iMar) system |
US20130332263A1 (en) | 2012-06-12 | 2013-12-12 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for publishing a marketing campaign using an online social network |
CN104428734A (en) * | 2012-06-25 | 2015-03-18 | 微软公司 | Input method editor application platform |
US9461876B2 (en) | 2012-08-29 | 2016-10-04 | Loci | System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction |
US9959548B2 (en) | 2012-08-31 | 2018-05-01 | Sprinklr, Inc. | Method and system for generating social signal vocabularies |
US9424432B2 (en) * | 2012-09-20 | 2016-08-23 | Nasdaq, Inc. | Systems and methods for secure and persistent retention of sensitive information |
US9501746B2 (en) | 2012-11-05 | 2016-11-22 | Astra Identity, Inc. | Systems and methods for electronic message analysis |
US9374369B2 (en) | 2012-12-28 | 2016-06-21 | Lookout, Inc. | Multi-factor authentication and comprehensive login system for client-server networks |
US9317522B2 (en) | 2013-01-07 | 2016-04-19 | Google Inc. | Saving files from third-party systems directly to a cloud storage system |
US9027097B2 (en) | 2013-02-06 | 2015-05-05 | Dropbox, Inc. | Client application assisted automatic user log in |
US9282098B1 (en) | 2013-03-11 | 2016-03-08 | Amazon Technologies, Inc. | Proxy server-based network site account management |
US10200351B2 (en) | 2013-03-14 | 2019-02-05 | Google Llc | System for managing remote software applications |
CN103177095B (en) | 2013-03-15 | 2015-12-02 | 成都三零凯天通信实业有限公司 | A kind of built-in browser and its implementation |
US10204026B2 (en) | 2013-03-15 | 2019-02-12 | Uda, Llc | Realtime data stream cluster summarization and labeling system |
US20140280398A1 (en) | 2013-03-15 | 2014-09-18 | Miosoft Corporation | Distributed database management |
US9104848B2 (en) | 2013-05-08 | 2015-08-11 | International Business Machines Corporation | Cross-platform authentication from within a rich client |
US10498841B2 (en) | 2013-06-26 | 2019-12-03 | International Business Machines Corporation | Determining the health of a network community |
US10838926B2 (en) | 2013-10-01 | 2020-11-17 | Sap Se | Transparent access to multi-temperature data |
WO2015074033A1 (en) * | 2013-11-18 | 2015-05-21 | Madhav Mutalik | Copy data techniques |
US9529848B2 (en) | 2013-12-06 | 2016-12-27 | Vmware, Inc. | Predictive query result computation |
US9258294B2 (en) | 2013-12-31 | 2016-02-09 | Cellco Partnership | Remote authentication method with single sign on credentials |
WO2015130700A1 (en) | 2014-02-26 | 2015-09-03 | Secureauth Corporation | Security object creation, validation, and assertion for single sign on authentication |
US20150281227A1 (en) | 2014-03-31 | 2015-10-01 | Symple ID Inc. | System and method for two factor user authentication using a smartphone and nfc token and for the automatic generation as well as storing and inputting of logins for websites and web applications |
US9646055B2 (en) | 2014-04-03 | 2017-05-09 | Facebook, Inc. | Blending search results on online social networks |
US9369284B2 (en) | 2014-04-03 | 2016-06-14 | Google Inc. | Browser based identity with multiple login |
US20150295869A1 (en) | 2014-04-14 | 2015-10-15 | Microsoft Corporation | Filtering Electronic Messages |
US20150309985A1 (en) | 2014-04-28 | 2015-10-29 | Elwha Llc | Methods, systems, and devices for machines and machine states that facilitate modification of documents based on various corpora |
US20150310020A1 (en) | 2014-04-28 | 2015-10-29 | Elwha LLC, a limited liability company of the State of Delaware | Methods, systems, and devices for outcome prediction of text submission to network based on corpora analysis |
WO2015183692A1 (en) | 2014-05-27 | 2015-12-03 | AVG Netherlands B.V. | Browser store administering method and system |
US9131382B1 (en) | 2014-05-30 | 2015-09-08 | Sap Se | Trusted user interface for mobile web applications |
US20160019628A1 (en) | 2014-07-16 | 2016-01-21 | My Virtual Mall, LLC | Method, system, and article for facilitating online commerce |
US20160021097A1 (en) | 2014-07-18 | 2016-01-21 | Avaya Inc. | Facilitating network authentication |
CN105335411A (en) | 2014-07-31 | 2016-02-17 | 国际商业机器公司 | Method and system for data processing |
US10394851B2 (en) | 2014-08-07 | 2019-08-27 | Cortical.Io Ag | Methods and systems for mapping data items to sparse distributed representations |
US20160055250A1 (en) | 2014-08-19 | 2016-02-25 | Earshot, Inc. | Real Time Relevancy Scoring System for Social Media Posts |
US20160055541A1 (en) | 2014-08-21 | 2016-02-25 | Everyday Health Inc. | Personalized recommendation system and methods using automatic identification of user preferences |
US9286102B1 (en) * | 2014-11-05 | 2016-03-15 | Vmware, Inc. | Desktop image management for hosted hypervisor environments |
US20160212100A1 (en) | 2015-01-21 | 2016-07-21 | Onion ID, Inc. | Transparent proxy system with automated supplemental authentication for protected access resources |
CN105991589B (en) | 2015-02-13 | 2019-04-26 | 华为技术有限公司 | A kind of method, apparatus and system for redirection |
US10505885B2 (en) | 2015-02-27 | 2019-12-10 | Microsoft Technology Licensing, Llc | Intelligent messaging |
US10079792B2 (en) | 2015-03-13 | 2018-09-18 | International Business Machines Corporation | Recommending hashtags to be used in composed message to increase propagation speed and enhance desired sentiment of composed message |
US10188905B2 (en) * | 2015-04-07 | 2019-01-29 | Tri2Focus, Inc. | System for processing exertion data derived from exertion detection devices |
US20160345074A1 (en) * | 2015-05-21 | 2016-11-24 | Viviso Inc. | Apparatus and Method for Replacing Conventional Commercials with Targeted Advertisements in Online Live Streams |
CA2990952A1 (en) | 2015-07-03 | 2017-01-12 | Intersective Pty Ltd | A system and a method for monitoring progress of a learner through an experiential learning cycle |
US10051001B1 (en) | 2015-07-31 | 2018-08-14 | Palo Alto Networks, Inc. | Efficient and secure user credential store for credentials enforcement using a firewall |
WO2017027767A1 (en) | 2015-08-12 | 2017-02-16 | Interactive Intelligence Group, Inc. | System and method for determining window geomtery |
US10198667B2 (en) | 2015-09-02 | 2019-02-05 | Pocketguardian, Llc | System and method of detecting offensive content sent or received on a portable electronic device |
US10417180B1 (en) * | 2015-09-23 | 2019-09-17 | EMC IP Holding Company, LLC | Fast recovery of backup cloud gateway following crash without garbage collection |
US10277928B1 (en) * | 2015-10-06 | 2019-04-30 | Amazon Technologies, Inc. | Dynamic manifests for media content playback |
US11392582B2 (en) | 2015-10-15 | 2022-07-19 | Sumo Logic, Inc. | Automatic partitioning |
US10755303B2 (en) | 2015-11-30 | 2020-08-25 | Oath Inc. | Generating actionable suggestions for improving user engagement with online advertisements |
CN108781175B (en) | 2015-12-21 | 2021-09-21 | 谷歌有限责任公司 | Method, medium, and system for automatic suggestion of message exchange contexts |
US20170193546A1 (en) | 2015-12-30 | 2017-07-06 | Rovi Guides, Inc. | Methods and systems for determining advertising reach based on machine learning |
US11019101B2 (en) | 2016-03-11 | 2021-05-25 | Netskope, Inc. | Middle ware security layer for cloud computing services |
US11210279B2 (en) | 2016-04-15 | 2021-12-28 | Apple Inc. | Distributed offline indexing |
US9838376B1 (en) | 2016-05-11 | 2017-12-05 | Oracle International Corporation | Microservices based multi-tenant identity and data security management cloud service |
US10269804B2 (en) * | 2016-05-11 | 2019-04-23 | Micron Technology, Inc. | Array of cross point memory cells and methods of forming an array of cross point memory cells |
US20170344748A1 (en) | 2016-05-31 | 2017-11-30 | Umm-Al-Qura University | Intelligent Secure Social Media Based Event Management System |
US10277929B1 (en) * | 2016-06-22 | 2019-04-30 | Amazon Technologies, Inc. | Live streaming media content using on-demand manifests |
US10178173B2 (en) * | 2016-08-02 | 2019-01-08 | International Business Machines Corporation | Cloud service utilization |
US10530578B2 (en) | 2016-08-05 | 2020-01-07 | Oracle International Corporation | Key store service |
US10445395B2 (en) | 2016-09-16 | 2019-10-15 | Oracle International Corporation | Cookie based state propagation for a multi-tenant identity cloud service |
US10284723B1 (en) | 2016-12-23 | 2019-05-07 | Noble Systems Corporation | Managing multiple agent communication sessions in a contact center |
JP2018110389A (en) * | 2017-01-05 | 2018-07-12 | 華碩電腦股▲ふん▼有限公司 | Device and method for determining numerology in wireless communication system |
US20180211285A1 (en) | 2017-01-20 | 2018-07-26 | Paypal, Inc. | System and method for learning from engagement levels for presenting tailored information |
US10733378B2 (en) | 2017-03-17 | 2020-08-04 | Baydin, Inc. | Analysis of message quality in a networked computer system |
US10841364B2 (en) | 2017-03-27 | 2020-11-17 | International Business Machines Corporation | Using and comparing known and current activity states to determine receptiveness |
US20180295137A1 (en) | 2017-04-06 | 2018-10-11 | Iconix, Inc. | Techniques for dynamic authentication in connection within applications and sessions |
US10904639B1 (en) * | 2017-04-24 | 2021-01-26 | Amazon Technologies, Inc. | Server-side fragment insertion and delivery |
US10902462B2 (en) | 2017-04-28 | 2021-01-26 | Khoros, Llc | System and method of providing a platform for managing data content campaign on social networks |
US11388155B2 (en) | 2017-05-16 | 2022-07-12 | Softex, Inc. | Integrated cybersecurity system and method for providing restricted client access to a website |
US10778615B2 (en) | 2017-05-18 | 2020-09-15 | Assurant, Inc. | Apparatus and method for relativistic event perception prediction and content creation |
US10474805B2 (en) | 2017-08-17 | 2019-11-12 | Blackberry Limited | Methods and devices for accessing protected applications |
US11470161B2 (en) | 2018-10-11 | 2022-10-11 | Spredfast, Inc. | Native activity tracking using credential and authentication management in scalable data networks |
US10999278B2 (en) | 2018-10-11 | 2021-05-04 | Spredfast, Inc. | Proxied multi-factor authentication using credential and authentication management in scalable data networks |
US10785222B2 (en) | 2018-10-11 | 2020-09-22 | Spredfast, Inc. | Credential and authentication management in scalable data networks |
US10368333B2 (en) | 2017-11-20 | 2019-07-30 | Google Llc | Dynamically adapting provision of notification output to reduce user distraction and/or mitigate usage of computational resources |
US10594773B2 (en) | 2018-01-22 | 2020-03-17 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US10742513B2 (en) | 2018-02-05 | 2020-08-11 | David I-Keong Wong | Network interconnect as a switch |
US20190306248A1 (en) | 2018-04-02 | 2019-10-03 | Ca, Inc. | Session verification using updated session chain values |
US10672330B2 (en) | 2018-05-14 | 2020-06-02 | International Business Machines Corporation | Display region filtering based on priority |
US10764273B2 (en) | 2018-06-28 | 2020-09-01 | Oracle International Corporation | Session synchronization across multiple devices in an identity cloud service |
US11005851B2 (en) | 2018-08-09 | 2021-05-11 | Camelot Uk Bidco Limited | Retrieving digital content over a network |
US11190502B2 (en) | 2018-09-20 | 2021-11-30 | Microsoft Technology Licensing, Llc. | Automated single sign-on configuration for service providers |
US11354400B2 (en) | 2018-10-01 | 2022-06-07 | Citrix Systems, Inc. | Systems and methods for offline usage of SaaS applications |
US10855657B2 (en) | 2018-10-11 | 2020-12-01 | Spredfast, Inc. | Multiplexed data exchange portal interface in scalable data networks |
US10931540B2 (en) | 2019-05-15 | 2021-02-23 | Khoros, Llc | Continuous data sensing of functional states of networked computing devices to determine efficiency metrics for servicing electronic messages asynchronously |
-
2018
- 2018-01-22 US US15/877,379 patent/US10594773B2/en active Active
-
2020
- 2020-03-16 US US16/820,697 patent/US11102271B2/en active Active
-
2021
- 2021-05-28 US US17/334,135 patent/US11496545B2/en active Active
Patent Citations (260)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6041311A (en) | 1995-06-30 | 2000-03-21 | Microsoft Corporation | Method and apparatus for item recommendation using automated collaborative filtering |
US6146026A (en) | 1996-12-27 | 2000-11-14 | Canon Kabushiki Kaisha | System and apparatus for selectively publishing electronic-mail |
US20010042087A1 (en) | 1998-04-17 | 2001-11-15 | Jeffrey Owen Kephart | An automated assistant for organizing electronic documents |
US20060143307A1 (en) | 1999-03-11 | 2006-06-29 | John Codignotto | Message publishing system |
US7032030B1 (en) | 1999-03-11 | 2006-04-18 | John David Codignotto | Message publishing system and method |
US6385611B1 (en) | 1999-05-07 | 2002-05-07 | Carlos Cardona | System and method for database retrieval, indexing and statistical analysis |
US20090089657A1 (en) | 1999-05-21 | 2009-04-02 | E-Numerate Solutions, Inc. | Reusable data markup language |
US6742032B1 (en) | 1999-12-17 | 2004-05-25 | Xerox Corporation | Method for monitoring and encouraging community activity in a networked environment |
US20010025253A1 (en) | 2000-02-08 | 2001-09-27 | Massmedium. Com | Multi-level award program |
US20010047290A1 (en) | 2000-02-10 | 2001-11-29 | Petras Gregory J. | System for creating and maintaining a database of information utilizing user opinions |
US20020010746A1 (en) | 2000-02-14 | 2002-01-24 | Jilk David J. | System, method, apparatus and computer program product for operating a web site by electronic mail |
US20020070953A1 (en) | 2000-05-04 | 2002-06-13 | Barg Timothy A. | Systems and methods for visualizing and analyzing conditioned data |
US6684239B1 (en) | 2000-05-16 | 2004-01-27 | At&T Corp. | System and method for automatically publishing electronic mail messages on the internet |
US7702541B2 (en) | 2000-08-01 | 2010-04-20 | Yahoo! Inc. | Targeted e-commerce system |
US20020049793A1 (en) | 2000-10-20 | 2002-04-25 | Akihiro Okumura | Electronic mail transfer apparatus and electronic mail apparatus |
US20020105545A1 (en) | 2000-11-10 | 2002-08-08 | John Carter | Method and apparatus for automatic conversion of electronic mail to an internet web site |
US7644057B2 (en) | 2001-01-03 | 2010-01-05 | International Business Machines Corporation | System and method for electronic communication management |
US7222156B2 (en) | 2001-01-25 | 2007-05-22 | Microsoft Corporation | Integrating collaborative messaging into an electronic mail program |
US6871232B2 (en) | 2001-03-06 | 2005-03-22 | International Business Machines Corporation | Method and system for third party resource provisioning management |
US20080120379A1 (en) | 2001-06-25 | 2008-05-22 | Malik Dale W | System and method for sorting e-mail |
US20030028525A1 (en) | 2001-08-01 | 2003-02-06 | Santos Richard A. | System for and method of determining and using subject matter experts in a forum environment |
US20030078959A1 (en) | 2001-10-18 | 2003-04-24 | Wilson Yeung | Deployment of business logic software and data content onto network servers |
US20030128203A1 (en) | 2002-01-04 | 2003-07-10 | Marshall Carl S. | Determining a node path through a node graph |
US20030135565A1 (en) | 2002-01-14 | 2003-07-17 | Julio Estrada | Electronic mail application with integrated collaborative space management |
US7818758B2 (en) | 2002-01-18 | 2010-10-19 | Mobitv, Inc. | Efficient multi-protocol software architecture with shared resources for different applications |
US20030225850A1 (en) | 2002-05-28 | 2003-12-04 | Teague Alan H. | Message processing based on address patterns |
US8752041B2 (en) | 2002-09-13 | 2014-06-10 | Ricoh Company, Ltd. | Image forming apparatus and methods used in the image forming apparatus |
US7606865B2 (en) | 2002-11-29 | 2009-10-20 | Grouptivity | Collaboration system and method |
US20040174397A1 (en) | 2003-03-05 | 2004-09-09 | Paul Cereghini | Integration of visualizations, reports, and data |
US20050206644A1 (en) | 2003-04-04 | 2005-09-22 | Robert Kincaid | Systems, tools and methods for focus and context viewving of large collections of graphs |
US20050060643A1 (en) | 2003-08-25 | 2005-03-17 | Miavia, Inc. | Document similarity detection and classification system |
US20090157708A1 (en) | 2003-09-22 | 2009-06-18 | Jean-Christophe Denis Bandini | Delay technique in e-mail filtering system |
US7409710B1 (en) | 2003-10-14 | 2008-08-05 | Sun Microsystems, Inc. | Method and system for dynamically generating a web-based user interface |
US20050132348A1 (en) | 2003-12-15 | 2005-06-16 | Meulemans Michael E. | System and method for managing and communicating software updates |
US20110289574A1 (en) | 2004-01-29 | 2011-11-24 | Hull Mark E | Social network with multiple logins |
US20060010215A1 (en) | 2004-05-29 | 2006-01-12 | Clegg Paul J | Managing connections and messages at a server by associating different actions for both different senders and different recipients |
US20090013043A1 (en) | 2004-07-30 | 2009-01-08 | Thirdsight Pte. Ltd. | Method of populating a collaborative workspace and a system for providing the same |
US20060036685A1 (en) | 2004-07-30 | 2006-02-16 | Microsoft Corporation | Suggesting a discussion group based on indexing of the posts within that discussion group |
US20080126476A1 (en) | 2004-08-04 | 2008-05-29 | Nicholas Frank C | Method and System for the Creating, Managing, and Delivery of Enhanced Feed Formatted Content |
US20060129602A1 (en) | 2004-12-15 | 2006-06-15 | Microsoft Corporation | Enable web sites to receive and process e-mail |
US20060155581A1 (en) | 2005-01-10 | 2006-07-13 | George Eisenberger | Systems with user selectable data attributes for automated electronic search, identification and publication of relevant data from electronic data records at multiple data sources |
US20060206578A1 (en) | 2005-03-11 | 2006-09-14 | Niklas Heidloff | Publication to shared content sources using natural language electronic mail destination addresses and interest profiles registered by the shared content sources |
US20090138472A1 (en) | 2005-04-01 | 2009-05-28 | Wine Science Ltd. | Method of Supplying Information Articles at a Website and a System for Supplying Such Articles |
US20070083536A1 (en) | 2005-10-07 | 2007-04-12 | Darnell Benjamin G | Indirect subscriptions to a user's selected content feed items |
US20070171716A1 (en) | 2005-11-30 | 2007-07-26 | William Wright | System and method for visualizing configurable analytical spaces in time for diagrammatic context representations |
US20070136354A1 (en) | 2005-12-10 | 2007-06-14 | International Business Machines Corporation | System and method for importing content into a content management system using an e-mail application |
US7725492B2 (en) | 2005-12-23 | 2010-05-25 | Facebook, Inc. | Managing information about relationships in a social network via a social timeline |
US20110246513A1 (en) | 2006-01-03 | 2011-10-06 | Edward Covannon | System and method for generating a work of communication with supplemental context |
US8286154B2 (en) | 2006-03-22 | 2012-10-09 | Honeywell International Inc. | Apparatus and method for live loading of version upgrades in a process control environment |
US20100274732A1 (en) | 2006-03-29 | 2010-10-28 | Grinchenko Pavlo O | Processes for verifying creators of works represented in an electronic catalog |
US20100205663A1 (en) | 2006-05-05 | 2010-08-12 | Visible Technologies Llc | Systems and methods for consumer-generated media reputation management |
US20080033776A1 (en) | 2006-05-24 | 2008-02-07 | Archetype Media, Inc. | System and method of storing data related to social publishers and associating the data with electronic brand data |
US20070282800A1 (en) | 2006-06-05 | 2007-12-06 | Laurence England | Method and data processing system for managing user roles |
US20070286528A1 (en) | 2006-06-12 | 2007-12-13 | D&S Consultants, Inc. | System and Method for Searching a Multimedia Database using a Pictorial Language |
US20080005284A1 (en) | 2006-06-29 | 2008-01-03 | The Trustees Of The University Of Pennsylvania | Method and Apparatus For Publishing Textual Information To A Web Page |
US8225376B2 (en) | 2006-07-25 | 2012-07-17 | Facebook, Inc. | Dynamically generating a privacy summary |
US20080034058A1 (en) | 2006-08-01 | 2008-02-07 | Marchex, Inc. | Method and system for populating resources using web feeds |
US8171128B2 (en) | 2006-08-11 | 2012-05-01 | Facebook, Inc. | Communicating a newsfeed of media content based on a member's interactions in a social network environment |
US20080040673A1 (en) | 2006-08-11 | 2008-02-14 | Mark Zuckerberg | System and method for dynamically providing a news feed about a user of a social network |
US7756926B2 (en) | 2006-08-16 | 2010-07-13 | Tagged, Inc. | User created tags for online social networking |
US20080103906A1 (en) | 2006-10-26 | 2008-05-01 | Gurvinder Singh | Online publishing of multimedia content |
US20080109491A1 (en) | 2006-11-03 | 2008-05-08 | Sezwho Inc. | Method and system for managing reputation profile on online communities |
US20080109245A1 (en) | 2006-11-03 | 2008-05-08 | Sezwho Inc. | Method and system for managing domain specific and viewer specific reputation on online communities |
US20080215591A1 (en) | 2006-11-06 | 2008-09-04 | Robert Howard | Email interface for weblog entries |
US20080133488A1 (en) | 2006-11-22 | 2008-06-05 | Nagaraju Bandaru | Method and system for analyzing user-generated content |
US8082308B1 (en) | 2006-12-04 | 2011-12-20 | Andrey Filev | Online collaboration and planning system transparently integrated with e-mail |
US20080178125A1 (en) | 2007-01-23 | 2008-07-24 | Microsoft Corporation | Providing dynamic content in a user interface in an application |
US7751620B1 (en) | 2007-01-25 | 2010-07-06 | Bitdefender IPR Management Ltd. | Image spam filtering systems and methods |
US20160110688A1 (en) | 2007-02-02 | 2016-04-21 | Leydig, Voit & Mayer, Ltd. | Case management system |
US20080189406A1 (en) | 2007-02-05 | 2008-08-07 | Jian Shen | System and method of a peer-to-peer web service monitoring network |
US8006187B1 (en) | 2007-02-10 | 2011-08-23 | Adobe Systems Incorporated | Checkpoint sequence fallout metrics management during path analysis |
US20080221870A1 (en) | 2007-03-08 | 2008-09-11 | Yahoo! Inc. | System and method for revising natural language parse trees |
US8131745B1 (en) | 2007-04-09 | 2012-03-06 | Rapleaf, Inc. | Associating user identities with different unique identifiers |
US20080263603A1 (en) | 2007-04-19 | 2008-10-23 | Youbiquity, Llc | User interface architecture for an electronic content asset publication system |
US8200527B1 (en) | 2007-04-25 | 2012-06-12 | Convergys Cmg Utah, Inc. | Method for prioritizing and presenting recommendations regarding organizaion's customer care capabilities |
US20100106730A1 (en) | 2007-04-30 | 2010-04-29 | Aminian Mehdi | Method of intermediation within a social network of users of a service/application to expose relevant media items |
US20080294680A1 (en) | 2007-05-22 | 2008-11-27 | Dominic George Thomas Powell | Data Navigation Module, Apparatus and Method |
US20080306830A1 (en) | 2007-06-07 | 2008-12-11 | Cliquality, Llc | System for rating quality of online visitors |
US20090043852A1 (en) | 2007-08-06 | 2009-02-12 | International Business Machines Corporation | System and method for collaboration |
WO2009047674A2 (en) | 2007-10-08 | 2009-04-16 | Koninklijke Philips Electronics N.V. | Generating metadata for association with a collection of content items |
US20090106080A1 (en) | 2007-10-22 | 2009-04-23 | Carrier Scott R | System and method for managing a survey for a community development asset |
US20090132311A1 (en) | 2007-11-20 | 2009-05-21 | Theresa Klinger | Method and System for Monetizing User-Generated Content |
US20090144723A1 (en) | 2007-11-30 | 2009-06-04 | Microsoft Corporation | Dynamic Updateable Web Toolbar |
US20090157667A1 (en) | 2007-12-12 | 2009-06-18 | Brougher William C | Reputation of an Author of Online Content |
US20090157899A1 (en) | 2007-12-13 | 2009-06-18 | Highwinds Holdings, Inc. | Content delivery network |
US20090158265A1 (en) | 2007-12-13 | 2009-06-18 | Matthew Fenton Davis | Implementation of advanced endpoint functions within third party software by using a plug-in approach |
US8412657B2 (en) | 2008-01-09 | 2013-04-02 | Lithium Technologies, Inc. | Classification of digital content by using aggregate scoring |
US7979369B2 (en) | 2008-01-09 | 2011-07-12 | Keibi Technologies, Inc. | Classification of digital content by using aggregate scoring |
US8886580B2 (en) | 2008-01-09 | 2014-11-11 | Lithium Technologies, Inc. | Classification of digital content using aggregate scoring by a grid load balancer configured to assign content to different content analysis engines based on content identifications of a semantics processor |
US20130282722A1 (en) | 2008-01-09 | 2013-10-24 | Lithium Techologies, Inc. | Classification of digital content by using aggregate scoring |
US20090177670A1 (en) | 2008-01-09 | 2009-07-09 | Keibi Technologies, Inc. | Classification of digital content by using aggregate scoring |
US20120158632A1 (en) | 2008-01-09 | 2012-06-21 | Lithium Technologies, Inc | Classification of digital content by using aggregate scoring |
US20090181649A1 (en) | 2008-01-10 | 2009-07-16 | Bull William E | Dynamic Delivery and Presentation of Electronic Data to Mobile Electronic Devices |
US20110219087A1 (en) | 2008-01-18 | 2011-09-08 | Craig Jorasch | Systems and methods for webpage creation and updating |
US20090210282A1 (en) | 2008-02-11 | 2009-08-20 | Clearshift Corporation | Online Work Management System with Job Division Support |
US20090249451A1 (en) | 2008-03-31 | 2009-10-01 | Yahoo!, Inc. | Access to Trusted User-Generated Content Using Social Networks |
US20090292722A1 (en) | 2008-05-22 | 2009-11-26 | Yahoo! Inc. | Real time expert dialog service |
US20090300036A1 (en) | 2008-06-03 | 2009-12-03 | Sony Corporation | Information processing device, information processing method, and program |
US8027931B2 (en) | 2008-06-26 | 2011-09-27 | Yahoo! Inc. | Automated friend finder |
US8321300B1 (en) | 2008-06-30 | 2012-11-27 | Bazaarvoice, Inc. | Method and system for distribution of user generated content |
US20100082503A1 (en) | 2008-09-29 | 2010-04-01 | Yahoo! Inc. | Estimating on-line advertising inventory value based on contract eligibility information |
US20110113041A1 (en) | 2008-10-17 | 2011-05-12 | Louis Hawthorne | System and method for content identification and customization based on weighted recommendation scores |
US20100119053A1 (en) | 2008-11-13 | 2010-05-13 | Buzzient, Inc. | Analytic measurement of online social media content |
US20100121707A1 (en) | 2008-11-13 | 2010-05-13 | Buzzient, Inc. | Displaying analytic measurement of online social media content in a graphical user interface |
US20100121843A1 (en) | 2008-11-13 | 2010-05-13 | Buzzient, Inc. | Website network and advertisement analysis using analytic measurement of online social media content |
US20120208568A1 (en) | 2008-12-03 | 2012-08-16 | Zumobi, Inc. | Systems and Methods for Remotely Controlling and Customizing Applications Resident on a Mobile Device |
US20100169148A1 (en) | 2008-12-31 | 2010-07-01 | International Business Machines Corporation | Interaction solutions for customer support |
US20100223341A1 (en) | 2009-02-27 | 2010-09-02 | Microsoft Corporation | Electronic messaging tailored to user interest |
US20100246797A1 (en) | 2009-03-26 | 2010-09-30 | Avaya Inc. | Social network urgent communication monitor and real-time call launch system |
US20100250683A1 (en) | 2009-03-30 | 2010-09-30 | International Business Machines Corporation | Automatic conversion of email threads into collaborative workspaces |
US20120036080A1 (en) | 2009-04-06 | 2012-02-09 | Tracx Systems Ltd. | Method and system for tracking online social interactions |
US20110077988A1 (en) | 2009-04-12 | 2011-03-31 | Cates Thomas M | Emotivity and Vocality Measurement |
US20100287512A1 (en) | 2009-05-06 | 2010-11-11 | Gan jeff | Visual hierarchy explorer |
US20100306122A1 (en) | 2009-05-29 | 2010-12-02 | Cisco Technology,Inc. | System and Method for Providing an Electronic Literature Club in a Network Environment |
US20100312769A1 (en) | 2009-06-09 | 2010-12-09 | Bailey Edward J | Methods, apparatus and software for analyzing the content of micro-blog messages |
US20110004922A1 (en) | 2009-07-01 | 2011-01-06 | Microsoft Corporation | User Specified Privacy Settings |
US20110055264A1 (en) | 2009-08-28 | 2011-03-03 | Microsoft Corporation | Data mining organization communications |
US20110055217A1 (en) | 2009-08-31 | 2011-03-03 | Accenture Global Services Gmbh | System to modify websites for organic search optimization |
US20110212430A1 (en) | 2009-09-02 | 2011-09-01 | Smithmier Donald E | Teaching and learning system |
US9143478B2 (en) | 2009-11-08 | 2015-09-22 | Venkat Ramaswamy | Email with social attributes |
US20110119593A1 (en) | 2009-11-16 | 2011-05-19 | Xobni Corporation | Collecting and presenting data including links from communications sent to or from a user |
US20110125826A1 (en) | 2009-11-20 | 2011-05-26 | Avaya Inc. | Stalking social media users to maximize the likelihood of immediate engagement |
US20110144801A1 (en) | 2009-12-14 | 2011-06-16 | Edwin Selker | Vending Machine |
US8615442B1 (en) | 2009-12-15 | 2013-12-24 | Project Rover, Inc. | Personalized content delivery system |
US20110153603A1 (en) | 2009-12-17 | 2011-06-23 | Yahoo! Inc. | Time series storage for large-scale monitoring system |
US20130138428A1 (en) | 2010-01-07 | 2013-05-30 | The Trustees Of The Stevens Institute Of Technology | Systems and methods for automatically detecting deception in human communications expressed in digital form |
US8606792B1 (en) | 2010-02-08 | 2013-12-10 | Google Inc. | Scoring authors of posts |
US20110197146A1 (en) | 2010-02-08 | 2011-08-11 | Samuel Shoji Fukujima Goto | Assisting The Authoring Of Posts To An Asymmetric Social Network |
US20140108675A1 (en) | 2010-04-09 | 2014-04-17 | Mobila, Inc. | Subscription-Based Dynamic Content Optimization |
US20120054135A1 (en) | 2010-08-30 | 2012-03-01 | Stratify, Inc. | Automated parsing of e-mail messages |
US8972428B2 (en) | 2010-08-31 | 2015-03-03 | Amazon Technologies, Inc. | Providing an answer to a question left unanswered in an electronic forum |
US8769417B1 (en) | 2010-08-31 | 2014-07-01 | Amazon Technologies, Inc. | Identifying an answer to a question in an electronic forum |
US20120076367A1 (en) | 2010-09-24 | 2012-03-29 | Erick Tseng | Auto tagging in geo-social networking system |
US20120077158A1 (en) | 2010-09-28 | 2012-03-29 | Government Of The United States, As Represented By The Secretary Of The Air Force | Predictive Performance Optimizer |
US20120095861A1 (en) | 2010-10-15 | 2012-04-19 | At&T Intellectual Property I, L.P. | Personal customer care agent |
US20120102021A1 (en) | 2010-10-21 | 2012-04-26 | International Business Machines Corporation | Visual meme tracking for social media analysis |
US20120117059A1 (en) | 2010-11-09 | 2012-05-10 | Microsoft Corporation | Ranking Authors in Social Media Systems |
CN102054033A (en) | 2010-12-25 | 2011-05-11 | 百度在线网络技术(北京)有限公司 | Expression search engine, expression management system using same and expression management method |
US20140032306A1 (en) | 2010-12-29 | 2014-01-30 | Christopher Sukornyk | System and method for real-time search re-targeting |
US20120195422A1 (en) | 2011-02-01 | 2012-08-02 | Cisco Technology, Inc. | Routing contact center interactions |
US20120232953A1 (en) | 2011-03-08 | 2012-09-13 | Joseph Custer | System and Method for Tracking Merchant Performance Using Social Media |
US20120254321A1 (en) | 2011-04-04 | 2012-10-04 | Microsoft Corporation | Providing additional email content in an email client |
US20120265806A1 (en) | 2011-04-13 | 2012-10-18 | Autonomy Corporation Ltd | Methods and systems for generating concept-based hash tags |
US20120271729A1 (en) | 2011-04-19 | 2012-10-25 | Perfect Commerce, LLC. | Method and System for Managing Sourcing Program Requests |
US20120284155A1 (en) | 2011-05-06 | 2012-11-08 | Center Consult Organizational Architecture B.V. | Data analysis system |
US20120290605A1 (en) | 2011-05-12 | 2012-11-15 | Microsoft Corporation | Identifying and recommending experts using shared queries and interactions |
US20120303659A1 (en) | 2011-05-24 | 2012-11-29 | Avaya Inc. | Social media identity discovery and mapping |
US20120317198A1 (en) | 2011-06-07 | 2012-12-13 | Banjo, Inc | Method for relevant content discovery |
US20130007121A1 (en) | 2011-06-29 | 2013-01-03 | International Business Machines Corporation | Predictive collaboration management |
US20130018957A1 (en) | 2011-07-14 | 2013-01-17 | Parnaby Tracey J | System and Method for Facilitating Management of Structured Sentiment Content |
US20130024522A1 (en) | 2011-07-22 | 2013-01-24 | Wall Street Network. Inc. | Email to Content Conversion and Publication System for Use in Knowledge Management Solutions |
US20130050747A1 (en) | 2011-08-31 | 2013-02-28 | Ronald Steven Cok | Automated photo-product specification method |
US20140358911A1 (en) | 2011-08-31 | 2014-12-04 | University College Dublin, National Uniaversity of Ireland | Search and discovery system |
US20130066876A1 (en) | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Identifying unseen content of interest |
US9021361B1 (en) | 2011-10-11 | 2015-04-28 | Google Inc. | System and method for flow visualization and interaction with network traffic |
US8825515B1 (en) | 2011-10-27 | 2014-09-02 | PulsePopuli, LLC | Sentiment collection and association system |
US20130110946A1 (en) | 2011-10-28 | 2013-05-02 | Blether Labs LLC | Ad hoc group chat using a social networking service |
US20130116044A1 (en) | 2011-11-03 | 2013-05-09 | Lawrence Schwartz | Network multi-player trivia-based game and contest |
US20150193504A1 (en) | 2011-11-14 | 2015-07-09 | Google Inc. | Data Processing Service |
US20130159472A1 (en) | 2011-12-14 | 2013-06-20 | Level 3 Communications, Llc | Content delivery network |
US20130298038A1 (en) | 2012-01-27 | 2013-11-07 | Bottlenose, Inc. | Trending of aggregated personalized information streams and multi-dimensional graphical depiction thereof |
US20130218801A1 (en) | 2012-02-01 | 2013-08-22 | Openonward, Llc | Method and system for grant management and funding |
US20150134457A1 (en) | 2012-02-02 | 2015-05-14 | Wishabi Inc. | Dynamic digital flyer system |
US20130218865A1 (en) | 2012-02-21 | 2013-08-22 | Spotright, Inc. | Systems and methods for identifying and analyzing internet users |
US20150112918A1 (en) | 2012-03-17 | 2015-04-23 | Beijing Yidian Wangju Technology Co., Ltd. | Method and system for recommending content to a user |
US20130282594A1 (en) | 2012-04-20 | 2013-10-24 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
US20130282603A1 (en) | 2012-04-20 | 2013-10-24 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
US20130282417A1 (en) | 2012-04-20 | 2013-10-24 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
US9141997B2 (en) | 2012-04-20 | 2015-09-22 | Lithium Technologies Inc. | System and method for providing a social customer care system |
US20140278785A1 (en) | 2012-04-20 | 2014-09-18 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
WO2013158839A1 (en) | 2012-04-20 | 2013-10-24 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
US9483802B2 (en) | 2012-04-20 | 2016-11-01 | Lithium Technologies, Inc. | System and method for providing a social customer care system |
US9311683B1 (en) | 2012-04-25 | 2016-04-12 | Microstrategy Incorporated | Measuring engagement with a social networking platform |
US9338186B2 (en) | 2012-04-27 | 2016-05-10 | Lithium Technologies, Inc. | Systems and methods for implementing custom privacy settings |
US20130291058A1 (en) | 2012-04-27 | 2013-10-31 | Klout, Inc. | Systems and methods for implementing custom privacy settings |
US20130304726A1 (en) | 2012-04-30 | 2013-11-14 | Ubervu Ltd. | Methods and systems useful for identifying the most influent social media users in query-based social data streams |
US20130304758A1 (en) | 2012-05-14 | 2013-11-14 | Apple Inc. | Crowd Sourcing Information to Fulfill User Requests |
US8892524B1 (en) | 2012-05-22 | 2014-11-18 | International Business Machines Corporation | Collection of data from collaboration platforms |
US20130318156A1 (en) | 2012-05-23 | 2013-11-28 | Klout, Inc. | Dynamic information streams in a social network platform |
US20140040377A1 (en) | 2012-05-23 | 2014-02-06 | Klout, Inc. | Dynamic information streams in a social network platform |
US20140006524A1 (en) | 2012-06-29 | 2014-01-02 | International Business Machines Corporation | Enhancing posted content in discussion forums |
US8505069B1 (en) | 2012-08-10 | 2013-08-06 | Kaspersky Lab Zao | System and method for updating authorized software |
US20140047429A1 (en) | 2012-08-10 | 2014-02-13 | Adobe Systems Incorporated | Directing plug-in updates for a software application to a target audience using manifest parameters |
US20140067520A1 (en) | 2012-08-28 | 2014-03-06 | SmartBridge, LLC | Methods, Systems and Apparatuses for Analyzing and Comparing Performance of Marketing Channels in Integrated Marketing Campaigns |
US20140074844A1 (en) | 2012-09-09 | 2014-03-13 | Oracle International Corporation | Method and system for implementing semantic analysis of internal social network content |
US20140082072A1 (en) | 2012-09-17 | 2014-03-20 | Accenture Global Services Limited | Dynamic expert solicitation, collaboration and reputation management system |
US9519723B2 (en) | 2012-09-18 | 2016-12-13 | Adobe Systems Incorporated | Aggregating electronic content items from different sources |
US9596206B2 (en) | 2012-10-09 | 2017-03-14 | Facebook, Inc. | In-line images in messages |
US20160134580A1 (en) | 2012-11-01 | 2016-05-12 | Salesforce.Com, Inc. | Computer implemented methods and apparatus for providing near real-time predicted engagement level feedback to a user composing a social media message |
US20140164352A1 (en) | 2012-11-20 | 2014-06-12 | Karl L. Denninghoff | Search and navigation to specific document content |
WO2014089460A2 (en) | 2012-12-07 | 2014-06-12 | Lithium Technologies, Inc. | Device, method and user interface for presenting analytic data |
US20140173501A1 (en) | 2012-12-07 | 2014-06-19 | Lithium Technologies, Inc. | Device, Method and User Interface for Presenting Analytic Data |
US20140173444A1 (en) | 2012-12-07 | 2014-06-19 | Lithium Technologies, Inc. | Device, Method and User Interface for Displaying Relationships between Different Sets of Data |
US20140181728A1 (en) | 2012-12-07 | 2014-06-26 | Lithium Technologies, Inc. | Device, Method and User Interface for Switching between Graphical Representations of Data |
US20140173509A1 (en) | 2012-12-07 | 2014-06-19 | Lithium Technologies, Inc. | Device, Method and User Interface for Emphasizing Divisions in Data |
US20140181087A1 (en) | 2012-12-07 | 2014-06-26 | Lithium Technologies, Inc. | Device, Method and User Interface for Determining a Correlation between a Received Sequence of Numbers and Data that Corresponds to Metrics |
US9619531B2 (en) | 2012-12-07 | 2017-04-11 | Lithium Technologies, Inc. | Device, method and user interface for determining a correlation between a received sequence of numbers and data that corresponds to metrics |
US20160210555A1 (en) | 2012-12-20 | 2016-07-21 | Robert W. Lange | Dynamic model data facility and automated operational model building and usage |
US20140181194A1 (en) | 2012-12-20 | 2014-06-26 | Daniel Sullivan | Advocacy retention scoring for online community advocacy management platform |
US9378295B1 (en) | 2012-12-26 | 2016-06-28 | Google Inc. | Clustering content based on anticipated content trend topics |
US20140184841A1 (en) | 2012-12-28 | 2014-07-03 | Samsung Electronics Co., Ltd. | Photographing device for producing composite image and method using the same |
US20140200989A1 (en) | 2013-01-15 | 2014-07-17 | Datorama Technologies, Ltd. | System and method for performing cross-platform big data analytics |
US20140222834A1 (en) | 2013-02-05 | 2014-08-07 | Nirmit Parikh | Content summarization and/or recommendation apparatus and method |
US20140244621A1 (en) | 2013-02-27 | 2014-08-28 | Facebook, Inc. | Ranking data items based on received input and user context information |
US20140280113A1 (en) | 2013-03-14 | 2014-09-18 | Shutterstock, Inc. | Context based systems and methods for presenting media file annotation recommendations |
US20150310018A1 (en) | 2013-03-15 | 2015-10-29 | Yahoo! Inc | Social Media Based Content Selection System |
US9105044B2 (en) | 2013-03-21 | 2015-08-11 | Lithium Technologies, Inc. | Gamification for online social communities |
WO2014153463A2 (en) | 2013-03-21 | 2014-09-25 | Lithium Technologies, Inc. | Gamification for online social communities |
US20160132973A1 (en) | 2013-03-21 | 2016-05-12 | Lithium Technologies, Inc. | Gamification for Online Social Communities |
US20140289034A1 (en) | 2013-03-21 | 2014-09-25 | Michael Wu | Systems and Methods for Assisting Users with Contact, Access, and Distribution Lists |
US20160151704A1 (en) | 2013-03-21 | 2016-06-02 | Lithium Technologies, Inc. | Gamification for Online Social Communities |
US20140298199A1 (en) | 2013-03-29 | 2014-10-02 | International Business Machines Corporation | User Collaboration for Answer Generation in Question and Answer System |
US20140304249A1 (en) | 2013-04-04 | 2014-10-09 | Evernote Corporation | Expert discovery via search in shared content |
US20140324902A1 (en) | 2013-04-25 | 2014-10-30 | Microsoft Corporation | Automatic generation of a collection of content |
US20160132904A1 (en) | 2013-05-31 | 2016-05-12 | Hewlett-Packard Development Company, L.P. | Influence score of a brand |
US20150032492A1 (en) | 2013-07-24 | 2015-01-29 | Lithium Technologies, Inc. | Methods of Identifying Relevant Content and Subject Matter Expertise for Online Communities |
WO2015013436A2 (en) | 2013-07-24 | 2015-01-29 | Lithium Technologies, Inc. | Methods of identifying relevant content and subject matter expertise for online communities |
US20150032751A1 (en) | 2013-07-24 | 2015-01-29 | Lithium Technologies, Inc. | Methods and Systems for Utilizing Subject Matter Experts in an Online Community |
US20150039705A1 (en) | 2013-08-01 | 2015-02-05 | Jp Morgan Chase Bank, N.A. | Systems and methods for electronic message prioritization |
US9229702B1 (en) | 2013-08-28 | 2016-01-05 | Lithium Technologies, Inc. | Systems and methods for application plugin deployment for websites |
US20150100537A1 (en) | 2013-10-03 | 2015-04-09 | Microsoft Corporation | Emoji for Text Predictions |
US20150120713A1 (en) | 2013-10-25 | 2015-04-30 | Marketwire L.P. | Systems and Methods for Determining Influencers in a Social Data Network |
US20150127453A1 (en) | 2013-11-04 | 2015-05-07 | Meemo, Llc | Word recognition and ideograph or in-app advertising system |
US20150170294A1 (en) | 2013-12-17 | 2015-06-18 | Adobe Systems Incorporated | Method and apparatus for scheduling multiple social media posts to maximize engagement and on-site activity |
US20160203523A1 (en) | 2014-02-21 | 2016-07-14 | Lithium Technologies, Inc. | Domain generic large scale topic expertise and interest mining across multiple online social networks |
US20150312200A1 (en) | 2014-04-28 | 2015-10-29 | Elwha LLC, a limited liability company of the State of Delaware | Methods, systems, and devices for outcome prediction of text submission to network based on corpora analysis |
US20160321694A1 (en) | 2014-05-07 | 2016-11-03 | Yandex Europe Ag | Apparatus and method of selection and placement of targeted messages into a search engine result page |
US20160320926A1 (en) | 2014-05-22 | 2016-11-03 | Yandex Europe Ag | E-mail interface and method for processing user interactions with email messages |
US20150381552A1 (en) | 2014-06-30 | 2015-12-31 | Ravi Kiran Holur Vijay | Personalized delivery time optimization |
US20160057576A1 (en) | 2014-08-21 | 2016-02-25 | ARC10 Technologies Inc. | Systems and methods for connecting and communicating with others in a mobile device environment |
US20160073166A1 (en) | 2014-09-05 | 2016-03-10 | Verizon Patent And Licensing Inc. | Methods and Systems for Identifying a Media Program Clip Associated With a Trending Topic |
US20160203221A1 (en) | 2014-09-12 | 2016-07-14 | Lithium Technologies, Inc. | System and apparatus for an application agnostic user search engine |
US9756098B2 (en) * | 2014-09-15 | 2017-09-05 | Verizon Digital Media Services Inc. | Multi-tenant over-the-top multicast |
US20160080445A1 (en) * | 2014-09-15 | 2016-03-17 | Edgecast Networks, Inc. | Multi-Tenant Over-The-Top Multicast |
US20180053114A1 (en) | 2014-10-23 | 2018-02-22 | Brighterion, Inc. | Artificial intelligence for context classifier |
US10084838B2 (en) * | 2014-10-29 | 2018-09-25 | DLVR, Inc. | Generating and using manifest files including content delivery network authentication data |
US9509742B2 (en) * | 2014-10-29 | 2016-11-29 | DLVR, Inc. | Configuring manifest files referencing infrastructure service providers for adaptive streaming video |
US10142386B2 (en) * | 2014-10-29 | 2018-11-27 | DLVR, Inc. | Determining manifest file data used in adaptive streaming video delivery |
US9800639B2 (en) * | 2014-10-29 | 2017-10-24 | DLVR, Inc. | Performance-based selection of infrastructure service providers to provide adaptive streaming video |
US10264042B2 (en) * | 2014-10-29 | 2019-04-16 | DLVR, Inc. | Manifest file configuration based on manifest request characteristics |
US20160125157A1 (en) | 2014-10-30 | 2016-05-05 | Lithium Technologies, Inc. | Systems and Methods to Monitor Health of Online Social Communities |
US20160147760A1 (en) | 2014-11-26 | 2016-05-26 | Adobe Systems Incorporated | Providing alternate words to aid in drafting effective social media posts |
US20160321562A1 (en) | 2015-04-29 | 2016-11-03 | InsideSales.com, Inc. | Enhancement of Machine Learning Techniques for an Electronic Message System |
US9953063B2 (en) | 2015-05-02 | 2018-04-24 | Lithium Technologies, Llc | System and method of providing a content discovery platform for optimizing social network engagements |
US20160321261A1 (en) | 2015-05-02 | 2016-11-03 | Lithium Technologies, Inc. | System and method of providing a content discovery platform for optimizing social network engagements |
US20160335572A1 (en) | 2015-05-15 | 2016-11-17 | Microsoft Technology Licensing, Llc | Management of commitments and requests extracted from communications and content |
US20160352667A1 (en) | 2015-06-01 | 2016-12-01 | Facebook, Inc. | Providing augmented message elements in electronic communication threads |
US20180329565A1 (en) | 2015-12-23 | 2018-11-15 | Intel Corporation | Touch gesture detection assessment |
US20180091468A1 (en) | 2016-09-26 | 2018-03-29 | Facebook, Inc. | Indicating Live Videos for Trending Topics on Online Social Networks |
US20180144389A1 (en) | 2016-11-22 | 2018-05-24 | Paul Fredrich | Adaptive scheduling of electronic messaging based on predictive consumption of the sampling of items via a networked computing platform |
US20180152471A1 (en) | 2016-11-30 | 2018-05-31 | Agari Data, Inc. | Detecting computer security risk based on previously observed communications |
US20180219830A1 (en) | 2017-01-30 | 2018-08-02 | HubSpot Inc. | Introducing a new message source into an electronic message delivery environment |
US20180367484A1 (en) | 2017-06-15 | 2018-12-20 | Google Inc. | Suggested items for use with embedded applications in chat conversations |
US20190116137A1 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Optimizing effectiveness of content in electronic messages among a system of networked computing device |
WO2019075284A2 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Predicting performance of content and electronic messages among a system of networked computing devices |
US20190116148A1 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Computerized tools to enhance speed and propagation of content in electronic messages among a system of networked computing devices |
US20190114356A1 (en) | 2017-10-12 | 2019-04-18 | Spredfast, Inc. | Predicting performance of content and electronic messages among a system of networked computing devices |
US20190158610A1 (en) | 2017-11-22 | 2019-05-23 | Spredfast, Inc. | Responsive action prediction based on electronic messages among a system of networked computing devices |
WO2019144159A1 (en) | 2018-01-22 | 2019-07-25 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US20190228093A1 (en) | 2018-01-22 | 2019-07-25 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
Non-Patent Citations (85)
Title |
---|
"Craigslist Online Community." Craigslist.org. Jul. 6, 2010,. |
Ahmed, Saba, Final Office Action dated Jun. 29, 2016 for U.S. Appl. No. 14/098,492. |
Ahmed, Saba, Non-Final Office Action dated Nov. 19, 2015 for U.S. Appl. No. 14/098,492. |
Arentz et al., Classifying offensive sites based on image content [online], Computer Vision and Image Understanding 94, 295-310, 2004, Retrieved from the Internet: . |
Bista, Sanat Kumar et al., "Using Gamification in an Online Community," CSIRO ITC Centre, Conference Paper, 2012. |
Blaufeld, Justin R., Final Office Action dated Mar. 24, 2016 for U.S. Appl. No. 14/098,501. |
Blaufeld, Justin R., Non-Final Office Action dated Sep. 24, 2015 for U.S. Appl. No. 14/098,501. |
Bostock, Mike, Sankey Diagram, available at http://bost.ocks.org/mike/sankey, published May 21, 2012, 1 pg. |
Brown Jr., Nathan H., Final Office Action dated Mar. 29, 2011 for U.S. Appl. No. 11/971,856. |
Brown Jr., Nathan H., Non-Final Office Action dated Jun. 6, 2012 for U.S. Appl. No. 13/167,482. |
Brown Jr., Nathan H., Non-Final Office Action dated Mar. 24, 2014 for U.S. Appl. No. 13/780,487. |
Brown Jr., Nathan H., Non-Final Office Action dated Nov. 26, 2010 for U.S. Appl. No. 11/971,856. |
Bui, Hanh Thi Minh, Non-Final Office Action dated Mar. 13, 2015 for U.S. Appl. No. 14/012,978. |
Cannell, Larry, "Windows 7 Federated Search and SharePoint 2010" online article dated Jun. 2010 <http://blogs.gartner.com/larry-cannell/2010/09/09/windows-7-federated-search-and-sharepoint-2010/[May 13, 2016 12:36:15 PM]. |
Chung, Mong-Shune, Non-Final Office Action dated Jan. 29, 2016 for U.S. Appl. No. 14/098,505. |
Constine, Josh, "Facebook tests notification unsubscribe button for feed posts," Aug. 9, 2010. http://www.adweek.com/socialtime/unsubscribe-button-posts/244868. |
Dwyer, Cameron, "Five out-of-the-box ways to get Email into SharePoint" Jan. 2012, <https://camerondwyer.wordpress.com/2012/09/04/five-out-of-the-box-ways-to-get-email-into-sharepoint/[May 13, 2016 10:48:43 AM]. |
Emojipedia, (https://web.archive.org/web/20150915110235/https://emojipedia.org/fisted-hand-sign/), Date: Sep. 15, 2015; (https://web.archive.org/web/20150823012626/https://emojipedia.org/clapping-hands-sign/), Date: Aug. 23, 2015; (https://web.archive.org/web/20150829090848/https://emojipedia.org/smiling-face-with-sunglasses/), Date: Aug. 29, 2015. |
Falcao et al., U.S. Appl. No. 15/877,381, filed Jan. 22, 2018 and entitled, "Temporal Optimization of Data Operation Using Distributed Search and Server Management." |
Filipczyk, Marcin R., Final Office Action dated Oct. 5, 2015 for U.S. Appl. No. 13/950,268. |
Filipczyk, Marcin R., Non-Final Office Action dated Mar. 10, 2016 for U.S. Appl. No. 13/950,268. |
Filipczyk, Marcin R., Non-Final Office action dated May 22, 2015 for U.S. Appl. No. 13/950,268. |
Fiorillo, James N., Non-Final Office Action for U.S. Appl. No. 15/821,543 dated Aug. 16, 2019. |
Friedman et al., U.S. Appl. No. 61/650,849, filed May 23, 2012 and entitled, "Dynamic Information Streams in a Social Network Platform." |
Frunzi, Victoria E., Non-Final Office Action dated Oct. 16, 2018 for U.S. Appl. No. 15/018,787. |
Gaedckle et al., U.S. Appl. No. 61/636,132, filed Apr. 20, 2012 and entitled, "System and Method for Providing a Social Customer Care System." |
Georgandellis, Andrew C., Final Office Action dated Mar. 30, 2016 for U.S. Appl. No. 13/900,878. |
Georgandellis, Andrew C., Final Office Action dated Oct. 26, 2017 for U.S. Appl. No. 13/900,878. |
Georgandellis, Andrew C., Final Office Action dated Sep. 21, 2016 for U.S. Appl. No. 14/035,166. |
Georgandellis, Andrew C., Non-Final Office Action dated Jan. 26, 2017 for U.S. Appl. No. 13/900,878. |
Georgandellis, Andrew C., Non-Final Office Action dated Jul. 11, 2016 for U.S. Appl. No. 14/035,166. |
Georgandellis, Andrew C., Non-Final Office Action dated May 23, 2017 for U.S. Appl. No. 14/035,166. |
Georgandellis, Andrew C., Non-Final Office Action dated Nov. 3, 2015 for U.S. Appl. No. 13/900,878. |
Giphy, (https://web/archive.org/web/20140813065113/https://giphy.com/search/happy), Date: Aug. 13, 2014; https://archive.org/web20141231135329/https://giphy.com/upload, Date: Dec. 31, 2014; https://web.archive.org/web/20150919214012/http://giphy.com/create/upload, Date: Sep. 19, 2015. |
Goldberg, Ivan R., Final Office Action dated Jan. 12, 2015 for U.S. Appl. No. 13/835,502. |
Goldberg, Ivan R., Final Office Action dated Jan. 13, 2015 for U.S. Appl. No. 13/835,250. |
Goldberg, Ivan R., Final Office Action dated Jan. 15, 2015 for U.S. Appl. No. 13/865,429. |
Goldberg, Ivan R., Non-Final Office Action dated Apr. 13, 2016 for U.S. Appl. No. 13/865,429. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 18, 2014 for U.S. Appl. No. 13/835,250. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 18, 2014 for U.S. Appl. No. 13/835,502. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 20, 2014 for U.S. Appl. No. 13/865,411. |
Goldberg, Ivan R., Non-Final Office Action dated Jun. 23, 2014 for U.S. Appl. No. 13/865,429. |
Hahemi, Mazdak, "The Infrastructure Behind Twitter: Scale", Jan. 19, 2017, Twitter, Inc. Blog Post, https://blog.twitter.com/engineering/en_us/topics/infrastructure/2017/the-infrastructure-behind-twitter-scale.html |
Hatcher, Deirdre D., Non-Final Office Action dated Jan. 14, 2016 for U.S. Appl. No. 13/950,258. |
Holzband et al., U.S. Appl. No. 15/821,543, filed Nov. 22, 2017 and entitles, "Responsive Action Prediction Based on Electronic Messages Among a System of Networked Computing Devices." |
Jang, Gijeong, Written Opinion of the International Searching Authority and International Search Report dated Jul. 28, 2015 for International Patent Application No. PCT/US2014/047866. |
Jou et al., "Predicting Viewer Perceived Emotions in Animated GIFs", Nov. 3-7, 2014 (4 pages). |
Kolosowski-Gager, Katherine, Final Office Action dated Feb. 11, 2019 for U.S. Appl. No. 14/627,151. |
Kolosowski-Gager, Katherine, Non-Final Office Action dated Jun. 29, 2018 for U.S. Appl. No. 14/627,151. |
Lithium Technologies. "Community Health Index for Online Communities." 2009, https://www.lithium.com/pdfs/whitepapers/Lithium-Community-Health-Index_v1AY2ULb.pdf. Retrieved from the Internet Wayback Machine, dated Feb. 19, 2011. |
Lithium Website, http://www.lithium.com, Dec. 11, 2010, retrieved from Internet Archive, pp. 1-9. |
M2 PressWire, "Alterian: Social media monitoring and analytics comes of age with Alterian's acquisition of market leader Techrigy," Jul. 15, 2009, Anonymous, Norman Media Ltd, London. |
Mosley, Kyle T., Non-Final Office Action dated Dec. 28, 2017 for U.S. Appl. No. 14/852,965. |
Mosley, Kyle T., Non-Final Office Action dated Oct. 4, 2017 for U.S. Appl. No. 14/627,151. |
Netzloff, Eric R., Non-Final Office Action dated Nov. 25, 2014 for U.S. Appl. No. 13/848,706. |
Netzloff, Eric R., Non-Final Office Action dated Nov. 6, 2018 for U.S. Appl. No. 14/824,021. |
Ofori-Awuah, Maame, Non-Final Office Action dated Apr. 5, 2019 for U.S. Appl. No. 14/929,209. |
Oh, Eung Gie, Written Opinion of the International Searching Authority and International Search Report dated Nov. 18, 2014 for International Patent Application No. PCT/US2014/031345. |
Olshannikov, Alex, Final Office Action dated Apr. 15, 2016 for U.S. Appl. No. 14/098,480. |
Olshannikov, Alex, Final Office Action dated Feb. 17, 2016 for U.S. Appl. No. 14/098,509. |
Olshannikov, Alex, Non-Final Office Action dated Nov. 5, 2015 for U.S. Appl. No. 14/098,480. |
Olshannikov, Alex, Non-Final Office Action dated Oct. 22, 2015 for U.S. Appl. No. 14/098,509. |
Raju, "5 Ways to Tweet More Than 140 Characters," Dec. 28, 2008, Technically Personal, http://www.techpp.com/2008/12/28/5-ways-to-tweet-more-than-140-characters/, retrieved from Internet Archive version from Mar. 3, 2011. |
Rao et al., U.S. Appl. No. 62/049,642, filed Sep. 12, 2014 and entitled, "System and Apparatus for an Application Agnostic User Search Engine." |
Rashid, Ishrat, Non-Final Office Action dated Jun. 11, 2019 for U.S. Appl. No. 15/782,653. |
Senftleber et al., International (PCT) Patent Application No. PCT/US2018/055545, filed Oct. 12, 2018 and entitled, "Predicting Performance of Content and Electronic Messages Among a System of Networked Computing Devices.". |
Senftleber et al., U.S. Appl. No. 15/782,635, filed Oct. 12, 2017 and entitled, "Computerized Tools to Enhance Speed and Propagation of Content in Electronic Messages Among a System of Networked Computing Devices." |
Senftleber et al., U.S. Appl. No. 15/782,642, filed Oct. 12, 2017 and entitled, "Predicting Performance of Content and Electronic Messages Among a System of Networked Computing Devices." |
Senftleber et al., U.S. Appl. No. 15/782,653, filed Oct. 12, 2017 and entitled, "Optimizing Effectiveness of Content in Electronic Messages Among a System of Networked Computing Device." |
Senftleber et al., U.S. Appl. No. 16/158,167, filed Oct. 11, 2018 and entitled, "Credential and Authentication Management in Scalable Data Networks." |
Senftleber et al., U.S. Appl. No. 16/158,169, filed Oct. 11, 2018 and entitled, "Native Activity Tracking Using Credential and Authentication Management in Scalable Data Networks." |
Senftleber et al., U.S. Appl. No. 16/158,172, filed Oct. 11, 2018 and entitled, "Proxied Multi-Factor Authentication Using Credential and Authentication Management in Scalable Data Networks." |
Senftleber et al., U.S. Appl. No. 16/194,126, filed Nov. 16, 2018 and entitled, "Multiplexed Data Exchange Portal Interface in Scalable Data Networks." |
Spasojevic et al., U.S. Appl. No. 61/943,047, filed Feb. 21, 2014 and entitled, "Domain Generic Large Scale Topic Expertise & Interest Mining Across Multiple Online Social Networks." |
Tabor, Amare F., Final Office Action dated Apr. 8, 2015 for U.S. Appl. No. 13/871,076. |
Tabor, Amare F., Non-Final Office Action dated Aug. 15, 2014 for U.S. Appl. No. 13/871,076. |
Thomas, Shane, Written Opinion of the International Searching Authority and International Search Report dated Aug. 16, 2013 for International Patent Application No. PCT/US2013/037107. |
Vo, Huyen X., Non-Final Office Action dated Mar. 15, 2019 for U.S. Appl. No. 15/782,642. |
Walsh, John B., Non-Final Office Action dated Mar. 24, 2017 for U.S. Appl. No. 14/702,696. |
Wollenstein et al., U.S. Appl. No. 61/639,509, filed Apr. 27, 2012 and entitled, "Systems and Methods for Implementing Custom Privacy Settings." |
Wu, Michael, U.S. Appl. No. 61/734,927, filed Dec. 7, 2012 and entitled, "Systems and Methods for Presenting Analytic Data." |
Wu, Michael, U.S. Appl. No. 62/072,929, filed Oct. 30, 2014 and entitled, "Systems and Methods to Monitor Health of Online Social Communities." |
Young, Lee W., Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration, dated Apr. 1, 2019 for International Application No. PCT/US2018/05545. |
Young, Lee W., Written Opinion of the International Searching Authority and International Search Report dated May 28, 2014 for International Patent Application No. PCT/US2013/073625. |
Young, Lee W.; Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration dated Jun. 24, 2019 for International Application No. PCT/US2019/014637. |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11741551B2 (en) | 2013-03-21 | 2023-08-29 | Khoros, Llc | Gamification for online social communities |
US11538064B2 (en) | 2017-04-28 | 2022-12-27 | Khoros, Llc | System and method of providing a platform for managing data content campaign on social networks |
US11539655B2 (en) | 2017-10-12 | 2022-12-27 | Spredfast, Inc. | Computerized tools to enhance speed and propagation of content in electronic messages among a system of networked computing devices |
US11687573B2 (en) | 2017-10-12 | 2023-06-27 | Spredfast, Inc. | Predicting performance of content and electronic messages among a system of networked computing devices |
US11570128B2 (en) | 2017-10-12 | 2023-01-31 | Spredfast, Inc. | Optimizing effectiveness of content in electronic messages among a system of networked computing device |
US11765248B2 (en) | 2017-11-22 | 2023-09-19 | Spredfast, Inc. | Responsive action prediction based on electronic messages among a system of networked computing devices |
US11496545B2 (en) * | 2018-01-22 | 2022-11-08 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US11102271B2 (en) * | 2018-01-22 | 2021-08-24 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US11657053B2 (en) | 2018-01-22 | 2023-05-23 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
US11601398B2 (en) | 2018-10-11 | 2023-03-07 | Spredfast, Inc. | Multiplexed data exchange portal interface in scalable data networks |
US11805180B2 (en) | 2018-10-11 | 2023-10-31 | Spredfast, Inc. | Native activity tracking using credential and authentication management in scalable data networks |
US11936652B2 (en) | 2018-10-11 | 2024-03-19 | Spredfast, Inc. | Proxied multi-factor authentication using credential and authentication management in scalable data networks |
US11470161B2 (en) | 2018-10-11 | 2022-10-11 | Spredfast, Inc. | Native activity tracking using credential and authentication management in scalable data networks |
US11546331B2 (en) | 2018-10-11 | 2023-01-03 | Spredfast, Inc. | Credential and authentication management in scalable data networks |
US11627053B2 (en) | 2019-05-15 | 2023-04-11 | Khoros, Llc | Continuous data sensing of functional states of networked computing devices to determine efficiency metrics for servicing electronic messages asynchronously |
US11729125B2 (en) | 2020-09-18 | 2023-08-15 | Khoros, Llc | Gesture-based community moderation |
US11128589B1 (en) | 2020-09-18 | 2021-09-21 | Khoros, Llc | Gesture-based community moderation |
US11438289B2 (en) | 2020-09-18 | 2022-09-06 | Khoros, Llc | Gesture-based community moderation |
US12120078B2 (en) | 2020-09-18 | 2024-10-15 | Khoros, Llc | Automated disposition of a community of electronic messages under moderation using a gesture-based computerized tool |
US11438282B2 (en) | 2020-11-06 | 2022-09-06 | Khoros, Llc | Synchronicity of electronic messages via a transferred secure messaging channel among a system of various networked computing devices |
US11714629B2 (en) | 2020-11-19 | 2023-08-01 | Khoros, Llc | Software dependency management |
US11627100B1 (en) | 2021-10-27 | 2023-04-11 | Khoros, Llc | Automated response engine implementing a universal data space based on communication interactions via an omnichannel electronic data channel |
US11924375B2 (en) | 2021-10-27 | 2024-03-05 | Khoros, Llc | Automated response engine and flow configured to exchange responsive communication data via an omnichannel electronic communication channel independent of data source |
US12137137B2 (en) | 2022-11-07 | 2024-11-05 | Spredfast, Inc. | Temporal optimization of data operations using distributed search and server management |
Also Published As
Publication number | Publication date |
---|---|
US20210400108A1 (en) | 2021-12-23 |
US11496545B2 (en) | 2022-11-08 |
US20190230151A1 (en) | 2019-07-25 |
US20230319129A1 (en) | 2023-10-05 |
US11102271B2 (en) | 2021-08-24 |
US20200287957A1 (en) | 2020-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11496545B2 (en) | Temporal optimization of data operations using distributed search and server management | |
US11657053B2 (en) | Temporal optimization of data operations using distributed search and server management | |
AU2019209542B2 (en) | Temporal optimization of data operations using distributed search and server management | |
US20230144450A1 (en) | Multi-partitioning data for combination operations | |
US11151137B2 (en) | Multi-partition operation in combination operations | |
US11663176B2 (en) | Data field extraction model training for a data intake and query system | |
US10121169B2 (en) | Table level distributed database system for big data storage and query | |
US11704490B2 (en) | Log sourcetype inference model training for a data intake and query system | |
CA2851904C (en) | System and method for incrementally replicating investigative analysis data | |
US11429566B2 (en) | Approach for a controllable trade-off between cost and availability of indexed data in a cloud log aggregation solution such as splunk or sumo | |
US11797575B2 (en) | Capturing data lake changes | |
US11687487B1 (en) | Text files updates to an active processing pipeline | |
JP2016519810A (en) | Scalable analysis platform for semi-structured data | |
US12014255B1 (en) | Generating machine learning-based outlier detection models using timestamped event data | |
US12057208B1 (en) | Visualizing anomalous feature vectors based on data from healthcare records systems | |
US20210232603A1 (en) | Capturing data lake changes | |
US20230297592A1 (en) | Custom stream partitioning services | |
US12137137B2 (en) | Temporal optimization of data operations using distributed search and server management | |
US11930076B1 (en) | Offload inefficient slicing from clients to the servers | |
NZ624212B (en) | System and Method for Incrementally Replicating Investigative Analysis Data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: SPREDFAST, INC., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:FALCAO, ERIC MANUEL;HOERNER, BRETT;SWAIN, MATTHEW;AND OTHERS;REEL/FRAME:045350/0737 Effective date: 20180222 |
|
AS | Assignment |
Owner name: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT, NEW Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:SPREDFAST, INC.;REEL/FRAME:047638/0778 Effective date: 20181001 Owner name: GOLDMAN SACHS BDC, INC., AS COLLATERAL AGENT, NEW YORK Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:SPREDFAST, INC.;REEL/FRAME:047638/0778 Effective date: 20181001 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT RECEIVED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FEPP | Fee payment procedure |
Free format text: SURCHARGE FOR LATE PAYMENT, LARGE ENTITY (ORIGINAL EVENT CODE: M1554); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |