package edu.brown.benchmark.wikipedia;
import org.voltdb.VoltTable;
import org.voltdb.VoltType;
public abstract class WikipediaConstants {
/**
* The percentage of page updates that are made by anonymous users [0%-100%]
*/
public static final int ANONYMOUS_PAGE_UPDATE_PROB = 26;
/**
*
*/
public static final int ANONYMOUS_USER_ID = 0;
public static final double USER_ID_SIGMA = 1.0001d;
/**
* Length of the tokens
*/
public static final int TOKEN_LENGTH = 32;
/**
* Number of baseline pages
*/
public static final int PAGES = 10000;
/**
* Number of baseline Users
*/
public static final int USERS = 2000;
public static final String UPDATEPAGE_LOG_TYPE = "patrol";
public static final String UPDATEPAGE_LOG_ACTION = "patrol";
public static final int CLIENT_NEXT_ID_OFFSET = 10000;
// -----------------------------------------------------------------
// GET PAGE OUTPUT COLUMNS
// -----------------------------------------------------------------
public static final VoltTable.ColumnInfo[] GETPAGE_OUTPUT_COLS = {
new VoltTable.ColumnInfo("PAGE_ID", VoltType.BIGINT),
new VoltTable.ColumnInfo("PAGE_TITLE", VoltType.STRING),
new VoltTable.ColumnInfo("OLD_TEXT", VoltType.STRING),
new VoltTable.ColumnInfo("TEXT_ID", VoltType.INTEGER),
new VoltTable.ColumnInfo("REVISION_ID", VoltType.INTEGER),
new VoltTable.ColumnInfo("USER_TEXT", VoltType.STRING),
};
// -----------------------------------------------------------------
// GET UPDATE USER&PAGE COLUMNS
// -----------------------------------------------------------------
public static final VoltTable.ColumnInfo[] GET_USER_PAGE_UPDATE_COLS = {
new VoltTable.ColumnInfo("USER_TEXT", VoltType.INTEGER),
new VoltTable.ColumnInfo("PAGE_ID", VoltType.INTEGER),
};
// -----------------------------------------------------------------
// GET UPDATE USER&PAGE COLUMNS
// -----------------------------------------------------------------
public static final VoltTable.ColumnInfo[] GET_TRACE_COLS = {
new VoltTable.ColumnInfo("USER_ID", VoltType.INTEGER),
new VoltTable.ColumnInfo("NAMESPACE", VoltType.INTEGER),
new VoltTable.ColumnInfo("TITLE", VoltType.STRING),
};
// ----------------------------------------------------------------
// DISTRIBUTION CONSTANTS
// ----------------------------------------------------------------
public static final double NUM_WATCHES_PER_USER_SIGMA = 1.75d;
public static final double WATCHLIST_PAGE_SIGMA = 1.0001d;
public static final double REVISION_USER_SIGMA = 1.0001d;
public static final int TRACE_DATA_SCALE = 10000;
/**
* How likely is a user to look at past revision
*/
public static final double PAST_REV_CHECK_PROB = 0.03;
public static final double PAST_REV_ZIPF_SKEW = 4.0;
// ----------------------------------------------------------------
// DATA SET INFORMATION
// ----------------------------------------------------------------
/**
* Table Names
*/
public static final String TABLENAME_IPBLOCKS = "IPBLOCKS";
public static final String TABLENAME_LOGGING = "LOGGING";
public static final String TABLENAME_PAGE = "PAGE";
public static final String TABLENAME_PAGE_BACKUP = "PAGE_BACKUP";
public static final String TABLENAME_PAGE_RESTRICTIONS = "PAGE_RESTRICTIONS";
public static final String TABLENAME_RECENTCHANGES = "RECENTCHANGES";
public static final String TABLENAME_REVISION = "REVISION";
public static final String TABLENAME_TEXT = "TEXT";
public static final String TABLENAME_USER = "USERACCT";
public static final String TABLENAME_USER_GROUPS = "USER_GROUPS";
public static final String TABLENAME_VALUE_BACKUP = "VALUE_BACKUP";
public static final String TABLENAME_WATCHLIST = "WATCHLIST";
// ----------------------------------------------------------------
// STORED PROCEDURE INFORMATION
// ----------------------------------------------------------------
public static final int FREQUENCY_ADD_WATCHLIST = 1;
public static final int FREQUENCY_REMOVE_WATCHLIST = 1;
public static final int FREQUENCY_UPDATE_PAGE = 8;
public static final int FREQUENCY_GET_PAGE_ANONYMOUS = 89;
public static final int FREQUENCY_GET_PAGE_AUTHENTICATED = 1;
public static final int BATCH_SIZE = 1000;
}