首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >spark cassandra连接器在java中的问题

spark cassandra连接器在java中的问题
EN

Stack Overflow用户
提问于 2015-06-26 20:03:20
回答 1查看 700关注 0票数 2

我正在尝试从java中的spark查询cassandra。下面是获取数据的代码,但是mapToRow方法有两个参数。第一个是类,第二个是ColumnMapper。如何在java中获取ColumnMapper类的实例。谷歌推荐创建派生类JavaBeanColumnMapper的对象,但没有发现JavaBeanColumnMapper类应该如何实例化。

代码语言:javascript
运行
复制
List<String> dates = Arrays.asList("2015-02-02","2015-02-08");
    JavaRDD<DailyTaxlot> openTaxlots = CassandraJavaUtil.javaFunctions(sc).
            cassandraTable("wedbush_praveen_testing", "cf_taxlots",CassandraJavaUtil.mapToRow(DailyTaxlot.class),).
                    where("openclosetag=?","Open").where("rundate IN",dates);

任何线索都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2015-06-28 04:31:31

看一下来自spark-cassandra-connector的示例:

JavaApiDemo.java

在这个示例中,您可以看到Person bean类是如何定义的。API将根据需要为每一行实例化它。

代码语言:javascript
运行
复制
JavaRDD<Person> rdd = CassandraJavaUtil.javaFunctions(sc).cassandraTable("test", "people", mapRowTo(Person.class));

// Bean definition
public static class Person implements Serializable {
    private Integer id;
    private String name;
    private Date birthDate;

    public static Person newInstance(Integer id, String name, Date birthDate) {
        Person person = new Person();
        person.setId(id);
        person.setName(name);
        person.setBirthDate(birthDate);
        return person;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Date getBirthDate() {
        return birthDate;
    }

    public void setBirthDate(Date birthDate) {
        this.birthDate = birthDate;
    }  
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31072732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档