Abstract:
Implementations store an event associated with a topic in a database to allow for the event to be transmitted in order with respect to other events associated with the topic which are stored in the database. A commit of a transaction is performed that includes inserting the event's payload in a record in a database object. After the commit, a field for the record is updated with an identifier of the commit. The identifier and identifiers of other commits of other transactions on the database indicate ordering of the commit with respect to the other commits. Another field of another record is updated based on the identifier and a last stored value such that the payloads of the event and of the other events are retrievable to be transmitted in an order based on the value of the other field and values of other fields of other records.
Abstract:
Implementations are described which provide for recipient-based filtering of an event that relates to a topic to which consumers are subscribed. Responsive to determining that an attribute of the event includes a set of one or more identifiers for intended recipients for the event, the event is delivered to consumers that correspond to the intended recipients. Alternatively, responsive to determining that the attribute of the event does not include a set of one or more identifiers for intended recipients for the event, the event is delivered to all of the consumers subscribed to the topic to which the event relates.
Abstract:
Implementations are described which provide for recipient-based filtering of an event that relates to a topic to which consumers are subscribed. Responsive to determining that an attribute of the event includes a set of one or more identifiers for intended recipients for the event, the event is delivered to consumers that correspond to the intended recipients. Alternatively, responsive to determining that the attribute of the event does not include a set of one or more identifiers for intended recipients for the event, the event is delivered to all of the consumers subscribed to the topic to which the event relates.
Abstract:
A method and apparatus for a mechanism of disaster recovery and instance refresh in an event recordation system are described. A first request for events associated with a first topic is received. A first set of events associated with the first topic are retrieved from a primary event recordation system. Each event from the first set of events includes a first commit identifier indicating the order with which each event is stored in the primary event recordation system. For each event from the first set of events a first replay identifier is determined based on the first commit identifier and a first value of a low commit identifier. The first replay identifier is exposed to event consumers for identifying the event. In response to the first request each event from the first set of events is transmitted with the replay identifier.
Abstract:
Disclosed are some examples of database systems, methods, and computer program products for processing log files. In some implementations, a server of a database system accesses a log file having a release version. The log file includes data entries identifying system events corresponding to user activity. The server generates or updates, based on the release version of the log file, a metadata file indicating approved entry types and approved data. The server also generates or updates, based on the log file and the metadata file, customer-facing log files. Each customer-facing log file is associated with a corresponding customer entity capable of being serviced by the database system. Each customer-facing log file includes a subset of the entries and a subset of the data items of at least one of the entries.
Abstract:
A capture service running on an application server receives events from a client application running on an application server to be stored in a data store and stores the events in an in-memory bounded buffer on the application server, the in-memory bounded buffer comprising a plurality of single-threaded segments, the capture service to write events to each segment in parallel. The in-memory bounded buffer provides a notification to a buffer flush regulator when a number of events stored in the in-memory bounded buffer reaches a predefined limit. The in-memory bounded buffer receive a request to flush the events in the in-memory bounded buffer from a consumer executor service. The consumer executor service consumes the events in the in-memory bounded buffer using a dynamically sized thread pool of consumer threads to read the segments of the bounded buffer in parallel, wherein consuming the events comprises writing the events directly to the data store.
Abstract:
In an example, a processing system of a database system may categorize event data taken from logged interactions of users with a multi-tenant information system to provide a metric. The processing system of the database system may periodically calculate the metric for a particular one of the tenants, and electronically store the periodically calculated metrics for accessing responsive to a query of the particular tenant.