项目作者: henrytseng

项目描述 :
ActiveRecord Materialize.io database adapter based on Postgres adapter
高级语言: Ruby
项目地址: git://github.com/henrytseng/activerecord-materialize-adapter.git
创建时间: 2021-07-09T14:13:58Z
项目社区:https://github.com/henrytseng/activerecord-materialize-adapter

开源协议:MIT License

下载


ActiveRecord Materialize Adapter

Testing
Doc reference
Chat on Slack

An ActiveRecord adapter to connect to Materialize databases. The adapter includes support for materialized views as models supported by ActiveRecord::Base. Support for typical relational database tables are also supported but secondary.

Materialize is a streaming database for real-time applications. Materialize accepts input data from a variety of streaming sources (e.g. Kafka) and files (e.g. CSVs), and lets you query them using SQL.

https://materialize.com/

Usage

Add gem to your Gemfile

  1. gem 'activerecord-materialize-adapter'

Make sure you have the pg or a compatible gem installed. Update your database.yml

  1. production:
  2. reporting_analytics:
  3. adapter: materialize
  4. host: "materialize-database-host"
  5. port: "6875"
  6. database: "materialize_database_name"
  7. username: "materialize_user"

Gem is currently in an alpha state originally designed as a proof-of-concept.

Design

The ActiveRecord Materialize Adapter is heavily based on the PostgreSQL database adapter and also relies on the pg gem to be installed.

Read about Materialized architecture https://materialize.com/docs/overview/architecture/

Materialize has been designed to specifically solve problems with event streaming; therefore, some relational database functionality may not be supported.

Contributing

To contribute read the CONTRIBUTING.md first.

Fork the repository and create a pull request referencing tests and documentation.

A development stack can be setup with bin/build and tests can be run with bin/test.

Debugging with bin/materialize_psql and bin/psql allows you to connect directly with Materialize and PostgreSQL.

For testing and debugging a PostgreSQL configuration is available in postgres/postgresql.conf and pg_hba.conf.