前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大数据知识点杂记

大数据知识点杂记

作者头像
挽风
发布2021-04-13 16:16:10
3190
发布2021-04-13 16:16:10
举报
文章被收录于专栏:小道小道

1、搜索引擎

  Ⅰ、solr

  Ⅱ、lucene

2、数据分析平台数据来源

  Ⅰ、服务器日志(Nginx日志、apche日志、服务器系统日志…)

  Ⅱ、业务日志(Log4j的日志、debug日志信息…)

  ⅲ、用户行为数据

  Ⅳ、第三方数据

  ⅴ、网络爬虫数据

  …

3、HBase协处理器的使用步骤

  Ⅰ、继承BaseRegionServer实现内部处理方法

  Ⅱ、打包成jar文件

  ⅲ、重新创建表,在表创建时会自动挂载该协处理器(表在挂载协处理器的时候,回去HBase的根目录下的lib文件夹下面找到jar包)

4、Hadoop的Runner继承Configured并实现Tool接口

代码语言:javascript
复制
  extends configure implements Tool
  
  需要实现其内部方法setConf(Configration conf){...}    任务提交到yarn,在任务执行前将会调用setConf方法,默认读取hadoop集群配置信息
  
                  getConf(){...}  当启动start-dfs.sh,会生成一个conf对象,且会将hadoop的各种配置文件加载到conf对象,任务执行时会调用该方法
                  
                  run(args){...}  

5、HBase整合Hive

  Ⅰ、可能会存在兼容性问题,在创建关联表时报错,需要重新编译hive的lib下的Hive-hbase-handler-***.jar

  Ⅱ、整合后创建关联表,HBase中,不能已存在表,在网hive中插入数据后,HBase也会同步相应数据

  ⅲ、创建外部关联已存在HBase表,可以用HQL语句直接对HBase中数据进行处理分析

  Ⅳ、对HBase与Hive关联的内部表进行disable和drop操作后,会出现可以在hive的指令窗口中查询到已删除的表,但是查找不到数据,也无法删除内部表,只用重新打开一个指令窗口.(实际删除操作应该先删除Hive的表再删除HBase对应的表)

6、Sqoop整合HBase可能存在兼容问题:

  例如:Sqoop1.4.6只支持HBase1.0.1之前版本的表自动创建功能(–hbase-create-table),实际开发环境中基本只使用Sqoop将关系型数据库内数据导入HBase

7、HBase优化

  Ⅰ、预分区

  每一个Region维护着Start Row 和 End Row ,如果加入的数据符合某个Region维护的rowkey范围,则该数据会交付给这个Region维护。如果将分区提前规划好 ,则可以提高HBase性能。

代码语言:javascript
复制
  (1)手动设定预分区
  
  (2)生成十六进制序列预分区
  
  (3)按照文件中设置的规则进行预分区
  
  (4)使用Java API进行创建分区

  Ⅱ、RowKey设计

代码语言:javascript
复制
  (1)生成随机数、Hash、散列值
  
  (2)字符串反转
  
  (3)字符串拼接

  ⅲ、内存优化

  由于HBase本身特性原因,Hbase运行时需要大量内存开销,但也不建议内存分配过大,因为GC太久会导致ReginServer处于长期不可用状态,一般设置为16-48G就可以了(如果内存没有那么多,可以设置为内存的70%左右),否则会因为框架占用内存过多导致系统内存不足,框架一样会被系统服务拖死。

  Ⅳ、基础优化

代码语言:javascript
复制
  (1)允许在HDFS中追加内容
  
  (2)优化DataNode允许打开的最大文件数
  
  (3)优化数据写入效率--比如将大批量数据写入HBase,可以使用Spark的BulkLoad API批量导入数据

8、RDD持久化

  Ⅰ、cache相当于persist()方法的StorageLevel.Memory_only()级别。

  Ⅱ、Persist的持久化级别:

代码语言:javascript
复制
	① Memory_only  纯内存,无序列化
	② Memory_only_ser  纯内存,序列化,会对内存有一定的消耗
	③ Memory_and_disk  内存 + 磁盘 + 无序列化
	④ Memory_and_disk_ser  内存 + 磁盘 + 序列化
	⑤ Disk_only  纯磁盘

  Ⅲ、如果内存资源充足,可以选择双副本机制,保证数据可靠性,即选择后缀带 “_2” 的策略,比如Memory_only_2。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-12-03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、搜索引擎
  • 2、数据分析平台数据来源
  • 3、HBase协处理器的使用步骤
  • 4、Hadoop的Runner继承Configured并实现Tool接口
  • 5、HBase整合Hive
  • 6、Sqoop整合HBase可能存在兼容问题:
  • 7、HBase优化
  • 8、RDD持久化
相关产品与服务
TDSQL MySQL 版
TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档