Abstract
NoSQL databases, such as HBase or Cassandra employ weak consistency models to provide good scalability and availability. However, they often lack functionality that would help programmers reason about the correctness of their applications. Notably, they do not support consistent batch operations that could be used for important tasks, such as batch updates or maintaining secondary indexes. Some systems add transaction support to NoSQL databases. However, they often bring much overhead to existing single-row operations. This paper proposes an efficient algorithm for supporting batch operations on existing NoSQL databases. It reuses the existing local timestamp and adds a global timestamp to ensure batch operations’ consistency. Our implementation based on HBase shows that compared to transactional systems, our algorithm improves the throughput of batch operations by up to 2\(\times \). Meanwhile, the latency of single-row operations only increases by around 12%. In comparison, other transactional systems increase their latency by over 3\(\times \).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Apache HBase. https://hbase.apache.org/. Accessed 30 June 2022
Apache HBase: Coprocessor introduction. https://blogs.apache.org/hbase/entry/coprocessor_introduction. Accessed 30 June 2022
Apache phoenix. https://phoenix.apache.org/. Accessed 30 June 2022
Apache tephra. https://tephra.incubator.apache.org/. Accessed 30 June 2022
Db-engines rankings. https://db-engines.com/. Accessed 30 June 2022
Hbase-TRX. https://github.com/hbase-trx/hbase-transactional-tableindexed. Accessed 30 June 2022
MongoDB. https://www.mongodb.com/. Accessed 30 June 2022
Bortnikov, E., et al.: Omid, reloaded: scalable and \(\{\)Highly-Available\(\}\) transaction processing. In: FAST 2017, pp. 167–180 (2017)
Chang, F., et al.: BigTable: a distributed storage system for structured data. TOCS 26(2), 1–26 (2008)
Cooper, B.F., Silberstein, A., Tam, E., Ramakrishnan, R., Sears, R.: Benchmarking cloud serving systems with YCSB. In: Proceedings of the 1st ACM Symposium on Cloud Computing, pp. 143–154 (2010)
Escriva, R., Wong, B., Sirer, E.G.: Hyperdex: a distributed, searchable key-value store. In: ACM SIGCOMM 2012, pp. 25–36 (2012)
Ferro, D.G., Junqueira, F., Kelly, I., Reed, B., Yabandeh, M.: Omid: lock-free transactional support for distributed data stores. In: IEEE ICDE, pp. 676–687 (2014)
Ferro, D.G., Junqueira, F., Kelly, I., Reed, B., Yabandeh, M.: Omid: lock-free transactional support for distributed data stores. In: ICDE, pp. 676–687. IEEE (2014)
Kejriwal, A., Gopalan, A., Gupta, A., Jia, Z., Yang, S., Ousterhout, J.: SLIK: Scalable low-latency indexes for a Key-Value store. In: USENIX ATC 2016, pp. 57–70 (2016)
Krechowicz, A., Deniziak, S., Łukawski, G.: Highly scalable distributed architecture for NOSQL datastore supporting strong consistency. IEEE Access (2021)
Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. ACM SIGOPS Oper. Syst. Rev. 44(2), 35–40 (2010)
Peng, D., Dabek, F.: Large-scale incremental processing using distributed transactions and notifications. In: USENIX OSDI (2010)
Qi, H., Chang, X., Liu, X., Zha, L.: The consistency analysis of secondary index on distributed ordered tables. In: 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pp. 1058–1067. IEEE (2017)
Rao, J., Shekita, E.J., Tata, S.: Using Paxos to build a scalable, consistent, and highly available datastore. VLDB 4(4), 1–14 (2011)
Shacham, O., Gottesman, Y., Bergman, A., Bortnikov, E., Hillel, E., Keidar, I.: Taking Omid to the clouds: fast, scalable transactions for real-time cloud analytics. VLDB 11(12), 1795–1808 (2018)
Sivasubramanian, S.: Amazon DynamoDB: a seamlessly scalable non-relational database service. In: ACM SIGMOD 2012, pp. 729–730 (2012)
Tu, S., Zheng, W., Kohler, E., Liskov, B., Madden, S.: Speedy transactions in multicore in-memory databases. In: ACM SOSP 2013, pp. 18–32 (2013)
Acknowledgements
We appreciate the anonymous reviewers for their constructive feedback and suggestions.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 IFIP International Federation for Information Processing
About this paper
Cite this paper
Yu, Q., Zhou, J. (2022). Consistent and Efficient Batch Operations for NoSQL Databases with Hybrid Timestamp. In: Liu, S., Wei, X. (eds) Network and Parallel Computing. NPC 2022. Lecture Notes in Computer Science, vol 13615. Springer, Cham. https://doi.org/10.1007/978-3-031-21395-3_31
Download citation
DOI: https://doi.org/10.1007/978-3-031-21395-3_31
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-21394-6
Online ISBN: 978-3-031-21395-3
eBook Packages: Computer ScienceComputer Science (R0)