小编Ani*_*der的帖子

条件模块别名

对于类项目,我正在编写一个程序来评估相同抽象数据结构的不同实现的性能.由于我使用相同的代码来测试它们中的每一个,我希望能够根据用户输入设置模块别名,并通过测试代码运行该模块.

换句话说,我想要类似的东西:

let module M = 
  if model = "tree" then TreeModel else
  if model = "hash" then HashModel else
  ListModel
in ...
Run Code Online (Sandbox Code Playgroud)

有没有办法让这项工作成功,或者我这样做是错的吗?

ocaml module

10
推荐指数
1
解决办法
385
查看次数

从用户代理字符串中检测移动设备

我正在寻找一种方法来分析用户代理字符串,以确定它们是否是由移动设备生成的.这需要基于java并且可以在hadoop上进行大批量日志文件分析以生成统计信息(即,Web服务不合适).

我见过WURFL,但鉴于我只需要一个二进制移动/非移动响应,许可费似乎过高.

到目前为止,我一直在使用UADetector,这几乎就是我所需要的.但是,我遇到了一些限制.在我的测试中,我发现许多用户代理字符串提供了足够的信息来确定用户代理来自移动设备,但是被UADetector报告为UNKNOWN.

例如,标准不佳的Android应用可以发送UA字符串"Android".这足以让它知道它来自移动设备,但UADetector将此UserAgentType报告为UNKNOWN而不是MOBILE_BROWSER.

Apache Mobile FilterLite Device Detection做了正确的事情,但我需要一些可以从Java中使用的东西.

有谁能推荐更好的解决方案?

java user-agent

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

Java中的自动委派

我想为将在运行时生成的对象添加一些功能.但是,此对象的界面非常大(并且不受我的控制).我想将对象包装在我自己的类中,它添加了我想要的功能并将标准接口功能委托给原始对象 - 有没有办法在Java中执行此操作而不为每个创建一行复制粘贴委托方法界面中的方法?

我想避免的:

class MyFoo implements Foo {
  Foo wrapped;

  void myMethod() { ... }

  void interfaceMethod1() wrapped.interfaceMethod1();
  int interfaceMethod2() wrapped.interfaceMethod2();
  // etc etc ...
}
Run Code Online (Sandbox Code Playgroud)

我更喜欢什么:

class MyFoo implements Foo {
  Foo wrapped;

  void myMethod() { ... }

  // automatically delegate undefined methods to wrapped object
}
Run Code Online (Sandbox Code Playgroud)

java delegates

6
推荐指数
1
解决办法
1765
查看次数

通过猪的时间戳获取最后一行

我有一些缓慢变化的元数据,实时存储在HDFS上.我想编写一个猪作业,将这些行压缩到每个键的最新行.

例如,对于这些数据(为清晰起见添加了列标题):

ts   meta   key
--   ----   ---
1    foo    id1
2    que    id2
3    que    id2
4    foo    id1
5    pasa   id2
6    pasa   id2
7    foo    id1
8    pasa   id2
9    pasa   id2
10   pasa   id2
11   pasa   id2
12   hombre id2
13   foo    id1
14   foo    id1
15   hombre id2
16   bar    id1
17   bar    id1
18   bar    id1
19   bar    id1
20   bar    id1
Run Code Online (Sandbox Code Playgroud)

我希望得到输出:

15   hombre id2
20   bar    id1
Run Code Online (Sandbox Code Playgroud)

我刚刚开始学习猪拉丁文的来龙去脉 - 有没有一种内置的方法可以在猪或某些图书馆中做到这一点,或者我应该考虑编写一个UDF?

apache-pig

3
推荐指数
1
解决办法
2809
查看次数

标签 统计

java ×2

apache-pig ×1

delegates ×1

module ×1

ocaml ×1

user-agent ×1