[split from visionik AMA] Database Discussion

Post here if you want to help developing something for FAF.

[split from visionik AMA] Database Discussion

Postby ax0lotl » 27 Sep 2014, 12:22

Dragonfire wrote:Also mySql is not the best solution for such a big system ...
Never worked with it: googleBigTable, Hadoop

A relational database should be fine for FAF. Hadoop is for a whole different magnitude of data.
ax0lotl
Avatar-of-War
 
Posts: 275
Joined: 11 Dec 2013, 13:24
Has liked: 42 times
Been liked: 35 times
FAF User Name: ax0lotl

Re: AMA: Ask Visionik "the owner" anything

Postby Dragonfire » 27 Sep 2014, 12:26

ax0lotl wrote:
Dragonfire wrote:A relational database should be fine for FAF. Hadoop is for a whole different magnitude of data.

I was not clear:
A relational database is not good for everything in faf, e.g. replays.
My native language is not english, please correct me, because I want to improve my skills # Resource Overview
User avatar
Dragonfire
Evaluator
 
Posts: 559
Joined: 19 Dec 2013, 10:18
Has liked: 39 times
Been liked: 61 times
FAF User Name: Dragonfire

Re: AMA: Ask Visionik "the owner" anything

Postby nine2 » 27 Sep 2014, 14:11

Dragonfire wrote:A relational database is not good for everything in faf, e.g. replays.

I don't see why not. I heard there are only a million replays.
nine2
Councillor - Promotion
 
Posts: 2416
Joined: 16 Apr 2013, 10:10
Has liked: 285 times
Been liked: 515 times
FAF User Name: Anihilnine

Re: AMA: Ask Visionik "the owner" anything

Postby Ze_PilOt » 27 Sep 2014, 14:17

partytime wrote:
Dragonfire wrote:A relational database is not good for everything in faf, e.g. replays.

I don't see why not. I heard there are only a million replays.


Its more than That.

Also you are not querying the replay table.

You are querying a table that has a row for every player in the game.
Nossa wrote:I've never played GPG or even heard of FA until FAF started blowing up.
User avatar
Ze_PilOt
Supreme Commander
 
Posts: 8985
Joined: 24 Aug 2011, 18:41
Location: fafland
Has liked: 18 times
Been liked: 376 times
FAF User Name: Ze_PilOt

Re: AMA: Ask Visionik "the owner" anything

Postby Aurion » 27 Sep 2014, 15:42

Ze_PilOt wrote:
partytime wrote:
Dragonfire wrote:A relational database is not good for everything in faf, e.g. replays.

I don't see why not. I heard there are only a million replays.


Its more than That.

Also you are not querying the replay table.

You are querying a table that has a row for every player in the game.


Yet it's possible to push all replay data to a for example a document-based database (in addition to the MySQL database) and it would be way easier and faster to query from that because of the lack of relations (you would push user data with the replay data with which you need to filter). This requires quite some storage, because it's not being stored efficiently of course and databases like that like lots of memory too.

Omnipotent wrote:Organise a 'Kickstarter' for new map making tool... v60 scmaps, EnvCubes and custom decals and texture support.

Just throwing that one out there lol!



That would be awesome, but do we actually have the knowledge in this community to make something like that?
Aurion
Priest
 
Posts: 380
Joined: 25 Jul 2013, 20:03
Has liked: 12 times
Been liked: 15 times
FAF User Name: NuclearPudding

Re: AMA: Ask Visionik "the owner" anything

Postby Vee » 28 Sep 2014, 10:54

Also mySql is not the best solution for such a big system ...
Never worked with it: googleBigTable, Hadoop


was not clear:
A relational database is not good for everything in faf, e.g. replays.


Yet it's possible to push all replay data to a for example a document-based database (in addition to the MySQL database) and it would be way easier and faster to query from that because of the lack of relations (you would push user data with the replay data with which you need to filter).


OMG...
Vee
Evaluator
 
Posts: 677
Joined: 04 Dec 2013, 20:43
Has liked: 275 times
Been liked: 225 times
FAF User Name: Vee

Re: AMA: Ask Visionik "the owner" anything

Postby Dragonfire » 28 Sep 2014, 11:15

Vee wrote:OMG...

Can you specify it more?
Why it is bad?
Why it is good?
My native language is not english, please correct me, because I want to improve my skills # Resource Overview
User avatar
Dragonfire
Evaluator
 
Posts: 559
Joined: 19 Dec 2013, 10:18
Has liked: 39 times
Been liked: 61 times
FAF User Name: Dragonfire

Re: AMA: Ask Visionik "the owner" anything

Postby Aurion » 28 Sep 2014, 11:15

Vee wrote:
Yet it's possible to push all replay data to a for example a document-based database (in addition to the MySQL database) and it would be way easier and faster to query from that because of the lack of relations (you would push user data with the replay data with which you need to filter).


OMG...


What?
Aurion
Priest
 
Posts: 380
Joined: 25 Jul 2013, 20:03
Has liked: 12 times
Been liked: 15 times
FAF User Name: NuclearPudding

Re: [split from visionik AMA] Database Discussion

Postby maov » 29 Sep 2014, 22:53

I doubt that a nosql solution would be faster then mysql running ad hoc queries on 'min rating', 'player', 'map' order by date with limit xxx on one machine only. It all depends on the criteria for the search though; is it static data(write and never update), will the search method change in the future, how far can it be denormalized without forcing large codechanges/data migration, is simple backup important (put the replays in the filesystem).

The only good way to find out is to replicate/create good test data, run a few tests on a "small" machine or you limit it with docker/virtual machine, double the size of the data and see if its still running well. This is again only valid if the system is not doing anything else though so ... I´ve had my share of optimizing DB systems (Postgresql & some MSSQL) and we are running a cassandra setup with spark at my current work, but faf is not really running on a standard setup, you would normally have far more ram, faster disks and dedicated machines (DB on its own machine with fast network).
maov
Crusader
 
Posts: 20
Joined: 31 Aug 2014, 00:06
Has liked: 2 times
Been liked: 1 time


Return to Contributors

Who is online

Users browsing this forum: No registered users and 1 guest