Return-Path: X-Original-To: apmail-cassandra-user-archive@www.apache.org Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 827484AB0 for ; Wed, 11 May 2011 16:44:33 +0000 (UTC) Received: (qmail 42051 invoked by uid 500); 11 May 2011 16:44:31 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 42023 invoked by uid 500); 11 May 2011 16:44:31 -0000 Mailing-List: contact user-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@cassandra.apache.org Delivered-To: mailing list user@cassandra.apache.org Received: (qmail 42015 invoked by uid 99); 11 May 2011 16:44:31 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 11 May 2011 16:44:31 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,RFC_ABUSE_POST,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of etamme@gmail.com designates 209.85.161.44 as permitted sender) Received: from [209.85.161.44] (HELO mail-fx0-f44.google.com) (209.85.161.44) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 11 May 2011 16:44:25 +0000 Received: by fxm15 with SMTP id 15so600243fxm.31 for ; Wed, 11 May 2011 09:44:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type:content-transfer-encoding; bh=37vzm19t+i1oA/bYneN3NOmx2t3cNetGv9+SHIKyHBE=; b=McoaFCe4f0EGMZGWfhSVM1KbUr03lcB80nnAKJhN0ZXMfZ6T+IOOwfUdc02T6lu6cp WE5q29nLFbTpdt1Ws2OzRv5PxI9SR1sbkUAyWhCxEJXMXhoErd2tO5MEjyRzbcNnOYhX NBrz7bKu+s1w4j3nASAXd+t9taw0LIT1f25eE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=nGqQJz4CMwm8NhPtmgpt49TWKV0m05KcX51FbXLmgz309nzCsxTnJXyAdqBajHr1Wh yknoOpX473eaTeKM/g4O6bUf9nOu7HpAxB6aQR7Rqrmf2NFWX+/uySOHzPQok67f2WqH hdkkfkizKwKoIGkFI2bf8funxLZCXWDk5KsOY= MIME-Version: 1.0 Received: by 10.223.6.198 with SMTP id a6mr3015077faa.130.1305132244009; Wed, 11 May 2011 09:44:04 -0700 (PDT) Received: by 10.223.89.138 with HTTP; Wed, 11 May 2011 09:44:03 -0700 (PDT) In-Reply-To: References: Date: Wed, 11 May 2011 12:44:03 -0400 Message-ID: Subject: Re: Data types for cross language access From: Eric tamme To: user@cassandra.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable > On Wed, May 11, 2011 at 10:23 AM, Luke Biddell w= rote: >> I wouldn't mind knowing how other people are approaching this problem to= o. >> >> On 11 May 2011 11:27, Oliver Dungey wrote: >>> I am currently working on a system with Cassandra that is written purel= y in >>> Java. I know our end solution will require other languages to access th= e >>> data in Cassandra (Python, C++ etc.). What is the best way to store dat= a to >>> ensure I can do this? Should I serialize everything to strings/json/xml >>> prior to the byte conversion? We currently use the Hector=A0serializer,= I >>> wondered if we should just switch this to something like Jackson/JAXB? = Any >>> thoughts very welcome. >> > We have clients that use python and C++. We just generated thrift bindings for C++ and use thrift directly - it really is not bad at all, the cassandra.h file generated defines most all methods that any higher level API would, it just doesn't have built in pooling, or reconnect etc. As far as data formats go - we are capturing data (packets) using libpcap and storing the raw bytes (literally the entire raw packet including ethernet and ip headers) into cassandra which are later read out by python scripts for ascii display, or conversion to pcap files to open in wireshark. -Eric