标签: hbase

OLAP可以在BigTable中完成吗?

在过去,我曾经使用在MySQL上运行的OLAP多维数据集构建WebAnalytics.现在我使用OLAP多维数据集的方式只是一个大表(好吧,它比那更智能地存储),其中每一行基本上是一个测量或聚合的测量集.每个度量都有一堆维度(即哪个页面名称,用户名,ip等)和一堆值(即多少个综合浏览量,多少访问者等).

您在这样的表上运行的查询通常采用以下形式(meta-SQL):

SELECT SUM(hits), SUM(bytes),
FROM MyCube
WHERE date='20090914' and pagename='Homepage' and browser!='googlebot'
GROUP BY hour
Run Code Online (Sandbox Code Playgroud)

因此,您可以使用上述过滤器获取所选日期中每小时的总计.一个障碍是这些立方体通常意味着全表扫描(各种原因),这意味着你可以制作这些东西的尺寸(在MiB中)的实际限制.

我正在学习Hadoop等的来龙去脉.

在BigTable上运行上述查询作为mapreduce看起来很容易:只需将'小时'作为键,在地图中过滤并通过对值进行求和来减少.

您是否可以在"实时"(即通过用户界面和用户得到他们的答案,而不是批处理模式)上运行BigTable类型的系统上面(或至少具有相同输出)的查询?

如果不; 在BigTable/Hadoop/HBase/Hive等领域做这样的事情的适当技术是什么?

olap hadoop hbase hive mapreduce

25
推荐指数
1
解决办法
7767
查看次数

书籍开始学习大数据

我想开始学习大数据技术.我希望将来在这个领域工作.有没有人知道好书开始学习它?Hadoop,HBase.

初学者 - 中级 - 高级 -

提前致谢

hadoop hbase hive pentaho bigdata

24
推荐指数
3
解决办法
4万
查看次数

如何批量删除hbase中的多行?

我在hbase表"mytable"中有以下行和这些键

user_1
user_2
user_3
...
user_9999999
Run Code Online (Sandbox Code Playgroud)

我想使用Hbase shell删除以下行:

user_500到user_900

我知道没有办法删除,但有没有办法可以使用"BulkDeleteProcessor"来做到这一点?

我在这里看到:

https://github.com/apache/hbase/blob/master/hbase-examples/src/test/java/org/apache/hadoop/hbase/coprocessor/example/TestBulkDeleteProtocol.java

我想粘贴导入然后将其粘贴到shell中,但不知道如何解决这个问题.有谁知道如何从jruby hbase shell使用这个端点?

   Table ht = TEST_UTIL.getConnection().getTable("my_table");
    long noOfDeletedRows = 0L;
    Batch.Call<BulkDeleteService, BulkDeleteResponse> callable =
      new Batch.Call<BulkDeleteService, BulkDeleteResponse>() {
      ServerRpcController controller = new ServerRpcController();
      BlockingRpcCallback<BulkDeleteResponse> rpcCallback =
        new BlockingRpcCallback<BulkDeleteResponse>();

      public BulkDeleteResponse call(BulkDeleteService service) throws IOException {
        Builder builder = BulkDeleteRequest.newBuilder();
        builder.setScan(ProtobufUtil.toScan(scan));
        builder.setDeleteType(deleteType);
        builder.setRowBatchSize(rowBatchSize);
        if (timeStamp != null) {
          builder.setTimestamp(timeStamp);
        }
        service.delete(controller, builder.build(), rpcCallback);
        return rpcCallback.get();
      }
    };
    Map<byte[], BulkDeleteResponse> result = ht.coprocessorService(BulkDeleteService.class, scan
        .getStartRow(), scan.getStopRow(), callable);
    for (BulkDeleteResponse …
Run Code Online (Sandbox Code Playgroud)

java hbase jruby

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

如何决定使用哪种NoSQL技术?

MongoDB(基于文档),HBase(基于列)和Neo4j(对象图)的优缺点是什么?

我特别想知道每个用例的一些典型用例.

图表可以比替代方案更好地解决问题的好例子是什么?

也许任何Slideshare或Scribd值得介绍?

hbase mongodb neo4j nosql graph-databases

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

如何列出hbase表中的所有行键?

任何人都可以告诉我,如何列出hbase表中的所有行键?

hbase

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

适用于Hbase的Java ORM

任何人都知道HBase的良好Java ORM实现.这个看起来非常适合Ruby

http://www.stanford.edu/~sqs/rhino/doc/

但找不到一个Java.

谢谢.

java orm hbase

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

如何复制现有的hbase表

我有一个Hbase表X,我想创建它的精确副本并命名为Y.有人能让我知道它是如何可能的吗?

谢谢

cloud hadoop hbase

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

在hadoop中使用hcatalog有什么用?

我是hadoop的新手.我知道HCatalog是Hadoop的表和存储管理层.但它究竟是如何工作以及如何使用它.请举一些简单的例子.

hadoop hbase hive hcatalog

21
推荐指数
4
解决办法
3万
查看次数

如何使用--packages为spark-submit指定多个依赖项?

我有以下作为启动火花流工作的命令行.

    spark-submit --class com.biz.test \
            --packages \
                org.apache.spark:spark-streaming-kafka_2.10:1.3.0 \
                org.apache.hbase:hbase-common:1.0.0 \
                org.apache.hbase:hbase-client:1.0.0 \
                org.apache.hbase:hbase-server:1.0.0 \
                org.json4s:json4s-jackson:3.2.11 \
            ./test-spark_2.10-1.0.8.jar \
            >spark_log 2>&1 &
Run Code Online (Sandbox Code Playgroud)

作业无法启动以下错误:

Exception in thread "main" java.lang.IllegalArgumentException: Given path is malformed: org.apache.hbase:hbase-common:1.0.0
    at org.apache.spark.util.Utils$.resolveURI(Utils.scala:1665)
    at org.apache.spark.deploy.SparkSubmitArguments.parse$1(SparkSubmitArguments.scala:432)
    at org.apache.spark.deploy.SparkSubmitArguments.parseOpts(SparkSubmitArguments.scala:288)
    at org.apache.spark.deploy.SparkSubmitArguments.<init>(SparkSubmitArguments.scala:87)
    at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:105)
    at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Run Code Online (Sandbox Code Playgroud)

我已经尝试删除格式并返回单行,但这不能解决问题.我也试过了很多变化:不同的版本,添加_2.10到artifactId的末尾,等等.

根据文档(spark-submit --help):

坐标的格式应为groupId:artifactId:version.

所以我所拥有的应该是有效的,并且应该参考这个包.

如果它有帮助,我正在运行Cloudera 5.4.4.

我究竟做错了什么?如何正确引用hbase包?

hbase apache-spark spark-streaming

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

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