Scalaris

作者: Thorsten Schütt , Florian Schintke , Alexander Reinefeld

DOI: 10.1145/1411273.1411280

关键词: Erlang (programming language)Data accessPeer-to-peerScalabilityCloud computingOverlay networkAsynchronous communicationDistributed computingComputer scienceDistributed transaction

摘要: We present Scalaris, an Erlang implementation of a distributed key/value store. It uses, on top structured overlay network, replication for data availability and majority based transactions consistency. In combination, this implements the ACID properties scalable overlay.By directly mapping keys to without hashing, arbitrary key-ranges can be assigned nodes, thereby allowing better load-balancing than would possible with traditional DHTs. Consequently, Scalaris tuned fast access by taking, e.g. nodes' geographic location or regional popularity certain into account. This improves Scalaris' lookup speed in datacenter cloud computing environments.Scalaris is implemented Erlang. describe software architecture, including transactional Java interface Scalaris.Additionally, we generic design pattern implement responsive server that serializes update operations common state, while concurrently performing asynchronous read requests same state.As proof-of-concept simplified Wikipedia frontend attached it store backend. challenging application. requires - besides thousands concurrent per seconds serialized, consistent write operations. For Wikipedia's category backlink pages, must consistently changed within transactions. discuss how these features are show its performance.

参考文章(13)
Ali Ghodsi, Luc Onana Alima, Seif Haridi, Symmetric replication for structured peer-to-peer systems databases information systems and peer to peer computing. pp. 74- 85 ,(2005) , 10.1007/978-3-540-71661-7_7
Avinash Lakshman, Prashant Malik, Cassandra: a structured storage system on a P2P network acm symposium on parallel algorithms and architectures. pp. 47- 47 ,(2009) , 10.1145/1583991.1584009
Rachid Guerraoui, Luis Rodrigues, None, Introduction to Reliable Distributed Programming ,(2006)
Md Mehedi Masud, Iluju Kiringa, Maintaining consistency in a failure-prone P2P database network during transaction processing Proceedings of the 2008 international workshop on Data management in peer-to-peer systems - DaMaP '08. pp. 27- 34 ,(2008) , 10.1145/1379350.1379355
Avinash Lakshman, Prashant Malik, Cassandra: structured storage system on a P2P network principles of distributed computing. pp. 5- 5 ,(2009) , 10.1145/1582716.1582722
Carl Hewitt, Peter Bishop, Richard Steiger, A universal modular ACTOR formalism for artificial intelligence international joint conference on artificial intelligence. pp. 235- 245 ,(1973)
R. Baldoni, R. Jimenez-Peris, M. Patino-Martinez, L. QuerzonI, A. Virgillito, Dynamic Quorums for DHT-based P2P Networks network computing and applications. pp. 91- 100 ,(2005) , 10.1109/NCA.2005.17
Thorsten Schütt, Florian Schintke, Alexander Reinefeld, A structured overlay for multi-dimensional range queries european conference on parallel processing. pp. 503- 513 ,(2007) , 10.1007/978-3-540-74466-5_54
Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, Werner Vogels, Dynamo Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles - SOSP '07. ,vol. 41, pp. 205- 220 ,(2007) , 10.1145/1294261.1294281