Hi Pavel,

What you suggest looks promising: arbitrary object graph and platform
independence aspects in particular.

In IEP-54 we support only flat objects and only some standard types and
assume inner objects of custom types will be serialized to byte[] somehow
and their schema will not be managed by Ignite.
And, we want to offer some default serializers to make it easier for
end-user.

AFAIU, MsgPack is suitable for the purpose as we don't want to invent yet
another effective binary format.
With an additional code harness, we can write object schema (field names)
within the object itself.
Is it right?

I am just confused with "a schemaful way" and "field names are not
included" in the same sentence.


On Thu, Jun 17, 2021 at 4:46 PM Ivan Daschinsky <ivanda...@gmail.com> wrote:

> Also, it's well known use case of msgpack in the world of memory grids --
> tarantool.io uses msgpack for clients binary protocol [1]
> So writing connectors to tarantool is quite easy task.
>
> [1] --
> https://www.tarantool.io/en/doc/latest/dev_guide/internals/box_protocol/
>
> чт, 17 июн. 2021 г. в 16:15, Pavel Tupitsyn <ptupit...@apache.org>:
>
> > Ivan,
> >
> > > Have you considered format with schema?
> >
> > 1. We should be able to serialize arbitrary user data on the client side.
> >     I think we don't want to require extra steps from the user.
> >
> > 2. MsgPack can be also used in a schemaful way, when user objects are
> > written as arrays, not as maps - so that field names are not included.
> >
> >
> > > we should benchmark formats thoroughly
> >
> > Strictly speaking, the IEP is about the format (the spec), not about the
> > implementation.
> > The format itself is simple and efficient, there is nothing to make it
> > slower than anything else.
> > C# impl proves this by beating every competitor [1].
> >
> >
> > > Could you please share your code for benchmarks?
> >
> > The code is linked in the IEP [2]
> >
> >
> > [1]
> >
> >
> https://aloiskraus.wordpress.com/2019/09/29/net-serialization-benchmark-2019-roundup/
> > [2] https://github.com/apache/ignite/pull/9178
> >
> > On Thu, Jun 17, 2021 at 4:02 PM Ivan Daschinsky <ivanda...@gmail.com>
> > wrote:
> >
> > > Could you please share your code for benchmarks?
> > >
> > > чт, 17 июн. 2021 г. в 15:56, Ivan Daschinsky <ivanda...@gmail.com>:
> > >
> > > > Hi, Pavel. Have you considered format with schema? Or schemaless of a
> > > > candidate format was  a prerequisite?
> > > > As for me, msgpack is great, but I suppose that we should benchmark
> > > > formats thoroughly. And not only for Java.
> > > >
> > > > чт, 17 июн. 2021 г. в 15:29, Pavel Tupitsyn <ptupit...@apache.org>:
> > > >
> > > >> Igniters,
> > > >>
> > > >> I have drafted an IEP on thin client serialization format [1],
> > > >> please review and let me know what you think.
> > > >>
> > > >> [1]
> > > >>
> > > >>
> > >
> >
> https://cwiki.apache.org/confluence/display/IGNITE/IEP-75+Thin+Client+Serialization
> > > >>
> > > >
> > > >
> > > > --
> > > > Sincerely yours, Ivan Daschinskiy
> > > >
> > >
> > >
> > > --
> > > Sincerely yours, Ivan Daschinskiy
> > >
> >
>
>
> --
> Sincerely yours, Ivan Daschinskiy
>


-- 
Best regards,
Andrey V. Mashenkov

Reply via email to