Gizzard (Scala framework)
{{Infobox software
| name = Gizzard
| logo =
| screenshot =
| caption = A framework for creating distributed datastores.
| collapsible =
| author = Robey Pointer, Nick Kallen, Ed Ceaser, Matt Freels, John Kalucki from Twitter
| developer = Twitter
| released = {{Start date|2010|04}}
| discontinued = yes
| latest release version = 3.0.2
| latest release date = {{Start date and age|2012|03|09}}{{cite web
| url = https://github.com/twitter-archive/gizzard/releases
| title = Releases · twitter-archive/gizzard
| website = github.com
| access-date = 2021-04-10
}}
| latest preview version =
| latest preview date =
| programming language = Scala, Java
| operating system =
| platform =
| size =
| language =
| genre = Database
| license = Apache License 2.0
| website = {{URL|https://github.com/twitter/gizzard}}
}}
Gizzard was an open source sharding framework to create custom fault-tolerant, distributed databases. It was initially used by Twitter and emerged from a wide variety of data storage problems. Gizzard operated as a middleware networking service that ran on the Java Virtual Machine. It managed partitioning data across arbitrary backend datastores, which allowed it to be accessed efficiently.{{Cite web|url=http://engineering.twitter.com/2010/04/introducing-gizzard-framework-for.html|title = English (US)}}{{Cite web|url=http://www.adweek.com/digital/twitter-open-sources-new-distributed-database-solution-gizzard/|title=Twitter Open Sources New Distributed Database Solution, Gizzard|date=7 April 2010 }} The partitioning rules were stored in a forwarding table that maps key ranges to partitions. Each partition managed its own replication through a declarative replication tree. Gizzard handled both physical and logical shards. Physical shards point to a physical database backend whereas logical shards are trees of other shards.{{Cite web|url=https://changelog.com/gizzard-twitter-just-sharded/|title=Gizzard - Twitter just sharded}} In addition Gizzard also supported migrations and gracefully handled failures. The system was made eventually consistent by requiring that all write operations are idempotent and commutative. As operations fail they are retried at a later time. Gizzard is available at GitHub and licensed under the Apache License 2.0.
See also
{{Portal|Free and open-source software}}
References
External links
- [https://github.com/twitter/gizzard/ Project Website]
{{DEFAULTSORT:Gizzard (Scala Framework)}}
Category:Free database management systems
Category:Free software programmed in Scala
Category:Software using the Apache license
{{database-software-stub}}