Facebook开源的时序数据库存储引擎Beringei.zip

  • R6_691411
    了解作者
  • 577.8KB
    文件大小
  • 文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-06-11 13:59
    上传日期
Beringei 是一个高性能的、内存型的时序数据库存储引擎。时间序列通常用作统计,仪表和计数器的表示,用于监视系统的性能和运行状况。Beringei 有以下特性:支持非常快的内存存储,由磁盘支持持久化非常高效的流压缩算法引入分层服务,包括客户端的实现引入 http 服务实现,能直接集成 GrafanaBeringei 在 Ubuntu 16.10 上经过测试和工作
beringei-master.zip
内容介绍
** THIS REPO HAS BEEN ARCHIVED AND IS NO LONGER BEING ACTIVELY MAINTAINED ** # Beringei [![CircleCI](https://circleci.com/gh/facebookincubator/beringei/tree/master.svg?style=svg)](https://circleci.com/gh/facebookincubator/beringei/tree/master) A high performance, in memory time series storage engine In the fall of 2015, we published the [paper “Gorilla: A Fast, Scalable, In-Memory Time Series Database”](http://www.vldb.org/pvldb/vol8/p1816-teller.pdf) at VLDB 2015. Beringei is the open source representation of the ideas presented in this paper. Beringei is a high performance time series storage engine. Time series are commonly used as a representation of statistics, gauges, and counters for monitoring performance and health of a system. ## Features Beringei has the following features: * Support for very fast, in-memory storage, backed by disk for persistence. Queries to the storage engine are always served out of memory for extremely fast query performance, but backed to disk so the process can be restarted or migrated with very little down time and no data loss. * Extremely efficient streaming compression algorithm. Our streaming compression algorithm is able to compress real world time series data by over 90%. The delta of delta compression algorithm used by Beringei is also fast - we see that a single machine is able to compress more than 1.5 million datapoints/second. * Reference sharded service implementation, including a client implementation. * Reference http service implementation that enables direct Grafana integration. ## How can I use Beringei? Beringei can be used in one of two ways. 1. We have created a simple, sharded service, and reference client implementation, that can store and serve time series query requests. 1. You can use Beringei as an embedded library to handle the low-level details of efficiently storing time series data. Using Beringei in this way is similar to [RocksDB](https://rocksdb.org) - the Beringei library can be the high performance storage system underlying your performance monitoring solution. ## Requirements Beringei is tested and working on: * Ubuntu 16.10 We also depend on these open source projects: * [fbthrift](https://github.com/facebook/fbthrift) * [folly](https://github.com/facebook/folly) * [wangle](https://github.com/facebook/wangle) * [proxygen](https://github.com/facebook/proxygen) * [gtest](https://github.com/google/googletest) * [gflags](https://github.com/gflags/gflags) ## Building Beringei Our instructions are for Ubuntu 16.10 - but you will probably be able to modify the install scripts and directions to work with other linux distros. - Run `sudo ./setup_ubuntu.sh`. - Build beringei. ``` mkdir build && cd build && cmake .. && make ``` - Generate a beringei configuration file. ``` ./beringei/tools/beringei_configuration_generator --host_names $(hostname) --file_path /tmp/beringei.json ``` - Start beringei. ``` ./beringei/service/beringei_main \ -beringei_configuration_path /tmp/beringei.json \ -create_directories \ -sleep_between_bucket_finalization_secs 60 \ -allowed_timestamp_behind 300 \ -bucket_size 600 \ -buckets $((86400/600)) \ -logtostderr \ -v=2 ``` - Send data. ``` while [[ 1 ]]; do ./beringei/tools/beringei_put \ -beringei_configuration_path /tmp/beringei.json \ testkey ${RANDOM} \ -logtostderr -v 3 sleep 30 done ``` - Read the data back. ``` ./beringei/tools/beringei_get \ -beringei_configuration_path /tmp/beringei.json \ testkey \ -logtostderr -v 3 ``` ## License Beringei is BSD-licensed. We also provide an additional patent grant.
评论
    相关推荐
    • CProgrammingNotes:这是Facebook C编程组的C存储
      #C编程说明 小组的注意事项: :
    • DeleteFB:自动清理您的Facebook状态
      我无法保证Facebook不会将数据永远存储在冷存储中。 但是,此工具的目的更多是为了清理您的在线形象,而不必担心您几年前写的内容。 就我个人而言,我这样做是为了减少与我的Facebook个人资料的联系(因此感到需要...
    • Facebook的WindowsSDKwinsdkfb.zip
      winsdkfb 是为 Facebook 准备的 Windows SDK,允许开发者集成 Facebook 到 Windows 应用。支持功能:认证登录退出 登录按钮 资料图片控制 对话框反馈对话框 请求对话框 图像自定义存储回复用户反馈 上传图片 类似 ...
    • Facebook Fresco
      Fresco是Facebook最新推出的一款用于Android应用中展示图片的强大图片库,可以从网络、本地存储和本地资源中加载图片。其中的Drawees可以显示占位符,直到图片加载完成。而当图片从屏幕上消失时,会自动释放内存。
    • 下沉:使用Facebook个人资料照片为您的Google联系人提供高分辨率照片
      Sink将您的每个Google联系人与他们的Facebook个人资料链接起来,并存储这些链接以进行快速更新。 安装 要安装所需的依赖项,请运行以下命令。 这仅需要执行一次。 $ pip install -r requirements.txt Google OAuth...
    • facebook-clone
      用于和存储的多个后端。 富有表现力,直观的 。 数据库不可知。 。 。 Laravel易于访问,功能强大,并提供大型,强大的应用程序所需的工具。 学习Laravel Laravel拥有所有现代Web应用程序框架中最广泛,最...
    • Messer:Facebook Messenger的命令行消息传递
      Facebook Messenger的命令行消息传递 Messer是您的终端的功能丰富的Facebook Messenger客户端。 发送和接收消息,查看聊天记录等等! 安装 $ npm install -g messer 快速开始 需要node版本12.x 安装messer 运行...
    • Facebook-CryptD-Messages:Facebook的CryptD消息
      下载存储库中所有文件的zip版本 在任何地方提取下载的文件 打开您的Chromium或Chrome浏览器,然后转到“设置”>“扩展程序” 启用开发人员模式以能够添加解压缩的扩展 单击“加载解压缩的扩展名”按钮,然后导航到...
    • react-localstorage:Facebook的React的简单的组件化本地存储实现
      React本地存储 只需将组件的状态与localStorage同步(如果可用)。 这是一种老式的Mixin,这意味着它可能已经与您的React应用程序兼容了几年。 如果您是一位年轻的程序员,则可能更喜欢。 安装 npm i react-...
    • GaussDB_100_1.0.1-DATABASE-REDHAT-64bit.tar.gz
      guassdb100在redhat上安装包,单机部署的包,安装步骤请看我的文中介绍,经过大量实验搭建总结出来的文档