Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 8DDE1200B5B for ; Fri, 22 Jul 2016 06:32:48 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 8C66D160A7C; Fri, 22 Jul 2016 04:32:48 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id D36D9160A73 for ; Fri, 22 Jul 2016 06:32:47 +0200 (CEST) Received: (qmail 66789 invoked by uid 500); 22 Jul 2016 04:32:47 -0000 Mailing-List: contact user-help@ignite.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@ignite.apache.org Delivered-To: mailing list user@ignite.apache.org Received: (qmail 66779 invoked by uid 99); 22 Jul 2016 04:32:46 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 22 Jul 2016 04:32:46 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 768A0C15F7 for ; Fri, 22 Jul 2016 04:32:46 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 2.173 X-Spam-Level: ** X-Spam-Status: No, score=2.173 tagged_above=-999 required=6.31 tests=[DKIM_ADSP_CUSTOM_MED=0.001, NML_ADSP_CUSTOM_MED=1.2, RCVD_IN_DNSWL_NONE=-0.0001, SPF_SOFTFAIL=0.972] autolearn=disabled Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id scQ1iyB1jJkt for ; Fri, 22 Jul 2016 04:32:44 +0000 (UTC) Received: from mbob.nabble.com (mbob.nabble.com [162.253.133.15]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with ESMTP id EFCE460D17 for ; Fri, 22 Jul 2016 04:32:43 +0000 (UTC) Received: from malf.nabble.com (unknown [162.253.133.59]) by mbob.nabble.com (Postfix) with ESMTP id D92502D090FA for ; Thu, 21 Jul 2016 21:09:07 -0700 (PDT) Date: Thu, 21 Jul 2016 21:15:31 -0700 (PDT) From: vkulichenko To: user@ignite.apache.org Message-ID: <1469160931376-6462.post@n6.nabble.com> In-Reply-To: References: <1468879284350-6361.post@n6.nabble.com> Subject: Re: How about adding kryo or protostuff as an optional marshaller? MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit archived-at: Fri, 22 Jul 2016 04:32:48 -0000 I actually think that even comparing with the raw mode is not completely fair (but this is definitely much closer to be fair). Any serialization protocol based on precompiled schema will be very compact, because it provides almost zero overhead (protostuff doesn't require .proto files, but still requires to generate serialization code for POJOs). Such protocols are extremely compact, but functionally limited and mainly used in messaging systems. For example, we use something very similar internally in Ignite for communication between nodes (see TcpCommunicationSpi code and Message interface if interested in implementation details). Binary format provides much more features. It is designed to avoid deserialization on server nodes, at the same time allowing to lookup field values and even run SQL queries. With the binary format you can also add any objects into the cache (even without changing class definitions at all) and dynamically change the schema. Obviously, all this adds meta information into the protocol, but Ignite's binary format is still very compact if you compare it with others that provide similar functionality. -Val -- View this message in context: http://apache-ignite-users.70518.x6.nabble.com/How-about-adding-kryo-or-protostuff-as-an-optional-marshaller-tp6309p6462.html Sent from the Apache Ignite Users mailing list archive at Nabble.com.