Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Plain View
Accumulo >> mail # dev >> feedback on Typo


+
Keith Turner 2012-08-11, 00:07
+
Ed Kohlwey 2012-08-13, 00:11
+
Keith Turner 2012-08-13, 15:02
+
Josh Elser 2012-08-13, 01:36
+
Keith Turner 2012-08-13, 16:06
+
Josh Elser 2012-08-13, 22:03
+
Christopher Tubbs 2012-08-13, 21:12
+
Ed Kohlwey 2012-08-15, 13:19
+
Keith Turner 2012-08-15, 13:38
+
Marc Parisi 2012-08-15, 13:45
+
Ed Kohlwey 2012-08-15, 14:09
+
Keith Turner 2012-08-15, 16:50
Copy link to this message
-
Re: feedback on Typo
I started looking this morning at what it would take to change the encoders
to be nio based, and then realized that this was actually an issue in the
core accumulo API.

I think it would be nice to start a dialogue around introducing some
generic superclasses to Encoder, Key, and Value in order to provide a
cleaner, NIO based API that things like Typo can be implemented on top of.
I've started an issue to track thoughts on this:
https://issues.apache.org/jira/browse/ACCUMULO-731

This would also be a major help to projects like Gora.

On Wed, Aug 15, 2012 at 12:50 PM, Keith Turner <[EMAIL PROTECTED]> wrote:

> On Wed, Aug 15, 2012 at 10:09 AM, Ed Kohlwey <[EMAIL PROTECTED]> wrote:
> > One suggestion I'd make is to force users to name their tuples by making
> > the tuple types abstract. This won't help your complexity but IMHO makes
> > code more readable.
>
> Thats a good suggestion, I made Typo abstract.  I also made class like
> TypoScanner, TypoMutation, etc inner classes of Typo.  Doing this I
> was able to achieve what I wanted to with typedef, making code that
> uses Typo more concise.  The inner classes and type parameters
> actually work the way I want, I was not sure it would before I tried
> it.
>
> >
> > This an issue of java style, but there's nothing more irritating than
> > tuples floating around code without having an obvious explanation of "why
> > do these things belong together"?
> >
> > On Wed, Aug 15, 2012 at 9:38 AM, Keith Turner <[EMAIL PROTECTED]> wrote:
> >
> >> On Wed, Aug 15, 2012 at 9:19 AM, Ed Kohlwey <[EMAIL PROTECTED]> wrote:
> >> > I think its not just about types, but specifically primitive types and
> >> > tuples.
> >> Right.  And sorting is another very important aspect.   User want to
> >> do things like store dates that sort in reverese order as part of a
> >> tuple in the row.  We tell them its possible if they encode their data
> >> in a certain way.  And we also tell them "oh, BTW if you have binary
> >> data in your tuple it can be tricky to get it right".  So one goal of
> >> Typo is to make this easier for users.   I think something like the
> >> following would do this and get the lexicographic sort order correct.
> >>
> >> class RDTypo extends Typo<Pair<Long, Date>,String,String,Text> {
> >>   public RDTypo() {
> >>     super(new PairLexicoder<Long,Date>(new LongLexicoder(), new
> >> ReverseLexicoder<Date>(new DateLexicoder())),
> >>              new StringLexicoder(), new StringLexicoder(), new
> >> TextLexicoder());
> >>   }
> >> }
> >>
> >> I so wish that Java had typedef, it could make the Typo API much more
> >> concise.  I never thought I would actually miss C++ template
> >> programming :)  I still need to do some more research on Java generics
> >> to see if I can make things more concise.
> >>
> >> >
> >> > So its avoiding being a full-fledged ORM solution like Gora.
> >> >
> >> >
> >> >> Am I right in assuming that this is about simplifying the API for
> >> >> storing typed data in the key, and not about providing a mechanism
> for
> >> >> query. Isn't this really just about storing stuff you've already
> >> >> decided was a good structure for whatever your query mechanism is?
> >>
>
+
Keith Turner 2012-08-14, 17:29
+
Billie Rinaldi 2012-08-13, 16:34
+
Keith Turner 2012-08-13, 16:55
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB