LinkedIn Patent Applications

PARTITIONING AND REPLICATING DATA IN SCALABLE DISTRIBUTED DATA STORES

Granted: September 14, 2017
Application Number: 20170262521
The disclosed embodiments provide a system for processing data. During operation, the system generates a first distribution of a set of partitions comprising a graph database across a first set of storage nodes in a first cluster. Next, the system replicates the graph database by generating a second, different distribution of the set of partitions across a second set of storage nodes in a second cluster. The system then identifies one or more partitions storing data associated with the…

ATOMIC UPDATING OF GRAPH DATABASE INDEX STRUCTURES

Granted: September 7, 2017
Application Number: 20170255709
The disclosed embodiments provide a system for updating an index structure of a graph database storing a graph. During operation, the system includes, in the index structure, a first compressed edge store containing a first compact representation of edges in the graph at a first virtual time and a first series of updates to the edges after the first virtual time. At a second virtual time, the system creates a second compact representation of the edges from the first compact…

INDEX STRUCTURES FOR GRAPH DATABASES

Granted: September 7, 2017
Application Number: 20170255708
The disclosed embodiments provide a system for processing queries of a graph database. During operation, the system executes a set of processes for accessing a lock-free hash table stored in memory on a computer system, wherein the processes include a write process and multiple read processes. Next, the system uses the processes and the lock-free hash table to index a graph database storing a graph. The system then uses the processes to access a compressed edge store containing a compact…

REAL USER MONITORING OF SINGLE-PAGE APPLICATIONS

Granted: August 17, 2017
Application Number: 20170237799
The disclosed embodiments provide a system for processing data. During operation, the system obtains a first set of metrics generated during loading of a single-page application (SPA) in a web browser, wherein the first set of metrics includes a page load event and a render completion time. Next, the system uses the first set of metrics to calculate an initial page load time for the SPA. The system also obtains a second set of metrics generated during loading of a subsequent view in the…

PROCESSING AND VISUALIZATION OF SINGLE-PAGE APPLICATION PERFORMANCE METRICS

Granted: August 17, 2017
Application Number: 20170237635
The disclosed embodiments provide a system for processing data. During operation, the system obtains a set of metrics related to a performance of a single-page application (SPA), wherein the set of metrics includes an initial page load time of the SPA that is calculated from a page load event and a render completion time and a subsequent page load time of the SPA that is calculated from a transition time and the render completion time. Next, the system uses the set of metrics to display…

AUTOMATIC RESPONSE TO INEFFICIENT JOBS IN DATA PROCESSING CLUSTERS

Granted: August 17, 2017
Application Number: 20170235608
The disclosed embodiments provide a method, apparatus, and system for obtaining user ratings and/or feedback for a software application. During operation, for each of a plurality of jobs executed by a computing system component, wherein each job includes an execution of a corresponding job definition: the system retrieves metadata about the job from the computing system component and calculates an inefficiency metric for the job based on the metadata, wherein a higher inefficiency metric…

IDENTIFYING GATEWAY MEMBERS BETWEEN GROUPS IN SOCIAL NETWORKS

Granted: July 27, 2017
Application Number: 20170214589
The disclosed embodiments provide a system for facilitating interaction within a social network. During operation, the system obtains a graph of a social network, wherein the graph includes a set of nodes representing members of the social network and a set of edges representing relationships between pairs of the members. Next, the system uses the graph to identify a subset of the members with high betweenness centrality within a subgraph that includes a first group in the social network…

BRANCHABLE GRAPH DATABASES

Granted: July 27, 2017
Application Number: 20170212945
The disclosed embodiments provide a system for providing a graph database storing a graph. During operation, the system executes one or more processes for providing the graph database. Next, the system stores a sequence of changes to the graph in a base version of the graph database. The system then branches a version of the graph database from a virtual time in the base version. Finally, the system uses the branched version to process one or more queries of the graph database.

HYBRID ARCHITECTURE FOR PROCESSING GRAPH-BASED QUERIES

Granted: July 27, 2017
Application Number: 20170212930
The disclosed embodiments provide a system for processing data. During operation, the system launches a set of child processes for processing queries of a graph database storing a graph, wherein the graph comprises a set of nodes, a set of edges between pairs of nodes in the set of nodes, and a set of predicates. When a query of the graph database is received, the system transmits the query to one or more of the child processes. Next, the system receives a result of the query from the…

PERFORMANCE-BASED MIGRATION AMONG DATA STORAGE DEVICES

Granted: July 20, 2017
Application Number: 20170206015
The disclosed embodiments provide a system for analyzing data from a monitored system. During operation, the system identifies a difference between a performance of an application and a service-level agreement (SLA) of the application. Next, the system determines a correlation between the performance of the application and a disk input/output (I/O) performance of a data storage device used by the application. When the correlation exceeds a threshold, the system outputs a recommendation…

FACILITATING REVERSE READING OF SEQUENTIALLY STORED, VARIABLE-LENGTH DATA

Granted: July 6, 2017
Application Number: 20170192674
A system, method, and apparatus are provided for facilitating reverse reading of sequentially stored variable-length data records. Each record is stored with accompanying size metadata that identifies the size or length of the record. Further, if the length of a given record is greater than a threshold (e.g., 127 bytes when the length is stored with variable-length quantity encoding), such that more than one byte (or other storage unit) is needed to store the record length, an additional…

DYNAMIC CUSTOMIZED CONTENT BASED ON USER BEHAVIOR

Granted: June 15, 2017
Application Number: 20170169028
In order to dynamically generate customized content, a set of format options for a document (including layout and/or ordering) may be defined and user behaviors in a social network associated with different versions of the document may be tracked. For example, the user behaviors may include a number of views of the document, a percentage of the document viewed and/or a viewing time of the document. This customization technique allows feedback based on user behaviors to guide revisions to…

EFFICIENT ADDRESS-TO-SYMBOL TRANSLATION OF STACK TRACES IN SOFTWARE PROGRAMS

Granted: June 15, 2017
Application Number: 20170168955
The disclosed embodiments provide a system for processing data. During operation, the system obtains an attribute of a stack trace of a software program. Next, the system uses the attribute to select an address-translation instance from a set of address-translation instances for processing the stack trace. The system then provides the stack trace to the selected address-translation instance for use in translating a set of memory addresses in the stack trace into a set of symbols of…

COMPRESSION-BASED DETECTION OF MEMORY INEFFICIENCY IN SOFTWARE PROGRAMS

Granted: June 15, 2017
Application Number: 20170168726
The disclosed embodiments provide a system for detecting and managing memory inefficiency in a software program. During operation, the system obtains a first snapshot of a heap for a software program, wherein the first snapshot includes a first set of objects stored in the heap at a first time. Next, the system applies a compression technique to the first snapshot to obtain a first set of inefficiency metrics for the first set of objects, wherein each inefficiency metric in the first set…

ANALYSIS OF SITE SPEED PERFORMANCE ANOMALIES CAUSED BY SERVER-SIDE ISSUES

Granted: June 1, 2017
Application Number: 20170155570
The disclosed embodiments provide a system for processing data. During operation, the system obtains a component of a time-series performance metric associated with a server-side root cause of an anomaly in the time-series performance metric. Next, the system obtains a call graph representation of the component, wherein the call graph representation includes a parent node having a parent value of the component and a set of child nodes of the parent node, each child node having a…

ROOT CAUSE INVESTIGATION OF SITE SPEED PERFORMANCE ANOMALIES

Granted: June 1, 2017
Application Number: 20170155537
The disclosed embodiments provide a system for processing data. During operation, the system obtains a set of components of a time-series performance metric associated with an anomaly in a performance of one or more monitored systems. For each component in the set of components, the system performs a statistical hypothesis test on the component to assess a deviation of the component from a baseline value of the component. When the statistical hypothesis test identifies a statistically…

STATISTICAL DETECTION OF SITE SPEED PERFORMANCE ANOMALIES

Granted: June 1, 2017
Application Number: 20170154275
The disclosed embodiments provide a system for processing data. During operation, the system obtains a current window of one or more intervals of time-series data collected from a monitored system. Next, the system continuously performs a statistical hypothesis test that compares the one or more intervals of the time-series data with baseline values from historic time-series data associated with the monitored system. When the statistical hypothesis test indicates a deviation of the…

EFFICIENT CONSOLIDATION OF HIGH-VOLUME METRICS

Granted: June 1, 2017
Application Number: 20170154057
The disclosed embodiments provide a system for processing data. During operation, the system obtains a set of records from a set of inputs, with each record containing an entity key, a partition key, and one or more attribute-value pairs. For each attribute-value pair in the records, the system maps an attribute name in the attribute-value pair to a unique identifier for the attribute name and replaces the attribute name with the unique identifier. The system then identifies a subset of…

DYNAMIC DATA-INGESTION PIPELINE

Granted: May 18, 2017
Application Number: 20170139956
In order to ingest data from an arbitrary source in a set of sources, a computer system accesses predefined configuration instructions. Then, the computer system generates a dynamic data-ingestion pipeline that is compatible with a Hadoop file system based on the predefined configuration instructions. This dynamic data-ingestion pipeline includes a modular arrangement of operators from a set of operators that includes: an extraction operator for extracting the data of interest from the…

DYNAMIC QUERY PLAN BASED ON SKEW

Granted: May 18, 2017
Application Number: 20170139991
A system obtains desired information from a database by dynamically modifying a query plan while executing a query against the database. In particular, the system accesses predefined cardinality information associated with the query for the database (such as a number of occurrences of information associated with the query in the database), and identifies query constraints based on the predefined cardinality information. Then, the system determines an initial query plan based on the query…