Software:Speedment

From HandWiki
Jump to: navigation, search
Speedment, Inc.
ICON-logo2.png
Stable release
OSS 3.0.x
Enterprise 1.1.x
Development statusActive
Written inJava 8+
Operating systemCross Platform
TypeObject-relational mapping, In-JVM-Memory Acceleration
LicenseDual License: Apache 2.0 and Commercial
Websitespeedment.com

Speedment is a Java stream ORM developed by the team at Speedment, Inc. It is an open source tool hosted at Github[1] that uses Java 8 streams[2] to develop relational database applications. Speedment is available under the Apache 2-license. Speedment also licenses extensions under closed-source commercial terms.[3] Speedment is implemented in Java and accessible from software written in other languages that works on the JVM i.e. Scala and Kotlin.

History

Version 0.1, was a part of the cloud music service Chilirec.[4]

June, 2010 Enterprise Version 1.0[5] was released. Current release Alma 1.1.1[6] was launched Sep 8th, 2017.

Speedment Open Source Software was launched on GitHub 2015:

  • June 11, 2015: 2.0.0 Hawthorne Early Access[7]
  • September 4, 2015: 2.1.0 Everett[8]
  • October 18, 2016: 3.0.0 Forest[9]

Technology

Speedment is a Java 8 Stream ORM Toolkit and Runtime.[10] The toolkit analyzes the metadata of an existing relational database and creates a Java representation of the data model which together with the Speedment runtime allows the user to create Java applications using Java 8 streams without any specific query language or API.[11] There is a resemblance between Java streams and SQL which is exemplified in the following table[12]

SQL Java 8 Stream Equivalent
FROM stream()
SELECT map()
WHERE filter() (before collecting)
HAVING filter() (after collecting)
JOIN flatMap()
DISTINCT distinct()
UNION concat(s0, s1).distinct()
ORDER BY sorted()
OFFSET skip()
LIMIT limit()
GROUP BY collect(groupingBy())
COUNT count()

Licensing and edition

Speedment is available as an open source and an enterprise edition. The open source edition is limited to open source databases. The enterprise edition, which requires a proprietary license, adds on commercial databases (Oracle, DB2, DB2/400 and Microsoft SQL Server) as well as Avro-files.[13] It also includes an in-JVM-memory data store.

Speedment, Inc.

Speedment was founded by the serial-entrepreneurs Carina Dreifeldt[14] (CEO) and Per Minborg [15](CTO) in 2010. It is a spin-off from the music service Chilirec.[4]

Speedment, Inc. is headquartered in Palo Alto, CA, USA in Silicon Valley.

See also

References

  1. "Search: Java ORM". 13 Dec 2017. https://github.com/search?q=java+stream+orm&ref=opensearch. 
  2. Urma, Raoul-Gabriel (April 2014). "Processing Data with Java SE 8 Streams, Part 1". http://www.oracle.com/technetwork/articles/java/ma14-java-se-8-streams-2177646.html. 
  3. "Speedment Closed Source Features". https://www.speedment.com/pricing/. 
  4. 4.0 4.1 "Chilirec Is Like TiVo for Internet Radio". https://techcrunch.com/2008/04/24/chilirec-is-like-tivo-for-internet-radio/. 
  5. "Frametwist Office 2010 Tutorial Launch powered by Speedment". http://news.cision.com/se/frametwist-ab/r/microsoft-valjer-frametwists-utbildningsfilmer-infor-lansering-av-nya-office-2010,c498252. 
  6. "New Speedment Release Alma". Sep 8, 2017. https://twitter.com/Speedment/status/906121532346421248. 
  7. "Hawthorne Early Access". https://github.com/speedment/speedment/releases/tag/2.0.0-EA. 
  8. "Everett 2.1.0". https://github.com/speedment/speedment/releases/tag/2.1.0. 
  9. "Forest 3.0.0". https://github.com/speedment/speedment/releases?after=3.0.1. 
  10. Lawesson, Dan PhD. "Speedment White Paper". https://speedment.com/wp-content/uploads/2017/03/Speedment-White-Paper_2017.pdf. 
  11. "Speedment User Guide". https://speedment.github.io/speedment-doc/. 
  12. Minborg, Per (May 2017). "Database Actions Using Java 8 Stream Syntax Instead of SQL". http://www.javamagazine.mozaicreader.com/MayJune2017/Default/1/0#&pageSet=34&page=0&contentItem=0. 
  13. "Speedment Avro Plugin". https://speedment.github.io/speedment-doc/enterprise_avro.html#top. 
  14. "LinkedIn Carina Dreifeldt". https://www.linkedin.com/in/carina-dreifeldt-5641b1a/. 
  15. "LinkedIn Per Minborg". https://www.linkedin.com/in/minborg/.