华为云用户手册

  • 操作步骤 停止Flume角色的客户端。 假设Flume客户端安装路径为“/opt/FlumeClient”,执行以下命令,停止Flume客户端: cd /opt/FlumeClient/fusioninsight-flume-Flume组件版本号/bin ./flume-manage.sh stop 执行脚本后,显示如下信息,说明成功的停止了Flume客户端: Stop Flume PID=120689 successful.. Flume客户端停止后会自动重启,如果不需自动重启,请执行以下命令: ./flume-manage.sh stop force 需要启动时,可执行以下命令: ./flume-manage.sh start force 卸载Flume角色的客户端。 假设Flume客户端安装路径为“/opt/FlumeClient”,执行以下命令,卸载Flume客户端: cd /opt/FlumeClient/fusioninsight-flume-Flume组件版本号/inst ./uninstall.sh
  • 编辑器使用介绍 访问Hue WebUI,请参考访问Hue WebUI界面。 在左侧导航栏单击,然后选择“Workflow”。 支持创建Workflow、计划和Bundles的操作。支持提交运行、共享、复制和导出已创建的应用。 每个Workflow可以包含一个或多个作业,形成完整的工作流,用于实现指定的业务。 创建Workflow时,可直接在Hue的编辑器设计作业,并添加到Workflow中。 每个计划可定义一个时间触发器,用于定时触发执行一个指定的Workflow。不支持多个Workflow。 每个Bundles可定义一个集合,用于触发执行多个计划,使不同Workflow批量执行。
  • 操作场景 用户需要使用图形化界面查看集群中所有作业时,可以通过Hue完成任务。 Hue提供了Oozie作业管理器功能,使用户可以通过界面图形化的方式使用Oozie。 Hue界面主要用于文件、表等数据的查看与分析,禁止通过Hue界面对操作对象进行删除等高危管理操作。如需操作,建议在确认对业务没有影响后通过各组件的相应操作方法进行处理,例如使用HDFS客户端对HDFS文件进行操作,使用Hive客户端对Hive表进行操作。
  • 元数据管理器使用介绍 访问Hue WebUI,请参考访问Hue WebUI界面。 查看Hive表的元数据 在左侧导航栏单击表,单击某一表名称,界面将显示Hive表的元数据信息。 管理Hive表的元数据 在Hive表的元数据信息界面: 单击右上角的“导入”可导入数据。 单击“概述”,在“属性”域可查看表文件的位置信息。 可查看Hive表各列字段的信息,并手动添加描述信息,注意此处添加的描述信息并不是Hive表中的字段注释信息(comment)。 单击“样本”可浏览数据。 管理Hive元数据表 单击左侧列表中的可在数据库中根据上传的文件创建一个新表,也可手动创建一个新表。 Hue界面主要用于文件、表等数据的查看与分析,禁止通过Hue界面对操作对象进行删除等高危管理操作。如需操作,建议在确认对业务没有影响后通过各组件的相应操作方法进行处理,例如使用HDFS客户端对HDFS文件进行操作,使用Hive客户端对Hive表进行操作。
  • 访问作业浏览器 访问Hue WebUI,请参考访问Hue WebUI界面。 单击作业,进入“作业浏览器”。 默认显示当前集群的所有作业。支持查看Workflow、Coordinator和Bundles作业的运行情况。 作业浏览器显示的数字表示集群中所有作业的总数。 “作业浏览器”将显示作业以下信息: 表1 MRS 作业属性介绍 属性名 描述 名称 表示作业的名称。 用户 表示启动该作业的用户。 类型 表示作业的类型。 状态 表示作业的状态,包含“成功”、“正在运行”、“失败”。 进度 表示作业运行进度。 组 表示作业所属组。 开始 表示作业开始时间。 持续时间 表示作业运行使用的时间。 Id 表示作业的编号,由系统自动生成。 如果MRS集群安装了Spark组件,则默认会启动一个作业“Spark-JD BCS erver”,用于执行任务。
  • Flume模块介绍 Flume客户端/服务端由一个或多个Agent组成,而每个Agent是由Source、Channel、Sink三个模块组成,数据先进入Source然后传递到Channel,最后由Sink发送到下一个Agent或目的地(客户端外部)。各模块说明见表1。 表1 模块说明 名称 说明 Source Source负责接收数据或产生数据,并将数据批量放到一个或多个Channel。Source有两种类型:数据驱动和轮询。 典型的Source样例如下: 和系统集成并接收数据的Sources:Syslog、Netcat。 自动生成事件数据的Sources:Exec、SEQ。 用于Agent和Agent之间通信的IPC Sources:Avro。 Source必须至少和一个Channel关联。 Channel Channel位于Source和Sink之间,用于缓存Source传递的数据,当Sink成功将数据发送到下一跳的Channel或最终数据处理端,缓存数据将自动从Channel移除。 不同类型的Channel提供的持久化水平也是不一样的: Memory Channel:非持久化 File Channel:基于预写式日志(Write-Ahead Logging,简称WAL)的持久化实现 JDBC Channel:基于嵌入Database的持久化实现 Channel支持事务特性,可保证简易的顺序操作,同时可以配合任意数量的Source和Sink共同工作。 Sink Sink负责将数据传输到下一跳或最终目的,成功完成后将数据从Channel移除。 典型的Sink样例如下: 存储数据到最终目的终端Sink,比如:HDFS、Kafka 自动消耗的Sinks,比如:Null Sink 用于Agent和Agent之间通信的IPC sink:Avro Sink必须关联到一个Channel。 每个Flume的Agent可以配置多个Source、Channel、Sink模块,即一个Source将数据发送给多个Channel,再由多个Sink发送到下一个Agent或目的地。 Flume支持多个Flume配置级联,即上一个Agent的Sink将数据再发送给另一个Agent的Source。
  • 补充说明 Flume可靠性保障措施。 Source与Channel、Channel与Sink之间支持事务机制。 Sink Processor支持配置failover、load_balance机制。 例如load_balance示例如下: server.sinkgroups=g1server.sinkgroups.g1.sinks=k1 k2server.sinkgroups.g1.processor.type=load_balanceserver.sinkgroups.g1.processor.backoff=trueserver.sinkgroups.g1.processor.selector=random Flume多客户端聚合级联时的注意事项。 级联时需要走Avro或者Thrift协议进行级联。 聚合端存在多个节点时,连接配置尽量配置均衡,不要聚合到单节点上。 Flume客户端可以包含多个独立的数据流,即在一个配置文件properties.properties中配置多个Source、Channel、Sink。这些组件可以链接以形成多个流。 例如在一个配置中配置两个数据流,示例如下: server.sources = source1 source2server.sinks = sink1 sink2server.channels = channel1 channel2#dataflow1 server.sources.source1.channels = channel1server.sinks.sink1.channel = channel1#dataflow2server.sources.source2.channels = channel2server.sinks.sink2.channel = channel2
  • 使用Flume客户端加密工具 安装Flume客户端后,配置文件的部分参数可能需要填写加密的字符,Flume客户端中提供了加密工具。 安装Flume客户端。 登录安装Flume客户端的节点,并切换到客户端安装目录。例如“/opt/FlumeClient”。 切换到以下目录 cd fusioninsight-flume-Flume组件版本号/bin 执行以下命令,加密原始信息: ./genPwFile.sh 输入两次待加密信息。 执行以下命令,查看加密后的信息: cat password.property 如果加密参数是用于Flume Server,那么需要到相应的Flume Server所在节点执行加密。需要使用omm用户执行加密脚本进行加密。 加密路径为“/opt/Bigdata/ FusionInsight _Porter_XXX/install/FusionInsight-Flume-Flume组件版本号/flume/bin/genPwFile.sh”。其中XXX为产品的版本号。 父主题: Flume企业级能力增强
  • 日志描述 日志路径:Hue相关日志的默认存储路径为“/var/log/Bigdata/hue”(运行日志),“/var/log/Bigdata/audit/hue”(审计日志)。 日志归档规则:Hue的日志启动了自动压缩归档功能,默认情况下,当“access.log”、“error.log”、“runcpserver.log”和“hue-audits.log”大小超过5MB的时候,会自动压缩。最多保留最近的20个压缩文件,压缩文件保留个数和压缩文件阈值可以配置。 表1 Hue日志列表 日志类型 日志文件名 描述 运行日志 access.log 访问日志。 error.log 错误日志。 gsdb_check.log gaussDB检查日志。 kt_renewer.log Kerberos认证日志。 kt_renewer.out.log Kerberos认证日志的异常输出日志。 runcpserver.log 操作记录日志。 runcpserver.out.log 进程运行异常日志。 supervisor.log 进程启动日志。 supervisor.out.log 进程启动异常日志。 dbDetail.log 数据库初始化日志 initSecurityDetail.log keytab文件下载初始化日志。 postinstallDetail.log Hue服务安装后工作日志。 prestartDetail.log Prestart日志。 statusDetail.log Hue服务健康状态日志。 startDetail.log 启动日志。 get-hue-ha.log Hue HA状态日志。 hue-ha-status.log Hue HA状态监控日志。 get-hue-health.log Hue健康状态日志。 hue-health-check.log Hue健康检查日志。 hue-refresh-config.log Hue配置刷新日志。 hue-script-log.log Manager界面的Hue操作日志。 hue-service-check.log Hue服务状态监控日志。 db_pwd.log Hue连接DBService数据库密码修改日志 modifyDBPwd_日期.log - watch_config_update.log 参数更新日志。 审计日志 hue-audits.log 审计日志。
  • 日志级别 Hue提供了如表2所示的日志级别。 日志的级别优先级从高到低分别是ERROR、WARN、INFO、DEBUG,程序会打印高于或等于所设置级别的日志,设置的日志等级越高,打印出来的日志就越少。 表2 日志级别 级别 描述 ERROR ERROR表示系统运行的错误信息。 WARN WARN表示当前事件处理存在异常信息。 INFO INFO表示记录系统及各事件正常运行状态信息。 DEBUG DEBUG表示记录系统及系统的调试信息。 如果您需要修改日志级别,请执行如下操作: 参考修改集群服务配置参数进入Hue服务“全部配置”页面。 在左侧导航栏选择需修改的角色所对应的“日志”菜单。 在右侧选择所需修改的日志级别。 保存配置,在弹出窗口中单击“确定”使配置生效。 重新启动配置过期的服务或实例以使配置生效。
  • 访问编辑器 访问Hue WebUI,请参考访问Hue WebUI界面。 在左侧导航栏单击,然后选择“Hive”,进入“Hive”。 “Hive”支持以下功能: 执行HQL语句 在左侧选中目标数据库,也可通过单击右上角的,输入目标数据库的名称以搜索目标数据库。 在文本编辑框输入HQL语句,单击或者按“Ctrl+Enter”,运行HQL语句,执行结果将在“结果”页签显示。 分析HQL语句 在左侧选中目标数据库,在文本编辑框输入HQL语句,单击编译HQL语句并显示语句是否正确,执行结果将在文本编辑框下方显示。 保存HQL语句 在文本编辑框输入HQL语句,单击右上角的,并输入名称和描述。已保存的语句可以在“保存的查询”页签查看。 查看历史 单击“查询历史记录”,可查看HQL运行情况,支持显示所有语句或只显示保存的语句的运行情况。历史记录存在多个结果时,可以在输入框使用关键字进行搜索。 高级查询配置 单击右上角的,对文件、函数、设置等信息进行配置。 查看快捷键 单击右上角的,可查看所有快捷键信息。
  • 典型场景 通过Hue界面对Hive进行创建表的操作如下: 单击Hue的WebUI界面左上角的,选择要操作的Hive实例,进入Hive命令的执行页面。 在命令输入框内输入一条HiveSQL语句,例如: create table hue_table(id int,name string,company string) row format delimited fields terminated by ',' stored as textfile; 单击执行HQL。 图2 执行语句 在命令输入框内输入: show tables; 单击,查看“结果”中有创建的表hue_table。 图3 查看结果
  • 执行HQL语句 在“Database”右侧下拉列表选择一个Hive中的数据库,默认数据库为“default”。 系统将自动显示数据库中的所有表。可以输入表名关键字,系统会自动搜索包含此关键字的全部表。 单击指定的表名,可以显示表中所有的列。 光标移动到表或列所在的行,单击 可以查看详细信息。 在HQL语句编辑区输入查询语句。 单击 开始执行HQL语句。 图1 执行语句 如果希望下次继续使用已输入的HQL语句,请单击保存。 高级查询配置: 单击右上角的,对文件、功能、设置等信息进行配置。 查看快捷键: 单击右上角的,可查看语法和键盘快捷方式信息。 删除已输入的HQL语句,请单击后的三角选择“清除”。 查看历史: 单击“查询历史记录”,可查看HQL运行情况,支持显示所有语句或只显示保存的语句的运行情况。历史记录存在多个结果时,可以在输入框使用关键字进行搜索。
  • 修改在Hue使用编辑器的会话配置 在编辑器页面,单击 。 在“文件”的右侧单击 ,然后单击 选择文件。 可以单击“文件”后的 新增加一个文件资源。 在“功能” ,输入用户自定义的名称和函数的类名称。 可以单击“功能”后的 新增加一个自定义函数。 在“设置” ,在“设置”的“键”输入Hive的参数名,在“值”输入对应的参数值,则当前Hive会话会以用户定义的配置连接Hive。 可以单击 新增加一个参数。
  • 元数据浏览器使用介绍 访问Hue WebUI,请参考访问Hue WebUI界面。 查看Hive表的元数据 在左侧导航栏单击表,单击某一表名称,界面将显示Hive表的元数据信息。 管理Hive表的元数据 在Hive表的元数据信息界面: 单击右上角的“导入”可导入数据。 单击“概述”,在“属性”域可查看表文件的位置信息。 可查看Hive表各列字段的信息,并手动添加描述信息,注意此处添加的描述信息并不是Hive表中的字段注释信息(comment)。 单击“样本”可浏览数据。 管理Hive元数据表 单击左侧列表中的可在数据库中根据上传的文件创建一个新表,也可手动创建一个新表。 Hue界面主要用于文件、表等数据的查看与分析,禁止通过Hue界面对操作对象进行删除等高危管理操作。如需操作,建议在确认对业务没有影响后通过各组件的相应操作方法进行处理,例如使用HDFS客户端对HDFS文件进行操作,使用Hive客户端对Hive表进行操作。
  • 操作步骤 以客户端安装用户,登录安装客户端的节点,客户端安装详细操作请参见安装客户端(3.x及之后版本)。 执行以下命令切换到客户端目录,客户端安装目录如:/opt/client。 cd /opt/client 执行以下命令配置环境变量。 source bigdata_env 如果当前集群已启用Kerberos认证,执行以下命令认证当前用户,当前用户需要具有创建Hive表的权限,具体请参见创建角色配置拥有对应权限的角色,参考创建用户为用户绑定对应角色。如果当前集群未启用Kerberos认证,则无需执行此命令。 kinit MRS集群用户 例如,kinit hiveuser。 运行Hive客户端命令,实现A业务。 内部表操作 执行以下命令登录Hive客户端命令行: beeline 根据表1创建用户信息表user_info并添加相关数据,例如: create table user_info(id string,name string,gender string,age int,addr string); insert into table user_info(id,name,gender,age,addr) values("12005000201","A","男",19,"A城市"); 在用户信息表user_info中新增用户的学历、职称信息。 以增加编号为12005000201的用户的学历、职称信息为例,其他用户类似。 alter table user_info add columns(education string,technical string); 根据用户编号查询用户姓名和地址。 以查询编号为12005000201的用户姓名和地址为例,其他用户类似。 select name,addr from user_info where id='12005000201'; 删除用户信息表。 drop table user_info; 执行以下命令退出Hive客户端。 !q 外部分区表操作 可使用insert语句直接向外部表中插入数据,也可以使用load data命令导入HDFS中的文件数据到外部表中。如果需要使用load data命令导入文件数据,需执行以下操作: 根据表1数据创建文件。例如,文件名为“txt.log”,以空格拆分字段,以换行符作为行分隔符。 执行以下命令上传文件至HDFS中,例如“/tmp”目录下。 hdfs dfs -put txt.log /tmp 执行以下命令创建外部表数据存储路径: hdfs dfs -mkdir /hive/ hdfs dfs -mkdir /hive/user_info 执行以下命令登录Hive客户端命令行: beeline 执行以下命令创建表: create external table user_info(id string,name string,gender string,age int,addr string) partitioned by(year string) row format delimited fields terminated by ' ' lines terminated by '\n' stored as textfile location '/hive/user_info'; fields terminated:表示分隔的字符,如按空格分隔,' '。 lines terminated:表示分行的字符,如按换行分隔,'\n'。 /hive/user_info:存储表user_info数据的HDFS路径。 导入数据。 使用insert语句插入数据,以插入编号为12005000201的用户相关信息为例,其他用户类似。 insert into user_info partition(year="2018") values ("12005000201","A","男",19,"A城市"); 使用load data命令导入文件数据。 load data inpath '/tmp/txt.log' into table user_info partition (year='2011'); 其中,“/tmp/txt.log”为5.a上传至HDFS的数据文件。 执行以下命令查询导入数据。 select * from user_info; 执行以下命令删除用户信息表。 drop table user_info; 执行以下命令退出Hive客户端。 !q
  • 背景信息 假定用户开发一个应用程序,用于管理企业中的使用A业务的用户信息,使用Hive客户端实现A业务操作流程如下: 普通表的操作: 创建用户信息表user_info。 在用户信息中新增用户的学历、职称信息。 根据用户编号查询用户姓名和地址。 A业务结束后,删除用户信息表。 表1 用户信息 编号 姓名 性别 年龄 地址 12005000201 A 男 19 A城市 12005000202 B 女 23 B城市 12005000203 C 男 26 C城市 12005000204 D 男 18 D城市 12005000205 E 女 21 E城市 12005000206 F 男 32 F城市 12005000207 G 女 29 G城市 12005000208 H 女 30 H城市 12005000209 I 男 26 I城市 12005000210 J 女 25 J城市
  • 常用Sink配置 HDFS Sink HDFS Sink将数据写入HDFS。常用配置如表9所示: 图9 HDFS Sink 表9 HDFS Sink常用配置 参数 默认值 描述 channel - 与之相连的Channel。仅可在“properties.properties”文件中配置。 type hdfs 类型,需配置为“hdfs”。仅可在“properties.properties”文件中配置。 monTime 0(不开启) 线程监控阈值,更新时间大于阈值时重新启动该Sink,单位:秒。 hdfs.path - HDFS路径。 hdfs.inUseSuffix .tmp 正在写入的HDFS文件后缀。 hdfs.rollInterval 30 按时间滚动文件,单位:秒,同时需将“hdfs.fileCloseByEndEvent”设置为“false”。 hdfs.rollSize 1024 按大小滚动文件,单位:字节,同时需将“hdfs.fileCloseByEndEvent”设置为“false”。 hdfs.rollCount 10 按Event个数滚动文件,同时需将“hdfs.fileCloseByEndEvent”设置为“false”。 hdfs.idleTimeout 0 自动关闭空闲文件超时时间,单位:秒。 hdfs.batchSize 1000 每次写入HDFS的Event个数。 hdfs.kerberosPrincipal - 认证HDFS的Kerberos用户名,未启用Kerberos认证集群不配置。 hdfs.kerberosKeytab - 认证HDFS的Kerberos keytab路径,未启用Kerberos认证集群不配置 hdfs.fileCloseByEndEvent true 收到最后一个Event时是否关闭文件。 hdfs.batchCallTimeout - 每次写入HDFS超时控制时间,单位:毫秒。 当不配置此参数时,对每个Event写入HDFS进行超时控制。当“hdfs.batchSize”大于0时,配置此参数可以提升写入HDFS性能。 说明: “hdfs.batchCallTimeout”设置多长时间需要考虑“hdfs.batchSize”的大小,“hdfs.batchSize”越大,“hdfs.batchCallTimeout”也要调整更长时间,设置过短时间容易导致数据写入HDFS失败。 serializer.appendNewline true 将一个Event写入HDFS后是否追加换行符('\n'),如果追加该换行符,该换行符所占用的数据量指标不会被HDFS Sink统计。 Avro Sink Avro Sink把events转化为Avro events并发送到配置的主机的监测端口。常用配置如表10所示: 图10 Avro Sink 表10 Avro Sink常用配置 参数 默认值 描述 channel - 与之相连的Channel。仅可在“properties.properties”文件中配置。 type - 类型,需配置为“avro”。仅可在“properties.properties”文件中配置。 hostname - 绑定关联的主机名或IP地址。 port - 监测端口。 batch-size 1000 批次发送的Event个数。 ssl false 是否使用SSL加密。 truststore-type JKS Java信任库类型。 truststore - Java信任库文件。 truststore-password - Java信任库密码。 keystore-type JKS 密钥存储类型。 keystore - 密钥存储文件。 keystore-password - 密钥存储密码 HBase Sink HBase Sink将数据写入到HBase中。常用配置如表11所示: 图11 HBase Sink 表11 HBase Sink常用配置 参数 默认值 描述 channel - 与之相连的Channel。仅可在“properties.properties”文件中配置。 type - 类型,需配置为“hbase”。仅可在“properties.properties”文件中配置。 table - HBase表名称。 monTime 0(不开启) 线程监控阈值,更新时间大于阈值时重新启动该Sink,单位:秒。 columnFamily - HBase列族名称。 batchSize 1000 每次写入HBase的Event个数。 kerberosPrincipal - 认证HBase的Kerberos用户名,未启用Kerberos认证集群不配置。 kerberosKeytab - 认证HBase的Kerberos keytab路径,未启用Kerberos认证集群不配置。 Kafka Sink Kafka Sink将数据写入到Kafka中。常用配置如表12所示: 图12 Kafka Sink 表12 Kafka Sink常用配置 参数 默认值 描述 channel - 与之相连的Channel。仅可在“properties.properties”文件中配置。 type - 类型,需配置为“org.apache.flume.sink.kafka.KafkaSink”。 仅可在“properties.properties”文件中配置。 kafka.bootstrap.servers - Kafkabrokers列表,多个用英文逗号分隔。 monTime 0(不开启) 线程监控阈值,更新时间大于阈值时重新启动该Sink,单位:秒。 kafka.topic default-flume-topic 数据写入的topic。 flumeBatchSize 1000 每次写入Kafka的Event个数。 kafka.security.protocol SASL_PLAINTEXT Kafka安全协议,未启用Kerberos认证集群下须配置为“PLAINTEXT”。 kafka.kerberos.domain.name - Kafka Domain名称。安全集群必填。仅可在“properties.properties”文件中配置。 Other Kafka Producer Properties - 其他Kafka配置,可以接受任意Kafka支持的生产参数配置,配置需要加前缀“.kafka”。 仅可在“properties.properties”文件中配置。
  • 常用Channel配置 Memory Channel Memory Channel使用内存作为缓存区,Events存放在内存队列中。常用配置如表6所示: 图6 Memory Channel 表6 Memory Channel常用配置 参数 默认值 描述 type - 类型,需配置为“memory”。仅可在“properties.properties”文件中配置。 capacity 10000 缓存在Channel中的最大Event数。 transactionCapacity 1000 每次存取的最大Event数。 channelfullcount 10 Channel full次数,达到该次数后发送告警。 File Channel File Channel使用本地磁盘作为缓存区,Events存放在设置的“dataDirs”配置项文件夹中。常用配置如表7所示: 图7 File Channel 表7 File Channel常用配置 参数 默认值 描述 type - 类型,需配置为“file”。仅可在“properties.properties”文件中配置。 checkpointDir ${BIGDATA_DATA_HOME}/flume/checkpoint 检查点存放路径。 dataDirs ${BIGDATA_DATA_HOME}/flume/data 数据缓存路径,设置多个路径可提升性能,中间用逗号分开。 maxFileSize 2146435071 单个缓存文件的最大值,单位:字节。 minimumRequiredSpace 524288000 缓冲区空闲空间最小值,单位:字节。 capacity 1000000 缓存在Channel中的最大Event数。 transactionCapacity 10000 每次存取的最大Event数。 channelfullcount 10 Channel full次数,达到该次数后发送告警。 Kafka Channel Kafka Channel使用kafka集群缓存数据,Kafka提供高可用、多副本,以防Flume或Kafka Broker崩溃,Channel中的数据会立即被Sink消费。常用配置如表 10 Kafka Channel 常用配置所示: 图8 Kafka Channel 表8 Kafka Channel常用配置 参数 默认值 描述 type - 类型,需配置为 “org.apache.flume.channel.kafka.KafkaChannel”.。 仅可在“properties.properties”文件中配置。 kafka.bootstrap.servers - kafka broker列表。 kafka.topic flume-channel Channel用来缓存数据的topic。 kafka.consumer.group.id flume Kafka消费者组ID。 parseAsFlumeEvent true 是否解析为Flume event。 migrateZookeeperOffsets true 当Kafka没有存储offset时,是否从ZooKeeper中查找,并提交到Kafka。 kafka.consumer.auto.offset.reset latest 当没有offset记录时,从指定的位置消费数据。 kafka.producer.security.protocol SASL_PLAINTEXT Kafka生产者安全协议。 kafka.consumer.security.protocol SASL_PLAINTEXT Kafka消费者安全协议。
  • 访问文件浏览器 访问Hue WebUI,请参考访问Hue WebUI界面。 在左侧导航栏单击文件。进入“文件浏览器”页面。 “文件浏览器”的“主页”默认进入当前登录用户的主目录。界面将显示目录中的子目录或文件的以下信息: 表1 HDFS文件属性介绍 属性名 描述 名称 表示目录或文件的名称。 大小 表示文件的大小。 用户 表示目录或文件的属主。 组 表示目录或文件的属组。 权限 表示目录或文件的权限设置。 日期 表示目录或文件创建时间。 在搜索框输入关键字,系统会在当前目录自动搜索目录或文件。 清空搜索框的内容,系统会重新显示所有目录和文件。
  • 管理文件或目录 在“文件浏览器”界面,勾选一个或多个目录或文件。 单击“操作”,在弹出菜单选择一个操作。 重命名:表示重新命名一个目录或文件。 移动:表示移动文件,在“移至”页面选择新的目录并单击“移动”完成移动。 复制:表示复制选中的文件或目录。 更改权限:表示修改选中目录或文件的访问权限。 可以为属主、属组和其他用户设置“读取”、“写”和“执行”权限。 “易贴”表示禁止HDFS的管理员、目录属主或文件属主以外的用户在目录中移动文件。 “递归”表示递归设置权限到子目录。 存储策略:表示设置目录或文件在HDFS中的存储策略。 摘要:表示查看选中的文件或目录的HDFS存储信息。
  • HetuEngine结构 HetuEngine包含不同模块,整体结构如图1所示。 图1 HetuEngine结构图 表1 各模块说明 模块名称 常见概念名称 描述 云服务层 HetuEngine CLI/JDBC HetuEngine的客户端,使用者通过客户端向服务端提交查询请求,然后将执行结果取回并展示。 HSBroker HetuEngine的服务管理,用作计算实例的资源管理校验,健康监控与自动维护等。 HSConsole 对外提供数据源信息管理,计算实例管理,自动化任务的查看等功能的可视化操作界面和RESTful接口。 HSFabric 提供跨域(DC)高性能安全数据传输。 引擎层 Coordinator HetuEngine计算实例的管理节点,提供SQL接收、SQL解析、生成执行计划、执行计划优化、分派任务和资源调度等能力。 Worker HetuEngine计算实例的工作节点,提供数据源数据并行拉取,分布式SQL计算等能力。
  • IoTDB结构 IoTDB套件由若干个组件构成,共同形成数据收集、数据写入、数据存储、数据查询、 数据可视化 、数据分析等一系列功能。 图1展示了使用IoTDB套件的全部组件形成的整体应用架构,IoTDB特指其中的时间序列数据库组件。 图1 IoTDB结构 用户可以通过JDBC/Session将来自设备传感器上采集的时序数据和服务器负载、CPU内存等系统状态数据、消息队列中的时序数据、应用程序的时序数据或者其他数据库中的时序数据导入到本地或者远程的IoTDB中。用户还可以将上述数据直接写成本地(或位于HDFS上)的TsFile文件。 用户可以将TsFile文件写入到HDFS上,进而满足Hadoop、Flink等数据处理任务的访问。 对于写入到HDFS或者本地的TsFile文件,可以利用TsFile-Hadoop或TsFile-Flink连接器,允许Hadoop或Flink进行数据处理。 对于分析的结果,可以写回成TsFile文件。 IoTDB和TsFile还提供了相应的客户端工具,满足用户以SQL形式、脚本形式和图形形式写入和查看数据的各种需求。 IoTDB服务包括IoTDBServer(DataNode)和ConfigNode两种角色。由于社区版角色名称DataNode和HDFS角色同名,因此将DataNode更名为IoTDBServer,如图2所示。 ConfigNode:管理角色,负责DataNode数据分片,负载均衡等。 IoTDBServer(DataNode):存储角色,负责数据存储、查询和写入等功能。 图2 IoTDB分布式架构
  • IoTDB原理 根据属性层级、属性涵盖范围以及数据之间的从属关系,可将IoTDB数据模型表示为如图3所示的属性层级组织结构,即“电力集团层-电厂层-设备层-传感器层”。其中ROOT为根节点,传感器层的每一个节点为叶子节点。IoTDB的语法规定,ROOT节点到叶子节点的路径以“.”连接,以此完整路径命名IoTDB中的一个时间序列。例如,下图最左侧路径对应的时间序列名称为“ROOT.ln.wf01.wt01.status”。 图3 IoTDB数据模型
  • 实现方案 多主实例模式的HA方案原理如下图所示。 图1 Spark JDB CS erver HA JDBCServer在启动时,向ZooKeeper注册自身消息,在指定目录中写入节点,节点包含了该实例对应的IP,端口,版本号和序列号等信息(多节点信息之间以逗号隔开)。 示例如下: [serverUri=192.168.169.84:22550;version=8.1.0.1;sequence=0000001244,serverUri=192.168.195.232:22550 ;version=8.1.0.1;sequence=0000001242,serverUri=192.168.81.37:22550;version=8.1.0.1;sequence=0000001243] 客户端连接JDBCServer时,需要指定Namespace,即访问ZooKeeper哪个目录下的JDBCServer实例。在连接的时候,会从Namespace下随机选择一个实例连接,详细URL参见URL连接介绍。 客户端成功连接JDBCServer服务后,向JDBCServer服务发送SQL语句。 JDBCServer服务执行客户端发送的SQL语句后,将结果返回给客户端。 在HA方案中,每个JDBCServer服务(即实例)都是独立且等同的,当其中一个实例在升级或者业务中断时,其他的实例也能接受客户端的连接请求。 多主实例方案遵循以下规则: 当一个实例异常退出时,其他实例不会接管此实例上的会话,也不会接管此实例上运行的业务。 当JDBCServer进程停止时,删除在ZooKeeper上的相应节点。 由于客户端选择服务端的策略是随机的,可能会出现会话随机分配不均匀的情况,进而可能引起实例间的负载不均衡。 实例进入维护模式(即进入此模式后不再接受新的客户端连接)后,当达到退服超时时间,仍在此实例上运行的业务有可能会发生失败。
  • 背景介绍 基于社区已有的JDBCServer基础上,采用多主实例模式实现了其高可用性方案。集群中支持同时共存多个JDBCServer服务,通过客户端可以随机连接其中的任意一个服务进行业务操作。即使集群中一个或多个JDBCServer服务停止工作,也不影响用户通过同一个客户端接口连接其他正常的JDBCServer服务。 多主实例模式相比主备模式的HA方案,优势主要体现在对以下两种场景的改进。 主备模式下,当发生主备切换时,会存在一段时间内服务不可用,该段时间JDBCServer无法控制,取决于Yarn服务的资源情况。 Spark中通过类似于HiveServer2的Thrift JDBC提供服务,用户通过Beeline以及JDBC接口访问。因此JDBCServer集群的处理能力取决于主Server的单点能力,可扩展性不够。 采用多主实例模式的HA方案,不仅可以规避主备切换服务中断的问题,实现服务不中断或少中断,还可以通过横向扩展集群来提高并发能力。
  • 通信安全授权 MRS服务通过管理控制台为用户发放、管理和使用大数据组件,大数据组件部署在用户的VPC内部,MRS管理控制台需要直接访问部署在用户VPC内的大数据组件时需要开通相应的安全组规则,而开通相应的安全组规则需要获取用户授权,此授权过程称为通信安全授权。 通信安全授权需要在创建集群时完成,如图1所示。 图1 通信安全授权 建议用户在使用大数据组件时,仅给可信的IP地址放开安全组访问权限。谨慎使用0.0.0.0/0作为安全组源地址。
  • Hadoop 一个分布式系统框架。用户可以在不了解分布式底层细节的情况下,开发分布式程序,充分利用了集群的高速运算和存储。Hadoop能够对大量数据以可靠的、高效的、可伸缩的方式进行分布式处理。Hadoop是可靠的,因为它假设计算单元和存储会失败,因此维护多个工作数据副本,确保对失败节点重新分布处理;Hadoop是高效的,因为它以并行的方式工作,从而加快处理速度;Hadoop是可伸缩的,能够处理PB级数据。Hadoop主要由HDFS、MapReduce、HBase和Hive等组成。
  • 堆内存(Heap Memory) 堆是JVM运行时数据区域,所有类实例和数组的内存均从此处分配。初始堆内存根据JVM启动参数-Xms控制。 最大堆内存(Maximum Heap Memory):系统可以分配给程序的最大堆内存,JVM启动参数-Xmx指定。 分配的堆内存(Committed Heap Memory):为保证程序运行系统分配的堆内存总量,在程序运行期间根据使用情况,会在初始堆内存和最大堆内存之间波动变化。 使用的堆内存(Used Heap Memory):当前程序运行时已经使用的堆内存,这个内存小于分配的堆内存。 非堆内存:在JVM中堆之外的内存称为非堆内存(Non Heap Memory),JVM自身运行时所需要的内存区域,非堆内存有多个内存池,通常包括以下3个部分: 代码缓存区(Code Cache):主要用于存放JIT所编译的代码。默认限制240MB,可以通过JVM启动参数-XX:InitialCodeCacheSize -XX:ReservedCodeCacheSize进行设置。 类指针压缩空间(Compressed Class Space):存储类指针的元数据,默认限制1024MB,通过JVM启动参数-XX:CompressedClassSpaceSize进行设置。 元空间(Metaspace):用于存放元数据,通过JVM启动参数-XX:MetaspaceSize -XX:MaxMetaspaceSize进行设置。 最大非堆内存(Maximum Non Heap Memory):系统可以分配给程序的最大非堆内存。其值为代码缓存区、类指针压缩空间、元空间最大值之和。 分配的非堆内存(Committed Non Heap Memory):为保证程序运行的系统非堆内存总量,在程序运行期间根据使用的非堆内存情况,会在初始非堆内存和最大非堆内存之间波动变化。 使用非堆内存(Used Non Heap Memory):当前程序运行时已经使用的非堆内存,这个值小于分配的非堆内存。
  • ClickHouse与其他组件的关系 ClickHouse安装部署依赖ZooKeeper服务。 ClickHouse通过Flink流计算应用加工生成通用的报表数据(明细宽表),准实时写入到ClickHouse,通过Hive/Spark作业加工生成通用的报表数据(明细宽表),批量导入到ClickHouse。 ClickHouse暂不支持对接Kafka普通模式和HDFS安全模式。 父主题: ClickHouse
共99269条