2009-07-02, 16:01
they are accessed through http - so whatever url you use... which prob needs manual configuring
Quote:CouchDB is a peer-based distributed database system, it allows for users and servers to access and update the same shared data while disconnected and then bi-directionally replicate those changes later.
jmarshall Wrote:Assuming the video library rewrite goes well...
jmarshall Wrote:If anyone wants to help out at the exploratory phase, give me a shout. Essentially we need to:
1. Setup an example db with a bunch of documents with whatever fields we want.
2. Setup a bunch of views to give us what we have today.
3. Look at how easy/hard it is to generate dynamic views for smartplaylists and the like - perhaps they can simply be generated directly based on input from the UI and be kept in the db rather than hanging on to their XML descriptions?
Cheers,
Jonathan
ABarbaccia Wrote:I saw some performance metrics between CouchDB and mysql. On a dataset of 50,000 records, query performance was identical between the two. Index and table creation was 50x slower, but that is only seen during the first query to the view....and PostgreSQL is twice as fast as MySQL on multi-processor CPUs?
wstewart Wrote:I think that each profile will need its own database and all tables would be in the profile database. But since the table names conflict between music, video, etc., I am leaning towards prefixing the table names with video_, music_, etc.
ABarbaccia Wrote:This could be done with a single database.
Add a profile table and a profile_id field to the music, video, etc tables. Then you can query only the rows that correspond to a specific profile. The database abstraction layer will have to be made aware of the active profile_id and sql modified to include it. you're sql will be something like this: select artist from music where profile_id = 1.
Setting up multiple databases would require granting access to multiple databases and lots of ugly other stuff too.
wstewart Wrote:Perhaps keep it in mind now already for a possible merge in the future?ABarbaccia Wrote:This could be done with a single database.
Add a profile table and a profile_id field to the music, video, etc tables. Then you can query only the rows that correspond to a specific profile. The database abstraction layer will have to be made aware of the active profile_id and sql modified to include it. you're sql will be something like this: select artist from music where profile_id = 1.
Setting up multiple databases would require granting access to multiple databases and lots of ugly other stuff too.
I agree that would be idea, but I am looking to maintain compatibility with the existing sqlite databases and minimize the code impact at this stage. Perhaps I should give some more thought though.
UPDATE song SET iTimesPlayed=iTimesPlayed+1, lastplayed=CURRENT_TIMESTAMP where idSong=%ld