OGD Databases

OpenGameData Databases

STUB: This page is on the to-do list; only section headers have been added so far.

Event Databases

Feature Databases

Configuring a new OpenGameData Data Source

  • The sub-dictionaries are similar to the db_columns dictionary. They map each property name for a given event type to the type of that property.

  • db_columns: A description of the structure of the database table. This element should be a dictionary mapping the names of each column in the database table to a string describing the column.

db_columns is used to ensure the raw csv file metadata contains descriptions of each database column. events are used to get names for the members of each kind of event so we can extract features (and create columns in the raw csv). features are used to ensure the processed csv file metadata contains descriptions of each feature, and to help document the features for whoever writes the actual feature extraction code.

    "db_columns": {
        "id":"Unique identifier for a row",
    },

STUB: This page is on the to-do list; only section headers have been added so far.

Choosing a Database System

STUB: This page is on the to-do list; only section headers have been added so far.

MySQL

This major step can be accomplished by doing the following:

  1. Set up a “logging” server with PHP and MySQL: This server will host the logging service. Please see our reference platform documentation for recommended software versions.

  2. Create a MySQL database to hold game events: This database should contain a table for each game, with each table having columns and data types corresponding to the OGD schema

  3. Set up an instance of opengamedata-logger package: This repository contains PHP scripts to receive a request containing event data, and insert the data into a local database. The config file should be set with credentials for writing to the MySQL database. The readme may be useful for understanding how opengamedata-logger works.

  4. Direct game logging client to your server: If you used opengamedata-unity or opengamedata-js-log for event logging, you can configure the package to make requests through your server’s instance of the PHP scripts.

BigQuery

This step can be accomplished by doing the following:

  1. Create a Google Cloud project to host game data

  2. Create a BigQuery project: This project should, in turn, have datasets for each game, and each dataset should have tables with columns and data types corresponding to the MySQL schema.

  3. Use opengamedata-automation to automatically archive data from MySQL to BigQuery

PostgreSQL

Event Monitoring

This document covers the configuration and use of opengamedata-monitor for monitoring real-time event arrival at the event logger