[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] gsoc idea sqlite db for pygame

On, Sat Mar 21, 2009, John Robinson wrote:

> I have an idea for a proposal for gsoc.My interest in game development
> is with games with deep datasets(RPG,strategy games,etc)These projects
> tend to be intensive, which is why I haven't posted a game project
> myself (yet).
> One of the major problems I have encountered in development is an
> effective way of dealing with the massive amounts of data these games
> need.When you need to deal with, in a RPG for instance, player and npc
> hitpoints, experience points, items etc, handling all the data can get
> difficult.

Massive amounts of data to deal with means usually to deal with them
fast. This in turn means to have fast data request handlers, low
response times and so on.

> While looking for a solution to this data situation,
> I recently started experimenting with the pySqlite wrapper for the
> sqlite databases.It has some good qualities that could be useful in
> Pygame.Its relatively small.It's serverless, so problems with setting
> up a server and client system would be mitigated.The pySqlite wrapper
> around Sqlite is solid, and full-featured.

> A class could be built around pySqlite to help abstract some of the
> data,so you wouldn't necessarily have to know SQL to add and retrieve
> data from the database(i've built a module to do that already).

> I'm interested if anyone thinks this would be a good addition to
> Pygame, and whether this would a good GSoc project.

Data storage layers of that kind lack two things: a useful reason about
why that should take three full months of development and not just a
week and how to keep them reasonably fast for situations where a
database keeping lots of information is needed.

If I have 5 different tables (let's say n:m and 1:n relations), keeping
queries over all or a combination of a few of them fast enough is mostly
done by performant, optimised queries on filtered and joined
subsets. How would such situations be realised by that abstraction layer
you think about? What other features except for hiding SQL would the
layer offer?


Attachment: pgplwhr7vDP5d.pgp
Description: PGP signature