Best Database for High Speed and Web Integration

Discussion in 'Plugin Development' started by ccrama, Aug 15, 2014.

?

Which database should I choose?

  1. MySQL

    3 vote(s)
    37.5%
  2. SQLite

    0 vote(s)
    0.0%
  3. Foundation DB

    3 vote(s)
    37.5%
  4. MongoDB

    4 vote(s)
    50.0%
  5. Other (in comments)

    0 vote(s)
    0.0%
Multiple votes are allowed.
Thread Status:
Not open for further replies.
  1. Offline

    ccrama

    Hello Bukkit,
    I am in the midst of developing a backend for a network I am a part of, but am stumped on the many different options there are for data storage and retrieval. Here are my current choices and the pros/cons of each (afaik). Please feel free to weigh in on my decision process and help me choose the most useful system in my case.

    SQL:
    Mysql:​
    Pros: Relatively fast, very easy web integration​
    Cons: It has to travel through the web before it can store/retrieve values, adding instability​
    SQLite:​
    Pros: Lives within the server, very fast​
    Cons: Limited by speed of the machine's disk, hard web integration​
    NoSQL:
    FoundationDB:​
    Pros: Easy java integration, extremely fast, lives within the sever, new technology​
    Cons: Harder to implement on my site​
    MongoDB:​
    Pros: Relatively fast, Easy-ish web integration​
    Cons: Not very good Java API, travels through the web, not local.​

    If I got any of these pros/cons wrong, please feel free to correct me in the comments. Also feel free to weigh your opinions and other options that I have not considered yet.

    Thank you for your help,
    ccrama

    //EDIT: More info, I'm storing mainly numerical values, but will store the occasional string.
     
  2. Offline

    xXMaTTHDXx

    IMO if I'm storing player stats, such as kills, kdr, I use MySQL, I don't find the speed too bad, and it is relatively easy to program around and into your plugin.
     
  3. Offline

    SuperOmegaCow

    ccrama
    FoundationDB sounds the best for you, just put in a little bit extra effort for an amazing result.
     
  4. Offline

    RainoBoy97

    What do you not find good about the API? It's pretty straight forward.
    What do you mean by "travels through the web"? You can have local MongoDB databases.
     
  5. Offline

    ccrama


    Correct me if I'm wrong, but although it can be local, it still needs to run through localhost, separate from the Bukkit server
     
  6. Offline

    RainoBoy97

    ccrama
    Uh, not sure what you mean by "through localhost".
    MongoDB isn't made for Bukkit, so it will always run separately.
     
  7. Offline

    DevRosemberg

    Eh, well MongoDB has the best Java API i've ever seen. Way better than the FoundationDB and SQL ones. Even though if you are looking to code a Framework i'd recommend SQL for storing player information. If you need to synchronize for example Servers use MongoDB for that or Redis (even though i do not recommend it for that).
     
Thread Status:
Not open for further replies.

Share This Page