Giter Site home page Giter Site logo

avlizer's Introduction

avlizer - Avro Serializer for Erlang

avlizer is built on top of erlavro The design goal of this application is to provide APIs for users to serialize or deserialize data with minimal overhead of schema management.

Integrations

Confluent Schema Registry

Confluent schema registry provides REST APIs for schema registration and lookups.

Config

Make sure schema registry URL is present in sys.config as below

{avlizer, [{avlizer_confluent, #{schema_registry_url => URL}}]}

Or set os env variable:

AVLIZER_CONFLUENT_SCHEMAREGISTRY_URL

Authentication support

avlizer currently supports Basic authentication mechanism, to use it make sure schema_registry_auth tuple {Mechanism, File}, is present in sys.config, where File is the path to a text file which contains two lines, first line for username and second line for password

{avlizer, [{avlizer_confluent, #{
    schema_registry_url => URL, 
    schema_registry_auth => {basic, File}}
}]}

Or set authorization env variables:

AVLIZER_CONFLUENT_SCHEMAREGISTRY_AUTH_MECHANISM

AVLIZER_CONFLUENT_SCHEMAREGISTRY_AUTH_USERNAME

AVLIZER_CONFLUENT_SCHEMAREGISTRY_AUTH_PASSWORD

avlizer's People

Contributors

alfua avatar chriseyre2000 avatar dszoboszlay avatar gabrielgiordan avatar jesperes avatar k32 avatar mikpe avatar qzhuyan avatar zmstone avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

avlizer's Issues

FR: Allow passing decode options to avlizer_confluent:make_decoder & avlizer_confluent:decode

Hi!

The underlying erlavro library allows specifying codec_options for the decoder however avlizer has no way to pass those options to the decoder and defaults to [{encoding, avro_binary}]. I would like to propose extending avlizer_confluent:make_decoder/n and avlizer_confluent:decode/n API and allowing passing those options as that would allow for a more versatile usage of the library.

According to my initial observations that should not be a difficult thing to implement and given approval, I would volunteer for creating a PR

Get encoder with schema id registry added in result

Currently, there is no possible way to get an encoder that can encode the pass object and add schema id together. If we had to do it currently it's 2 steps.

  1. encode function to encode data
  2. tag_data function to append the schema id.

Purposed approach
Merge these 2 steps into 1 and return only 1 encoder. Which client can use directly.

PS: I would like to raise PR with this feature.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.