hash-db
fugue
hash-db | fugue | |
---|---|---|
5 | 11 | |
50 | 1,880 | |
- | 1.4% | |
0.0 | 6.4 | |
over 1 year ago | 5 days ago | |
Python | Python | |
- | Apache License 2.0 |
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.
hash-db
-
CRDT-richtext: Rust implementation of Peritext and Fugue
https://github.com/samsquire/hash-db
I need to combine the ideas in each of these projects into a cohesive solution.
I did some work on trying to implement the YATA algorithm, poorly.
-
Ask HN: How do you test SQL?
From an SQL database implementation perspective, in my toy Python barebones SQL database that barely supports inner joins (https://github.com/samsquire/hash-db) I tested by testing on postgresql and seeing if my query with two joins produces the same results.
I ought to produce unit tests that prove that tuples from each join operation produces the correct dataset.
For a user perspective, I guess you could write some tooling that loads example data into a database and does an incremental join with each part of the join statement added.
-
Bullshit Graph Database Performance Benchmarks
I wrote a toy dynamodb, SQL, Cypher graph and document storage database engine in Python for the learning.
https://github.com/samsquire/hash-db
- Experimental distributed keyvalue database (it uses python dictionaries) imitating dynamodb querying with join only SQL support, distributed joins and simple Cypher graph support
-
How necessary are the programming fundamentals?
I am interested in database internals. Btrees come up with regard to designing database systems that are efficient to query on disk. Postgres uses them for its indexes. Radix trees are memory efficient tries which are useful for answering prefix queries. They're also called prefix trees. I use them to get a list of prefixes of a string. Useful for simple intellisense style forms or dynamodb style querying. I've also been studying LSM trees which are used in Leveldb and RocksDB.
I experiment with database technology in my experimental project hash-db https://github.com/samsquire/hash-db The code should be readable.
I need to change my search tree to be self balancing currently it grows to the left or right without balancing. I think I need to use tree rotation depending on which branch has the highest height.
fugue
- FLaNK Stack Weekly 22 January 2024
-
Daft: A High-Performance Distributed Dataframe Library for Multimodal Data
Please integrate it with Fugue.
https://github.com/fugue-project/fugue
- Fugue: A unified interface for distributed computing
- [Discussion] Open Source beats Google's AutoML for Time series
- Ask HN: How do you test SQL?
-
Replacing Pandas with Polars. A Practical Guide
Fugue is an interesting library in this space , though I haven’t tried it
https://github.com/fugue-project/fugue
A unified interface for distributed computing. Fugue executes SQL, Python, and Pandas code on Spark, Dask and Ray without any rewrites.
-
The hand-picked selection of the best Python libraries and tools of 2022
fugue — distributed computing done easy
-
[P] Open data transformations in Python, no SQL required
This looks similar to fugue, am I right? How do they compare?
-
What the Duck?!
I am looking forward to how Substrait could help removing this friction. It aims to provide a standardised intermediate query language (lower level than SQL) to connect frontend user interfaces like SQL or data frame libraries with backend analytical computing engines. It is linked to the Arrow ecosystem. Something like Ibis or Fugue could become the front and DuckDB the backend engine.
-
Pyspark now provides a native Pandas API
There's dask-sql, but I think it is being abandoned for fugue-project. I'm actually excited for this project as it is trying to provide a backend agnostic solution, which would seem like a difficult, lofty goal. I wish them luck.
What are some alternatives?
electric - Local-first sync layer for web and mobile apps. Build reactive, realtime, local-first apps directly on Postgres.
modin - Modin: Scale your Pandas workflows by changing a single line of code
kuzu - Embeddable property graph database management system built for query speed and scalability. Implements Cypher.
data-science-ipython-notebooks - Data science Python notebooks: Deep learning (TensorFlow, Theano, Caffe, Keras), scikit-learn, Kaggle, big data (Spark, Hadoop MapReduce, HDFS), matplotlib, pandas, NumPy, SciPy, Python essentials, AWS, and various command lines.
dbt-unit-testing - This dbt package contains macros to support unit testing that can be (re)used across dbt projects.
Optimus - :truck: Agile Data Preparation Workflows made easy with Pandas, Dask, cuDF, Dask-cuDF, Vaex and PySpark
ustore - Multi-Modal Database replacing MongoDB, Neo4J, and Elastic with 1 faster ACID solution, with NetworkX and Pandas interfaces, and bindings for C 99, C++ 17, Python 3, Java, GoLang 🗄️
mlToolKits - learningOrchestra is a distributed Machine Learning integration tool that facilitates and streamlines iterative processes in a Data Science project.
pg_crdt - POC CRDT support in Postgres
ploomber - The fastest ⚡️ way to build data pipelines. Develop iteratively, deploy anywhere. ☁️
data-diff - Compare tables within or across databases
xarray - N-D labeled arrays and datasets in Python