opentsdb bigtable
play

OpenTSDB + Bigtable Integrating time series database with Google - PowerPoint PPT Presentation

OpenTSDB + Bigtable Integrating time series database with Google Cloud Bigtable Danil Zburivsky, Big Data Practice Lead - @zburivsky Christos Soulios, Big Data Architect - @c_soulios Pythian specializes in design, implementation, and management


  1. OpenTSDB + Bigtable Integrating time series database with Google Cloud Bigtable Danil Zburivsky, Big Data Practice Lead - @zburivsky Christos Soulios, Big Data Architect - @c_soulios

  2. Pythian specializes in design, implementation, and management of systems that directly contribute to revenue and business success. History 19 years in business Growing at 30+% per year 400+ employees 300+ customers worldwide HQ Ottawa, Canada - global reach Technology agnostic = trusted advisor Deep expertise: Oracle, Oracle Apps, MySQL, AWS, SQL Server, Cassandra/DataStax, Azure, PostgreSQL, Cloudera, MapR, Hortonworks etc. Google Premier Partner Status (as of end Aug) 5 Certified Developers (soon to be 12) Dedicated Google Technical Champion Launch partner for: Kubernetes, Dataflow, Cloud SQL, Dataproc Integrated OpenTSDB with Bigtable DW Explorers Program Partner Upcoming BigQuery & Cloud ML Launch Partner

  3. Time series data • (time, metric, value) • OS and apps metrics • Industrial equipment • Web traffic

  4. Storing time series data is a challenge • Volume can be explosive • Data arrival and access patterns are different

  5. Storing time series data is a challenge • Volume can be explosive • Data arrival and access patterns are different

  6. Better alternatives — specialized stores • NoSQL • Data model and storage optimized for time series • Separate query language

  7. OpenTSDB • Open source • Uses HBase as a data store • Data model optimized for time series • REST API <metric_uid><timestamp><tagk1><tagv1>[...<tagkN><tagvN>] <col_t+1>[...<col_t+N>]

  8. OpenTSDB Architecture Server Server Server Server TSD RPC HTTP TSD TSD Web UI TSD RPC Scripts/Alerting HBase RPC HBase

  9. HBase can be too much • HBase requires a full Hadoop setup (3xZK, 2xNN, 3xDN, 2xHMaster, 3xHRegion) • HBase tuning is a job for the brave (HFiles, WAL, MemStore, BucketCache, BlockCache)

  10. HBase can be too much

  11. But all I wanted was a time series database

  12. Google Cloud Bigtable • Highly Scalable NoSQL database • Low latency, high throughput • Powers most Google products • Available as a Google Cloud Service

  13. Migrate HBase apps to Cloud Bigtable • The Bigtable client is API compatible with HBase client • Only replace hbase-client.jar with bigtable-hbase.jar • No code changes required!

  14. Migrate OpenTSDB to Cloud Bigtable • OpenTSDB does not use standard hbase-client.jar • OpenTSDB is based on AsyncHBase library

  15. AsyncHBase library • Open source HBase client library • Multi-threaded Multiple threads use the same instance • Fully asynchronous, non-blocking • Implements the low level HBase RPCs

  16. Detour: Asynchronous programming

  17. Detour: Why asynchronous? • Efficient thread usage • Less threads = less memory • CPU scheduler friendly • Extremely high concurrency

  18. AsyncHBase library http://www.tsunanet.net/~tsuna/asynchbase/benchmark/viz.html

  19. AsyncHBase library “ AsyncHBase client differs significantly from HBase's client . Switching to it is not easy as it requires to rewrite all the code that was interacting with any HBase API” AsyncHBase documentation

  20. AsyncBigtable library ● Complete rewrite of AsyncHBase API ● Uses standard hbase-client for Bigtable access ● Compatible with the bigtable-hbase API

  21. AsyncBigtable challenges ● OpenTSDB jar dependencies ● AsyncBigtable is not async! ● BufferedMutator + Threadpool to emulate async

  22. AsyncBigtable library

  23. AsyncBigtable library ● Merged upstream OpenTSDB v2.3.0 ● http://opentsdb.net/docs/build/html/user_guide/backend s/bigtable.html ● https://github.com/OpenTSDB/asyncbigtable

  24. Future work ● Native Bigtable API ● Fully asynchronous ● Improve performance ● Add more unit tests

  25. Questions? https://github.com/opentsdb/asyncbigtable

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend