手把手教你实现HBase免切片渲染空间大数据

随着各行各业信息化程度的不断升高,空间数据的数据量也在不断积累,在空间数据发布和浏览时,为提高地图浏览的效率,往往采用预先切片的技术路线。全国级别的数据切到18级,往往需要数天乃至数周的时间,无法满足数据快速上线的要求,而不切片又无法达到足够的实时地图浏览性能要求。

分布式存储的HBase数据库可以轻松管理单表上亿乃至数十亿的空间对象,只需先把数据导入到HBase数据库中,采用高性能分布式地图渲染技术,就能实现数据的“免切片”发布与浏览。如下图对于亿级矢量、栅格数据实现的高效渲染的能力。

上:2.8亿面+1.5亿线数据免切片渲染        下:全球遥感影像+亿级路网数据免切片渲染

本文将以一个700万数据量的土地利用面数据为例,带领大家完成基于HBase集群的数据导入、配图与服务发布过程,实现空间大数据的免切片渲染。

环境准备

集群环境准备:

  • 集群搭建HDFS、HBase、Spark(环境变量中配置SPARK_HOME)

软件准备:

  • SuperMap iObjects for Spark
  • SuperMap iDesktop Java
  • SuperMap iServer
  • SuperMap iObjects Java(需要使用UDB/UDBX数据源时才需要配置)

以Linux环境为例,步骤:

导数据至hbase

1、使用SuperMap iObjects for Spark指定spark集群环境(可以省略的步骤,默认local执行)

如果需要指定集群(spark集群或yarn集群)来执行任务,可以打开SuperMap iObjects for Spark/bin目录下的iobjects4spark.sh文件进行编辑,填写修改需要执行算法的spark集群地址。

Spark集群地址可在已启动的spark web页面中查看,并将spark-submit后的参数修改为:

--master spark://ubuntu14044:7077

使用Yarn集群时需要拷贝Yarn集群中hadoop安装目录./etc/hadoop/下的core-site.xml、hdfs-site.xml、yarn-site.xml到本机的HADOOP_CONF_DIR环境变量的目录下, 并将spark-submit后的参数修改为:

--master yarn

2、在SuperMap iObjects for Spark/bin目录下使用iobjects4spark工具的vectorpyramid方法将数据集以矢量金字塔的方式导入HBase。本例中,将位于udb数据源的700万土地利用数据,导入到zookeeper为192.168.12.34的HBase数据库中(注:udb数据需要存放在集群的共享目录中,使集群各节点能够访问该数据)。

./iobjects4spark.sh vectorpyramid --input "sdx --server=/home/data/shared/TBLYK.udb --type=udb --dataset=TBLYK_4326 --num-parts=100" --pyramidName TBLYK_4326 --output "hbase -C=xytestdb1 -Z=192.168.12.34:2181 -O=TBLYK_4326"

vectorpyramid 的参数释义为:

 

其中输出的hbase数据源各参数释义如下:

支持输入的数据源类型除了示例中的udb数据源还有以下几种,具体写法可参考SuperMap iObjects for Spark产品包中README.pdf:

3、执行完成后出现 vectorpyramid cost *** s即为完成导入,并耗时多长时间。

HBase数据配图

4、使用SuperMap iDesktop Java【打开数据库型数据源】,选择【HBase】数据库,填写zookeeper地址,选择catalog名称。

5、打开刚才导入的地类图斑数据集

6、在SuperMap iDesktopX中可以进行全幅浏览、配置风格的操作。

本例加载一个土地利用类型专题图模板,对不同土地利用类型进行赋色:

7、保存地图、保存工作空间。

iServer发布工作空间

8、将工作空间文件拷贝至SuperMap iServer服务器上,使用SuperMap iServer发布工作空间

即可在浏览器端浏览刚才配好的HBase地图数据服务:

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值