I've no idea about the game or how long you will have to live to compute all 
the combinations but how about:

- row key is byte array describing the position of white/black pieces and the 
move indicator. You would need to have both rows keyed from blacks perspective 
and rows keyed from whites perspective.
- each column name is the byte array for the possible positions of the other 
colour

Good luck. 
 
-----------------
Aaron Morton
Freelance Cassandra Developer
@aaronmorton
http://www.thelastpickle.com

On 22 Jul 2011, at 01:18, Stephen Pope wrote:

> For a side project I’m working on I want to store the entire set of possible 
> Reversi boards. There are an estimated 10^28 possible boards. Each board 
> (from the best way I could think of to implement it) is made up of 2, 64-bit 
> numbers (black pieces, white pieces…pieces in neither of those are empty 
> spaces) and a bit to indicate who’s turn it is. I’ve thought of a few 
> possible ways to do it:
>  
> -          Entire board as row key, in an array of bytes. I’m not sure how 
> well Cassandra can handle 10^28 rows. I could also break this up into 
> separate cfs for each depth of move (initially there are 4 pieces on the 
> board in total. I could make a cf for 5 piece, 6, etc to 64). I’m not sure if 
> there’s any advantage to doing that.
> -          64-bit number for the black pieces as row key, with 65-bit column 
> names (white pieces + turn). I’ve read somewhere that there’s a rough limit 
> of 2-billion columns, so this will be problematic for certain. This can also 
> be broken into separate cfs, but I’m still going to hit the column limit
>  
> Is there a better way to achieve what I’m trying to do, or will either of 
> these approaches surprise me and work properly?

Reply via email to