greptimedb
numexpr
greptimedb | numexpr | |
---|---|---|
16 | 4 | |
3,781 | 2,140 | |
4.8% | 0.5% | |
9.9 | 8.2 | |
about 9 hours ago | 30 days ago | |
Rust | Python | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
greptimedb
- GreptimeDB: A fast and cost-effective alternative to InfluxDB
- Another distributed time-series database written in Rust
-
GreptimeAI + Xinference - Efficient Deployment and Monitoring of Your LLM Applications
GreptimeAI, built upon the open-source time-series database GreptimeDB, offers an observability solution for Large Language Model (LLM) applications, currently supporting both LangChain and OpenAI's ecosystem. GreptimeAI enables you to understand cost, performance, traffic and security aspects in real-time, helping teams enhance the reliability of LLM applications.
-
What's everyone working on this week (49/2023)?
Continuing to work hard on a new MetricEngine in GreptimeDB. BTW, If you have a keen interest in Rust or database development, GreptimeDB might be a good starting point. Check it out for some good first issues here.
-
Practical Tips for Refactoring Release CI using GitHub Actions
Since the very first day of GreptimeDB going open-source, it embraced the automated software building process with GitHub Actions, and leading to the inaugural Release Pipeline.
-
GreptimeCloud - A Fully Managed Serverless Prometheus Backend
Born from the open-source project GreptimeDB, GreptimeCloud serves as a fully-managed, serverless cloud backend for Prometheus, offering integrated support for remote read/write protocols and PromQL as one of our primary query languages.
-
Bridging Async and Sync Rust Code - A lesson learned while working with Tokio
Recently, while working on our GreptimeDB project, we encountered an issue with calling asynchronous Rust code in a synchronous context.
-
A Deep Dive into PromQL — Promql Parser v0.1.0 Written in Rust is Now Available
To explore data stored in GreptimeDB through PromQL, GreptimeDB needs to provide the ability to parse the query into AST (abstract syntax tree), and retrieve data from memory or disk via logical and physical plans. Since there is no ready-to-use PromQL Rust Parser, our team decides to develop it by ourselves. We’re glad to announce that promql-parser v0.1.0 is now available.
-
Extending Python with Rust
This is truly a fantastic combination -- implement the logic in Rust and use it in Python. GreptimeDB also implements a similar functionality that allows writing Python script to do post-process of SQL query results, with the help of RustPython and Arrow. Maybe this combination can bring a sweet point between performance and efficiency.
docs: https://docs.greptime.com/user-guide/coprocessor-and-scripti...
code: https://github.com/GreptimeTeam/greptimedb/tree/develop/src/...
numexpr
-
Making Python 100x faster with less than 100 lines of Rust
You can just slap numexpr on top of it to compile this line on the fly.
https://github.com/pydata/numexpr
- Extending Python with Rust
-
[D] How to avoid CPU bottlenecking in PyTorch - training slowed by augmentations and data loading?
Are you doing any costly chained NumPy operations in your preprocessing? E.g. max(abs(large_ary)), this produces multiple copies of your data, https://github.com/pydata/numexpr can greatly reduce time spent with such operations
-
Selection in pandas using query
What is not entirely obvious here is that under the hood you can install a nice library called numexpr (docs, src) that exists to make calculations with large NumPy (and pandas) objects potentially much faster. When you use query or eval, this expression is passed into numexpr and optimized using its bag of tricks. Expected performance improvement can be between .95x and up to 20x, with average performance around 3-4x for typical use cases. You can read details in the docs, but essentially numexpr takes vectorized operations and makes them work in chunks that optimize for cache and CPU branch prediction. If your arrays are really large, your cache will not be hit as often. If you break your large arrays into very small pieces, your CPU won’t be as efficient.
What are some alternatives?
risingwave - Cloud-native SQL stream processing, analytics, and management. KsqlDB and Apache Flink alternative. 🚀 10x more productive. 🚀 10x more cost-efficient.
pytorch-lightning - Build high-performance AI models with PyTorch Lightning (organized PyTorch). Deploy models with Lightning Apps (organized Python to build end-to-end ML systems). [Moved to: https://github.com/Lightning-AI/lightning]
cnosdb - A cloud-native open source distributed time series database with high performance, high compression ratio and high availability. http://www.cnosdb.cloud
pygfx - A python render engine running on wgpu.
FlashDB - An ultra-lightweight database that supports key-value and time series data | 一款支持 KV 数据和时序数据的超轻量级数据库
jnumpy - Writing Python C extensions in Julia within 5 minutes.
datafuse - An elastic and reliable Cloud Warehouse, offers Blazing Fast Query and combines Elasticity, Simplicity, Low cost of the Cloud, built to make the Data Cloud easy [Moved to: https://github.com/datafuselabs/databend]
jsmpeg - MPEG1 Video Decoder in JavaScript
corrosion - Gossip-based service discovery (and more) for large distributed systems.
poly-match - Source for the "Making Python 100x faster with less than 100 lines of Rust" blog post
rustDTW - Python extension backed by a multi-threaded Rust implementation of Dynamic Time Warping (DTW).
ruff - An extremely fast Python linter and code formatter, written in Rust.