小编Ber*_*ium的帖子

Cassandra cli:将十六进制值转换为人类可读的格式

我从开始,当我在运行listget命令时,我得到这样的结果:

[default@usersdatabase] list users;
Using default limit of 100
-------------------
RowKey: boby
=> (column=6e616d65, value=426f62, timestamp=1294780856414000)
-------------------
RowKey: edzuksm
=> (column=656d61696c, value=6d617268656c697340696e626f782e6c76, timestamp=1294780533705000)
=> (column=6e616d65, value=45647561726473, timestamp=1294780488155000)
=> (column=7375726e616d65, value=4d617268656c6973, timestamp=1294780515429000)

2 Rows Returned.
Run Code Online (Sandbox Code Playgroud)

我看不懂它,我只看到像'6e616d65'这样的值.

如何以人类可读的格式显示值?

cassandra nosql cassandra-cli

9
推荐指数
1
解决办法
5899
查看次数

如何通过Java驱动程序在MongoDB中创建复合索引?

我想在创建复合索引AgeName MongoDB中通过Java驱动程序,这是我的语法:

coll.ensureIndex(new BasicDBObject("Age", 1),new BasicDBObject("Name", -1));
List <DBObject> list = coll.getIndexInfo();

  for (DBObject o : list) {
       System.out.println(o);
    }
Run Code Online (Sandbox Code Playgroud)

但它只创建1个索引而不是compund索引并给出结果:

{ "v" : 1 , "key" : { "_id" : 1} ,"ns" :"EmployeeData.EmpPersonalData", "name":"_id_"}
{ "v" : 1 , "key" : { "Age" : 1} , "ns" : "EmployeeData.EmpPersonalData" , "name" : "Age_1" , "Name" : -1}
Run Code Online (Sandbox Code Playgroud)

那么如何通过java驱动程序创建集合上的compund索引呢?

java indexing mongodb mongodb-java

9
推荐指数
2
解决办法
8491
查看次数

如何在Wildfly中设置两只耳朵的部署顺序

关于Wildfly 8.1中两个应用程序的部署顺序,我遇到了一些问题.问题是某些模块app2.ear依赖于模块app1.ear,但app1.ear之后部署app2.ear.

我试图像这样指定app1的依赖项:

<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <deployment>
    <dependencies>
        <module name="app2.ear" />
    </dependencies> 
  </deployment>
</jboss-deployment-structure>
Run Code Online (Sandbox Code Playgroud)

但没有运气,app1.ear无法部署此错误:

{"JBAS014671:服务失败"...由以下原因引起:org.jboss.modules.ModuleNotFoundException:app2.ear:main"}}

任何想法是否可能以及如何点缀它?

Thx提前.

java deployment jboss java-ee wildfly

9
推荐指数
1
解决办法
4552
查看次数

Spark如何并行处理1TB文件?

想象中的问题

  • 一个巨大的CSV日志文件,比方说大小为1 TB,该文件位于USB驱动器上
  • 该日志包含世界各地用户的活动日志,我们假设该行包含50列,其中包含Country.
  • 我们希望每个国家/地区的行数按降序排列.
  • 让我们假设Spark集群有足够的RAM节点来处理内存中的整个1TB(20个节点,4个核心CPU,每个节点有64GB RAM)

我的穷人的概念解决方案 使用SparkSQLDatabricks spark-csv

$ ./spark-shell --packages com.databricks:spark-csv_2.10:1.4.0
Run Code Online (Sandbox Code Playgroud)

问题1:Spark如何并行化处理?

我想上述解决方案的大部分执行时间(99%?)是将1TB文件从USB驱动器读入Spark集群.从USB驱动器读取文件是不可并行化的.但是在阅读完整个文件之后,Spark会做些什么来并行处理?

  • 用于创建DataFrame的节点数量是多少?(也许只有一个?)

  • GroupBy&Count使用了多少个节点?我们假设有100多个国家(但Spark还不知道).Spark如何分区以在20个节点上分发100多个国家/地区值?

问题2:如何使Spark应用程序尽可能快? 我想改进的方面是并行化1TB文件的读取.

  • 使用Snappy压缩将CSV文件转换为Parquet文件格式+.我们假设这可以提前完成.

  • 复制HDFS上的Parquet文件.假设Spark集群位于同一个Hadoop集群中,并且数据节点与20个节点Spark集群无关.

  • 将Spark应用程序更改为从HDFS读取.我想Spark现在会使用几个节点来读取文件,因为Parquet是可拆分的.

  • 让我们假设Snappy压缩的Parquet文件小10倍,大小= 100GB,HDFS块大小= 128 MB.共有782个HDFS块.

但那么Spark如何设法使用所有20个节点来创建DataFrame和处理(GroupBy和Count)?Spark每次都使用所有节点吗?

parallel-processing dataframe apache-spark apache-spark-sql

9
推荐指数
2
解决办法
6328
查看次数

带有加号和减号的Android号码输入

我正在开发Android,我想要一个数字输入字段,用户可以使用顶部的加号和输入字段底部的减号选择正确的数字.我知道这适用于DatePicker.是否有一些属性或类似的东西使这个可用于任何整数输入字段?

谢谢

android android-widget

8
推荐指数
3
解决办法
2万
查看次数

使用Delphi IDE中的DUnit并避免异常断点

我正在使用Delphi XE,我有一个包含主应用程序和DUnit测试应用程序的项目组.我不时会去DUnit测试应用程序添加一些测试并运行现有测试.

一些测试代码生成由应用程序处理的异常,但由Delphi Debugger多次显示,因为我习惯使用F9快捷方式运行测试应用程序,就像我使用标准应用程序一样:在这种情况下,这不是很方便.

我知道在没有调试的情况下运行的SHIFT+ CTRL+ F9快捷方式,当我记得使用它时这很好但是我经常发现自己打F9,然后咕,然后关闭测试应用程序,然后点击SHIFT+ CTRL+ F9.多么浪费时间.

所以我的问题是:有更好的方法吗?我可以定义一些设置或使用某些专家来默认运行该特定应用程序而无需调试吗?当然,我不是唯一一个遇到这个问题的人.

提前致谢.

delphi debugging dunit

8
推荐指数
1
解决办法
1072
查看次数

循环遍历MongoDB中的文档

我想循环遍历MongoDB中的文档.基本上就是这种情况.我有一些JTextfields,我想从MongoDB填充.因此,每次用户单击"下一步"按钮时,都必须获取新记录并将其显示在JTextField中.这是我的代码:

public class nextstud implements ActionListener
{
    public void actionPerformed(ActionEvent e) {
        try {
            Mongo s = new Mongo();
            DB db = s.getDB( "omrs1" );
            DBCollection coll = db.getCollection("Student") ;

            DBCursor curs = coll.find();

            if(curs.hasNext()) {
                DBObject o = curs.next();
                String fname = (String) o.get("Firstname") ; 
                String lname = (String) o.get("Lastname") ; 
                String sid = (String) o.get("StudentID") ; 
                String prg = (String) o.get("Programme") ;
                String lvl = (String) o.get("Level") ;

                txtfname.setText(fname) ; 
            }

            btndelstud.setEnabled(true); 
            btnbkstud.setEnabled(true) ;
            btnfwdstud.setEnabled(true);

        } catch (UnknownHostException …
Run Code Online (Sandbox Code Playgroud)

java loops documents mongodb

8
推荐指数
1
解决办法
2万
查看次数

二级索引列上的CQL和范围

以下CQL查询导致错误说明

by-columns子句中没有带有equals运算符的索引列

请注意,该列age已经二次索引.

select * from employee where age > 25
Run Code Online (Sandbox Code Playgroud)

但是我有另一个二级索引列type.所以,当我用那个......

select * from employee where type='engineer' and age > 25
Run Code Online (Sandbox Code Playgroud)

我似乎得到了适当的结果.

这是怎么发生的?

cql cassandra

8
推荐指数
1
解决办法
3367
查看次数

Maven:依赖管理的优势

Maven依赖管理的主要优点是什么?我们在服务器上有一个版本化的lib文件夹,每个开发人员只需要在IDE中导入该目录并使其保持最新.Maven比那简单吗?

java maven

8
推荐指数
1
解决办法
1378
查看次数

JPA 2 @SequenceGenerator @GeneratedValue产生唯一约束违规

问题概述

在看似随机的时间我们得到一个例外"postgresql重复密钥违反了唯一约束".我确实认为我知道我们的问题是什么,但我不想在没有可重复的测试用例的情况下对代码进行更改.但由于我们无法在生产中随机以外的任何环境中重现它,我正在寻求SO的帮助.

在这个项目中,我们有多个postgres数据库,以及为每个数据库中的每个表配置的主键序列.这些序列是这样创建的:

create sequence PERSONS_SEQ;
create sequence VISITS_SEQ;
etc...
Run Code Online (Sandbox Code Playgroud)

我们使用这些序列为实体生成主键,如下所示:

@Entity
@Table(name = "visits")
public class Visit {
  @Id
  @Column(name = "id")
  @SequenceGenerator(name = "seq", sequenceName = "visits_seq")
  @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq")
  private int id;
  ...
}

@Entity
@Table(name = "person")
public class Person {
  @Id
  @Column(name = "id")
  @SequenceGenerator(name = "seq", sequenceName = "persons_seq")
  @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "seq")
  private int id;
  ...
}
Run Code Online (Sandbox Code Playgroud)

分析

我想我认识到这个配置有两个问题:

1)@SequenceGenerators都指定相同的名称属性,即使它们应该映射到不同的数据库序列.

2)@SequenceGenerator allocationSize属性默认为50(我们使用hibernate作为JPA提供者)所以我认为创建序列语法应该指定序列应该增加多少,特别是50以匹配allocationSize.

根据这个猜测,我认为代码应该被修改为这样的东西:

create sequence PERSONS_SEQ increment by …
Run Code Online (Sandbox Code Playgroud)

java postgresql hibernate jpa

8
推荐指数
1
解决办法
1万
查看次数