Guys, if you think the YAML or JSON would be better, how about
you provide us a brief example of how such configs are going to
look, so we can compare and see, if this ever have any sense.

Best Regards,
Igor

On Tue, May 15, 2018 at 4:20 PM, Ilya Kasnacheev <ilya.kasnach...@gmail.com>
wrote:

> Hello!
>
> Maybe we should take .Net configuration as a standard, extend it to JSON
> and YAML?
>
> <goog_787531833>
> https://apacheignite-net.readme.io/docs/configuration
>
> It should be fairly robust, and there's much less boilerplate.
>
> Regards,
>
>
>
> --
> Ilya Kasnacheev
>
> 2018-05-15 16:09 GMT+03:00 Pavel Kovalenko <jokse...@gmail.com>:
>
> > +1 to Dmitriy G. proposal.
> >
> > Since we're moving Ignite towards outside of Java world, we should
> > definitely care about config usability for users who are not familiar
> with
> > Java/Spring.
> > If we take a look at any of our XML-configs, we can see a lot of
> > boilerplate like "<bean class="">", "<property name="">" - terms which
> say
> > nothing to users outside of Java world.
> > When I see such configs my eyes are filled with bloody tears.
> >
> > I think we should really consider YAML as our additional approach to
> > configure Ignite with full replacement instead of XML in future.
> > Comparing to XML, YAML is significantly more human-readable and
> lightweight
> > format and has stable Java library to parse and translate config files to
> > Java objects without extra-magic.
> >
> > We can find a lot of famous projects which are using YAML: Apache Flink,
> > Apache Storm/Heron and one of the our main rivals - Apache Cassandra.
> >
> > Some of the projects use simple <property>=<name> config form (Kafka,
> > Spark), some of the projects use their own YAML-like format (Aerospike,
> > Tarantool), but it's really difficult to find such project which has so
> > heavy config as us (maybe VoltDB).
> >
> >
> >
> >
> >
> >
> > 2018-05-15 14:02 GMT+03:00 Andrey Gura <ag...@apache.org>:
> >
> > > Actually sometimes users ask about JSON configuration (e.g. was PR in
> > > vertx-ignite project). But it's non trivial task because it will
> > > require development of some DSL (or set of DSL's) and will make adding
> > > new configuration elements some kind of pain while we should be
> > > focused on basic functionality: data grid, persistence, etc.
> > >
> > > I just believe that configuration format is not so important aspect
> > > and this task is out of product scope.
> > >
> > >
> > >
> > > On Tue, May 15, 2018 at 12:56 PM, Dmitriy Setrakyan
> > > <dsetrak...@apache.org> wrote:
> > > > I still do not understand *why* do we need to add additional formats
> > for
> > > > the configuration. Can you please show me some users on the user@
> list
> > > or
> > > > stack overflow who asked for it? I just want to make sure that if we
> > are
> > > > creating work for ourselves, then someone actually needs it.
> > > >
> > > > D.
> > > >
> > > > On Tue, May 15, 2018 at 12:41 PM, Igor Sapego <isap...@apache.org>
> > > wrote:
> > > >
> > > >> I don't think we need to add new formats on server side as there may
> > > >> be a lot of different formats for different clients. On the other
> > hand,
> > > >> supporting additional formats may be non trivial and error-prone,
> > while
> > > >> adding little to a user experience.
> > > >>
> > > >> For clients, I see no problem in adding for example JSON -> XML
> > > >> converter on client side, if JS folks need it.
> > > >>
> > > >> For servers, adding another configuration format just to make it
> more
> > > >> familiar to users with no Java background seems unreasonable to me
> > > >> as well, as there still going to be Java class names in
> configuration
> > > >> and Spring approach in general.
> > > >>
> > > >> What will change is a XML formatting is going to change to JSON
> > > >> formatting, which has no much sense to me, as everyone know XML.
> > > >> It is Spring approach what can be confusing to non-Java users, and
> > > >> it is not going to change regardless of format.
> > > >>
> > > >> Best Regards,
> > > >> Igor
> > > >>
> > > >> On Tue, May 15, 2018 at 12:15 PM, Dmitriy Govorukhin <
> > > >> dmitriy.govoruk...@gmail.com> wrote:
> > > >>
> > > >> > Folks,
> > > >> >
> > > >> > I guess when work on a thin client will be completed, we get more
> > > >> newcomers
> > > >> > who use go/python/php/js.
> > > >> > And we can do ignite more friendly for them, support familiar
> > formats
> > > for
> > > >> > configuration.
> > > >> >
> > > >> > On Tue, May 15, 2018 at 12:13 PM, Dmitry Pavlov <
> > > dpavlov....@gmail.com>
> > > >> > wrote:
> > > >> >
> > > >> > > Hi Igniters,
> > > >> > >
> > > >> > > In general I aggree with adding new format, e.g. JSON is more
> > > popular
> > > >> > than
> > > >> > > XML for new applications.
> > > >> > >
> > > >> > > In the same time I've never heard that user asked this in the
> user
> > > >> list.
> > > >> > Or
> > > >> > > did I missed such topics?
> > > >> > >
> > > >> > > Sincerely,
> > > >> > > Dmitriy Pavlov
> > > >> > >
> > > >> > > вт, 15 мая 2018 г. в 9:31, Pavel Tupitsyn <ptupit...@apache.org
> >:
> > > >> > >
> > > >> > > > Dmitriy,
> > > >> > > >
> > > >> > > > We don't need to support different config formats on server in
> > > order
> > > >> to
> > > >> > > add
> > > >> > > > that to thin clients.
> > > >> > > >
> > > >> > > > Thin client protocol provides a way to create a cache with
> > custom
> > > >> > config
> > > >> > > > [1].
> > > >> > > > It is up to thin client library authors to use any config
> format
> > > they
> > > >> > > like
> > > >> > > > and then convert it into protocol-defined format.
> > > >> > > >
> > > >> > > > C# thin client uses custom format, for example, not Spring.
> > > >> > > >
> > > >> > > > [1]
> > > >> > > >
> > > >> > > > https://apacheignite.readme.io/docs/binary-client-
> > > >> > > protocol-cache-configuration-operations#section-op_cache_
> > > >> > > create_with_configuration
> > > >> > > >
> > > >> > > > On Mon, May 14, 2018 at 7:54 PM, Ivan Rakov <
> > > ivan.glu...@gmail.com>
> > > >> > > wrote:
> > > >> > > >
> > > >> > > > > Dmitry,
> > > >> > > > >
> > > >> > > > > We rely on Spring Framework when we start Ignite node from
> XML
> > > >> > > > > configuration. Spring doesn't easily support another formats
> > of
> > > >> > > > > configuration files. I think, the main reason for this is
> > > built-in
> > > >> > > > ability
> > > >> > > > > to validate configuration via XML Schema. We can surely hack
> > > this
> > > >> > > around
> > > >> > > > (I
> > > >> > > > > bet there are existing libraries for configuring Spring with
> > > JSON),
> > > >> > > but I
> > > >> > > > > don't think that anyone suffered from inability to
> statically
> > > >> > configure
> > > >> > > > > Ignite with json/yaml.
> > > >> > > > >
> > > >> > > > > Regarding thin clients: makes sense. I suppose necessary
> > > mappings
> > > >> > will
> > > >> > > be
> > > >> > > > > implemented as a part of thin client.
> > > >> > > > >
> > > >> > > > > Best Regards,
> > > >> > > > > Ivan Rakov
> > > >> > > > >
> > > >> > > > >
> > > >> > > > > On 14.05.2018 18:58, Dmitriy Govorukhin wrote:
> > > >> > > > >
> > > >> > > > >> Hi, Igniters!
> > > >> > > > >>
> > > >> > > > >> As far as I know, many people work on a thin client for
> > > different
> > > >> > > > language
> > > >> > > > >> (go,js,php...).
> > > >> > > > >> Are there any reasons why ignite does not support yaml or
> > json
> > > >> > format
> > > >> > > > for
> > > >> > > > >> configuration? or some other popular format?
> > > >> > > > >> In future, it can help to integrate with thin clients, for
> > > >> example,
> > > >> > js
> > > >> > > > >> client may want to dynamic cache start, he passes cache
> > > >> > configuration
> > > >> > > > (in
> > > >> > > > >> native format, for js it will json) through TCP, Ignite
> node
> > > >> unwrap
> > > >> > > and
> > > >> > > > >> remap to java representation and dynamic start cache.
> > > >> > > > >>
> > > >> > > > >>
> > > >> > > > >
> > > >> > > >
> > > >> > >
> > > >> >
> > > >>
> > >
> >
>

Reply via email to