Author: Shane Hudson
Date: 16:10:45 01/18/01
Go up one level in this thread
On January 17, 2001 at 20:45:46, Wayde Beasley wrote: >Can someone here explain in general terms the strategies and approaches that >have been taken to store massive databases of chess games. How are the indexes >created? Is there a good information resource on this topic hidden on the net >somewhere? > Well if you are interested in file formats of commercial databases, the chess formats website at http://homes.dsl.nl/~rudolf/ is useful. A lot is known about the old chessbase (.cbi/.cbf) format (which is terribly slow by the way, it is amazing anyone ever created a format that stupid) but relatively little about the newer Chessbase or Chess Assistant formats. I have written a free chess database app (Scid) with source code available, that stores games in a 3-file format, with a fixed-length 41-byte index record for each game, plus a variable-length game record (which is around one byte per move, so the average record for an unannotated game of 40 moves per side is around 85 bytes). There is a real trade-off between speed and space, depending on what type of chess searches you want to do: exact positions only, material configurations, or patterns like an IQP? In my program, there is redundant data in the 41-byte index record for each game that helps to eliminate games without needing to decode any of their moves. Email me if you'd like more details of what I implemented for Scid. Cheers, Shane Hudson
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.