Difference between revisions of "Database Schema"

From ISFDB
Jump to navigation Jump to search
(Updated the description of the webpages table)
(→‎Global Tables: +MediaWiki table info)
Line 11: Line 11:
 
Information stored in the global tables are shared across the title, author, and publication related tables in the ISFDB.
 
Information stored in the global tables are shared across the title, author, and publication related tables in the ISFDB.
  
* [[Schema:directory]] - Holds author directory information.
+
* [[Schema:directory]] - Author directory information.
 
* [[Schema:history]] - Tracks database change history.
 
* [[Schema:history]] - Tracks database change history.
* [[Schema:languages]]
+
* [[Schema:languages]] - List of all languages supported by the ISFDB. Must be kept in sync with LANGUAGES in common/isfdb.py.
* [[Schema:license_keys]] - Holds user license key information.
+
* [[Schema:license_keys]] - User license key information.
* [[Schema:metadata]] - Contains metadata about the database itself.
+
* [[Schema:metadata]] - Metadata about the database itself.
* [[Schema:mw_user‎]]
+
* [[Schema:mw_page]] - MediWaiki table with information about all Wiki pages. Used by the nightly cleanup reports to find Wiki-ISFDB mismatches.
* [[Schema:mw_user‎_groups]]
+
* [[Schema:mw_user‎]] - MediaWiki table with user ID, name and other user-specific information. The version in publicly available backups has been cleansed of all private data.
 +
* [[Schema:mw_user‎_groups]] - MediWiki table which determines which Wiki group (editors, moderators/sysops or bureaucrats) each user belongs to.
 
* [[Schema:notes]] - General-purpose notes area.
 
* [[Schema:notes]] - General-purpose notes area.
* [[Schema:submissions]] - Table for storing data submissions.
+
* [[Schema:submissions]] - Data submissions.
* [[Schema:user_languages‎]] - Holds User Language preferences.
+
* [[Schema:user_languages‎]] - User Language preferences.
* [[Schema:user_preferences]] - Holds User preferences.
+
* [[Schema:user_preferences]] - User preferences.
* [[Schema:user_sites]] - Holds User Website preferences.
+
* [[Schema:user_sites]] - User Website preferences.
* [[Schema:websites]] -  Stores bookseller and bibliographic sites that a publication may link to.
 
 
* [[Schema:webpages]] - URLs of other Web sites. Used by authors, publishers, publication series, titles, series, award categories and award types.
 
* [[Schema:webpages]] - URLs of other Web sites. Used by authors, publishers, publication series, titles, series, award categories and award types.
 +
* [[Schema:websites]] -  Third party (bookseller and bibliographic) sites that a publication may link to based on its ISBN.
  
 
==Author-Related Tables==
 
==Author-Related Tables==

Revision as of 18:14, 3 September 2016

Introduction

There are three primary document views utilized by the ISFDB: showing the bibliography of an author, showing the titles present in a publication, and showing the publications in which a title was published. These views require three primary tables: authors, titles, and publications. Various normalization tables are provided to reduce errors and storage needs.

The illustration below shows the relationship between the various tables. All notes are stored in the notes table, which other tables refer to via the primary note_id key. The metadata table contains data pertinent to the database itself.

A high-level explanation of the database can be found in the Database Overview article. An out-of-date diagram of the ISFDB tables and their relationships can be found here.

Global Tables

Information stored in the global tables are shared across the title, author, and publication related tables in the ISFDB.

Author-Related Tables

The following tables are used to store information about authors and their works:

Publication-Related Tables

The following tables are used to store information about publications:

Title-Related Tables

The following tables are used to store information about titles:

Awards-Related Tables

The following tables are used to store information about awards:

Transliteration Tables

Data Cleanup Tables