Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I am currently in a similar situation, and since I have some experience with web development and SQL databases, I took it as an opportunity to work with MongoDB, Cashbah (and <a href="http://www.scalatra.org/">Scalatra</a>). My experience is still very limited and the project and the amount of data I am working with is pretty small, but here are a few observations I've made.</p> <ul> <li><p>For the few sets of data I have, performance does not seem to motivate either SQL or NoSQL. However, performance in the presence of huge amounts of data is often listed as a reason for using NoSQL, e.g., <a href="http://en.wikipedia.org/wiki/NoSQL">by Wikipedia</a></p></li> <li><p>My documents (entries in the database) arise from benchmarking test suits, and mainly have a static structure, and I am optimistic that I could store them in a fixed-schema SQL database. However, a few substructures are not static, e.g., new test cases are added, new statistics are tracked, others are removed. This was my main motivation for trying a schema-free NoSQL database. Also, because I had the feeling that the document approach of MongoDB makes it much more obvious which data belongs together (i.e., to a document), in contrast to entries in a relational database, where the data would be distributed over various tables and rows, and where a full "document" would need to be reconstructed by joins.</p></li> <li><p>Tools such as <a href="https://github.com/lift/lift/tree/master/framework/lift-base/lift-json/">Lift-Json</a> or <a href="https://github.com/foursquare/rogue">Rogue</a> allow you to work with regular Scala objects in a type-safe, although the data is regularly (de-)serialised as (from) JSON. However, this naturally works best if the structure of your data is mainly static, otherwise, you you are left with using strings to access your data (e.g., for expanding the results of a query using Cashbah).</p></li> </ul> <p><br/><br/> If you are mainly concerned about a coherent representation of data on server and client side, languages such as <a href="http://www.opalang.org/">Opa</a> or <a href="http://haxe.org/">Haxe</a> might be of interest, since they compile to code that can executed on both sides. See <a href="https://github.com/jashkenas/coffee-script/wiki/List-of-languages-that-compile-to-JS">this page</a> for "multitarget" or "tierless" languages.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload