Starcounter

Last updated
Starcounter
Developer(s) Starcounter AB
Initial release2006
Stable release
2.3.2.930 / April 14, 2018;6 years ago (2018-04-14)
Written in C, C++, C#
Operating system Windows
Available inEnglish
Type In-memory application platform
License Proprietary
Website starcounter.com

Starcounter is an in-memory application platform built by Starcounter AB. The platform is based on a combined in-memory database engine and application server.

Contents

Technology

Starcounter architecture Starcounter architecture.png
Starcounter architecture

A combined in-memory database engine and application server keeps data in one place. This technology is called "virtual machine database management system", or VMDBMS. The patent related to the technology explains it this way:

In such a system, the environment is configured to maintain a database of objects in a database memory within the environment memory. An application executes in an application memory within the environment memory, and upon instantiation of a database object, the application environment allocates memory in the database for the database object, the database providing master storage for the database object. [1]

Tables and classes are the same as a consequence of the VMDBMS which lets the application and database be in the same virtual memory space. The implication of this is that there is no object-relational mapper (ORM). Instead, the database is directly accessed using SQL-like queries called NewSQL from the application code. [2]

A major drawback with in-memory databases is that main memory is volatile and does therefore not ensure durability. The solution to this, which Starcounter utilizes, is to write transaction logs to a disk the same way it's done in traditional SQL databases. [3] If data needs to be recovered, it's possible to do so by going back in the transaction logs. [4]

The database maintains ACID compliance by using transactional scope and transactional memory which allows for long-running transactions, nested transactions, and parallel transactions. [2]

Starcounter uses a Model–View–ViewModel (MVVM) pattern where the view model is hosted on the server. The server-side code is written using C# since the platform is making use of the .NET framework. [5] [6] The communication between the client and the server is done using a thin client library that sends JSON-patches. The recommended way to build the view in Starcounter applications is to use HTML, CSS, Polymer, and Web Components, with as little logic as possible on the client side.

Similar software

Starcounter can be likened by Oracle's TimesTen in-memory database and SAP HANA. What these have in common is that they are all based on in-memory technology and are often targeted towards customers that use real-time applications. The main difference is the way the database management system is integrated. SAP HANA makes use of a column-oriented database management system. TimesTen, on the other hand, uses a relational database management system (RDBMS). Starcounter is unique in that it uses an object-oriented approach that is integrated with the application (VMDBMS) with an underlying RDMBS . [4]

History

Starcounter AB was established and started its development of Starcounter in 2006. It received $1.8 million in funding from a VC round led by Industrifonden in 2015 to continue the development. [7]

The Starcounter 2.0 beta version, which bundles a web application framework with the database, was released in August 2013. [8]

Starcounter AB was named a "Cool Vendor" in In-Memory Computing Technologies for 2015 by Gartner. [9]

In September 2017, Starcounter AB took in 35 million SEK in funding from existing investors and an anonymous investor. [10]

Also in September 2017, Starcounter AB won a 2.2 million Euro prize in the competition "SME Instrument - Open Disruptive Innovation Scheme" organized by Horizon 2020. [11]

Adoption

Starcounter is used for enterprise installations such as the supply chain management application used by the Swedish superstore Gekås Ullared. [12]

Related Research Articles

<span class="mw-page-title-main">IBM Db2</span> Relational model database server

Db2 is a family of data management products, including database servers, developed by IBM. It initially supported the relational model, but was extended to support object–relational features and non-relational structures like JSON and XML. The brand name was originally styled as DB2 until 2017, when it changed to its present form.

Mimer SQL is a proprietary SQL-based relational database management system produced by the Swedish company Mimer Information Technology AB, formerly known as Upright Database Technology AB. It was originally developed as a research project at the Uppsala University, Uppsala, Sweden in the 1970s before being developed into a commercial product.

ABAP is a high-level programming language created by the German software company SAP SE. It is currently positioned, alongside Java, as the language for programming the SAP NetWeaver Application Server, which is part of the SAP NetWeaver platform for building business applications.

A stored procedure is a subroutine available to applications that access a relational database management system (RDBMS). Such procedures are stored in the database data dictionary.

SAP ASE (Adaptive Server Enterprise), originally known as Sybase SQL Server, and also commonly known as Sybase DB or Sybase ASE, is a relational model database server developed by Sybase Corporation, which later became part of SAP SE. ASE was developed for the Unix operating system, and is also available for Microsoft Windows.

Btrieve is a transactional database software product. It is based on Indexed Sequential Access Method (ISAM), which is a way of storing data for fast retrieval. There have been several versions of the product for DOS, Linux, older versions of Microsoft Windows, 32-bit IBM OS/2 and for Novell NetWare.

<span class="mw-page-title-main">Virtuoso Universal Server</span> Computer software

Virtuoso Universal Server is a middleware and database engine hybrid that combines the functionality of a traditional relational database management system (RDBMS), object–relational database (ORDBMS), virtual database, RDF, XML, free-text, web application server and file server functionality in a single system. Rather than have dedicated servers for each of the aforementioned functionality realms, Virtuoso is a "universal server"; it enables a single multithreaded server process that implements multiple protocols. The free and open source edition of Virtuoso Universal Server is also known as OpenLink Virtuoso. The software has been developed by OpenLink Software with Kingsley Uyi Idehen and Orri Erling as the chief software architects.

<span class="mw-page-title-main">Sybase iAnywhere</span> Sybase subsidiary

Sybase iAnywhere, is a subsidiary of Sybase specializing in mobile computing, management and security and enterprise database software. SQL Anywhere, formerly known as SQL Anywhere Studio or Adaptive Server Anywhere (ASA), is the company's flagship relational database management system (RDBMS). SQL Anywhere powers popular applications such as Intuit, Inc.'s QuickBooks, and the devices of 140,000 census workers during the 2010 United States Census. The product's customers include Brinks, Kodak, Pepsi Bottling Group (PBG), MICROS Systems, Inc. and the United States Navy. In August 2008.

SAP SQL Anywhere is a proprietary relational database management system (RDBMS) product from SAP. SQL Anywhere was known as Sybase SQL Anywhere prior to the acquisition of Sybase by SAP.

SAP IQ is a column-based, petabyte scale, relational database software system used for business intelligence, data warehousing, and data marts. Produced by Sybase Inc., now an SAP company, its primary function is to analyze large amounts of data in a low-cost, highly available environment. SAP IQ is often credited with pioneering the commercialization of column-store technology.

Microsoft SQL Server is a proprietary relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which may run either on the same computer or on another computer across a network. Microsoft markets at least a dozen different editions of Microsoft SQL Server, aimed at different audiences and for workloads ranging from small single-machine applications to large Internet-facing applications with many concurrent users.

An embedded database system is a database management system (DBMS) which is tightly integrated with an application software; it is embedded in the application. It is a broad technology category that includes:

Polyhedra is a family of relational database management systems offered by ENEA AB, a Swedish company. The original version of Polyhedra was an in-memory database management system which could be used in high availability configurations; in 2006 Polyhedra Flash DBMS was introduced to allow databases to be stored in flash memory. All versions employ the client–server model to ensure the data are protected from misbehaving application software, and they use the same SQL, ODBC and type-4 JDBC interfaces. Polyhedra is targeted primarily for embedded use by Original Equipment Manufacturers (OEMs), and big-name customers include Ericsson, ABB, Emerson, Lockheed Martin, United Utilities and Siemens AG.

Database activity monitoring is a database security technology for monitoring and analyzing database activity. DAM may combine data from network-based monitoring and native audit information to provide a comprehensive picture of database activity. The data gathered by DAM is used to analyze and report on database activity, support breach investigations, and alert on anomalies. DAM is typically performed continuously and in real-time.

A cloud database is a database that typically runs on a cloud computing platform and access to the database is provided as-a-service. There are two common deployment models: users can run databases on the cloud independently, using a virtual machine image, or they can purchase access to a database service, maintained by a cloud database provider. Of the databases available on the cloud, some are SQL-based and some use a NoSQL data model.

SafePeak Technologies is a software company founded in 2007 in Israel. It markets products for big data related to relational database management systems.

<span class="mw-page-title-main">Actian Zen</span>

Actian Zen is an ACID-compliant, zero-DBA, embedded, nano-footprint, multi-model, Multi-Platform database management system (DBMS). It was originally developed by Pervasive Software, which was acquired by Actian Corporation in 2013.

<span class="mw-page-title-main">SAP HANA</span> Database management system by SAP

SAP HANA is an in-memory, column-oriented, relational database management system developed and marketed by SAP SE. Its primary function as the software running a database server is to store and retrieve data as requested by the applications. In addition, it performs advanced analytics and includes extract, transform, load (ETL) capabilities as well as an application server.

The following outline is provided as an overview of and topical guide to MySQL:

SAP Business Technology Platform is a platform as a service developed by SAP SE that offers a suite of services including database and data management, AI, analytics, application development, automation and integration all running on one unified platform.

References

  1. Wester, Joachim; SE; Ohlsson, Erik; SE; Samuelsson, Per; SE; Idestam-Almquist, Peter; SE (October 7, 2014), United States Patent: 8856092 - Systems and methods for managing databases , retrieved 2016-11-15
  2. 1 2 Brankov, Bojan. "Starcounter - NoSQL (NewSQL)". www.geekstone.org. Retrieved 2016-11-15.
  3. "The Transaction Log (SQL Server)". msdn.microsoft.com. Retrieved 2016-11-30.
  4. 1 2 Crowther, Paul (2013). Concise Guide to Databases: A Practical Introduction. Springer International Publishing. pp. 192, 195. ISBN   978-1-4471-5601-7. Common misconceptions of slow population of in-memory databases and the only being available for single user systems were discussed and dismissed. However there is no one standard approach to their implementation which ranged from Oracles' TimesTen which was an in memory relational system, SAP HANA which used column based storage through to new players exemplified by Starcounter which used an object oriented approach effectively integrating an application with the database management system.
  5. "Starcounter Announces 'Fastest Consistent Database'". ADTmag. Retrieved 2016-11-15.
  6. "'Fastest Consistent Database' Claims MVVM Affinity". Visual Studio Magazine. Retrieved 2016-11-15.
  7. "Fast In-Memory Application Platform Starcounter Scores New Funding". Business Wire. Retrieved 2016-11-15.
  8. Chris Preimesberger (21 August 2013). "Newcomer Starcounter Updates High-Performance Database". eWeek.
  9. "Gartner Names Starcounter a "Cool Vendor" in In-Memory Computing Technologies for 2015". Business Wire. Retrieved 2016-11-15.
  10. "De vill bygga världens snabbaste databas – tar in 35 miljoner". digital.di.se. Retrieved 2017-09-21.
  11. "Svensk AI-startup vinner 20 miljoner i EU-tävling". Breakit (in Swedish). Retrieved 2017-09-21.
  12. "Starcounter's In-Memory Database Powers Supply Chain Management Application for Superstore Retailer". Business Wire. Retrieved 2016-11-21.