当前位置: 首页 > news >正文

手机网站设计咨询静态网页文件

手机网站设计咨询,静态网页文件,设计接单网站大全,wordpress男同通过连接 Hive Metastore#xff0c;或者兼容 Hive Metatore 的元数据服务#xff0c;Doris 可以自动获取 Hive 的库表信息#xff0c;并进行数据查询。 除了 Hive 外#xff0c;很多其他系统也会使用 Hive Metastore 存储元数据。所以通过 Hive Catalog#xff0c;我们不…通过连接 Hive Metastore或者兼容 Hive Metatore 的元数据服务Doris 可以自动获取 Hive 的库表信息并进行数据查询。 除了 Hive 外很多其他系统也会使用 Hive Metastore 存储元数据。所以通过 Hive Catalog我们不仅能访问 Hive也能访问使用 Hive Metastore 作为元数据存储的系统。如 Iceberg、Hudi 等。 使用须知​ 将 core-site.xmlhdfs-site.xml 和 hive-site.xml 放到 FE 和 BE 的 conf 目录下。优先读取 conf 目录下的 hadoop 配置文件再读取环境变量 HADOOP_CONF_DIR 的相关配置文件。Hive 支持 1/2/3 版本。支持 Managed Table 和 External Table支持部分 Hive View。可以识别 Hive Metastore 中存储的 Hive、Iceberg、Hudi 元数据。如果 Hadoop 节点配置了 hostname请确保添加对应的映射关系到 /etc/hosts 文件。 创建 Catalog​ Hive On HDFS​ CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hadoop.username hive );除了 type 和 hive.metastore.uris 两个必须参数外还可以通过更多参数来传递连接所需要的信息。 这些参数大多来自于 hadoop 集群的 core-site.xml, hdfs-site.xml 和 hive-site.xml 配置文件中。 如提供 HDFS HA 信息示例如下 CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hadoop.username hive,dfs.nameservicesyour-nameservice,dfs.ha.namenodes.your-nameservicenn1,nn2,dfs.namenode.rpc-address.your-nameservice.nn1172.21.0.2:8088,dfs.namenode.rpc-address.your-nameservice.nn2172.21.0.3:8088,dfs.client.failover.proxy.provider.your-nameserviceorg.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider );关于 Kerberos 相关配置请参阅 连接 Kerberos 认证的 Hive 集群 一节。 Hive On ViewFS​ CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hadoop.username hive,dfs.nameservicesyour-nameservice,dfs.ha.namenodes.your-nameservicenn1,nn2,dfs.namenode.rpc-address.your-nameservice.nn1172.21.0.2:8088,dfs.namenode.rpc-address.your-nameservice.nn2172.21.0.3:8088,dfs.client.failover.proxy.provider.your-nameserviceorg.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider,fs.defaultFS viewfs://your-cluster,fs.viewfs.mounttable.your-cluster.link./ns1 hdfs://your-nameservice/,fs.viewfs.mounttable.your-cluster.homedir /ns1 );ViewFS 相关参数可以如上面一样添加到 Catalog 配置中也可以添加到 conf/core-site.xml 中。 ViewFS 工作原理和参数配置可以参考 Hadoop 相关文档比如 ViewFS Guide。 Hive On JuiceFS​ 数据存储在 JuiceFS示例如下 需要把 juicefs-hadoop-x.x.x.jar 放在 fe/lib/ 和 apache_hdfs_broker/lib/ 下 CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hadoop.username root,fs.jfs.impl io.juicefs.JuiceFileSystem,fs.AbstractFileSystem.jfs.impl io.juicefs.JuiceFS,juicefs.meta xxx );Doris 访问腾讯云 DLC​ 备注 Doris 2.0.13 / 2.1.5 后支持该功能 腾讯云 DLC 采用 HMS 管理元数据因此可用 Hive catalog 进行联邦分析。 DLC 可基于 lakefs 或 cosn 进行数据存储。以下 catalog 创建方法对两种 FS 都适用。 CREATE CATALOG dlc PROPERTIES (type hms,hive.metastore.uris thrift://dlc_metastore_ip:dlc_metastore_port,s3.access_key xxxxx,s3.secret_key xxxxx,s3.region ap-xxx,s3.endpoint cos.ap-xxx.myqcloud.com,fs.cosn.bucket.region ap-xxx,fs.ofs.user.appid your_tencent_cloud_appid,fs.ofs.tmp.cache.dir tmp_cache_dir );创建完 catalog 后需要对 catalog 绑定的 appid 进行授权 。 Hive On S3​ CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,s3.endpoint s3.us-east-1.amazonaws.com,s3.region us-east-1,s3.access_key ak,s3.secret_key sk,use_path_style true );可选属性 s3.connection.maximumS3 最大连接数默认 50s3.connection.request.timeoutS3 请求超时时间默认 3000mss3.connection.timeoutS3 连接超时时间默认 1000ms Hive On OSS​ CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,oss.endpoint oss.oss-cn-beijing.aliyuncs.com,oss.access_key ak,oss.secret_key sk );Hive On OSS-HDFS​ 首先需要下载 Jindo SDK 然后将他们放置在 ${DORIS_HOME}/fe/lib 和 ${DORIS_HOME}/be/lib/java_extensions/preload-extensions并重启 FE 和 BE。 CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,oss.endpoint cn-beijing.oss-dls.aliyuncs.com,oss.access_key ak,oss.secret_key sk );注意 OSS-HDFS 的 endpoint 和 OSS 的 endpoint 不同。 Hive On OBS​ CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,obs.endpoint obs.cn-north-4.myhuaweicloud.com,obs.access_key ak,obs.secret_key sk );Hive On COS​ CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,cos.endpoint cos.ap-beijing.myqcloud.com,cos.access_key ak,cos.secret_key sk );Hive With Glue​ 连接 Glue 时如果是在非 EC2 环境需要将 EC2 环境里的 ~/.aws 目录拷贝到当前环境里。也可以下载 AWS Cli 工具进行配置这种方式也会在当前用户目录下创建 .aws 目录。 CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.type glue,glue.endpoint https://glue.us-east-1.amazonaws.com,glue.access_key ak,glue.secret_key sk );元数据缓存与刷新​ 关于元数据缓存和刷新机制请参阅 元数据缓存文档。 这里主要介绍基于 Hive Metastore 元数据事件的自定元数据订阅 订阅 Hive Metastore​ 通过让 FE 节点定时读取 HMS 的 Notification Event 来感知 Hive 表元数据的变更情况目前支持处理如下 Event 事件事件行为和对应的动作CREATE DATABASE在对应数据目录下创建数据库。DROP DATABASE在对应数据目录下删除数据库。ALTER DATABASE此事件的影响主要有更改数据库的属性信息注释及默认存储位置等这些改变不影响 Doris 对外部数据目录的查询操作因此目前会忽略此 Event。CREATE TABLE在对应数据库下创建表。DROP TABLE在对应数据库下删除表并失效表的缓存。ALTER TABLE如果是重命名先删除旧名字的表再用新名字创建表否则失效该表的缓存。ADD PARTITION在对应表缓存的分区列表里添加分区。DROP PARTITION在对应表缓存的分区列表里删除分区并失效该分区的缓存。ALTER PARTITION如果是重命名先删除旧名字的分区再用新名字创建分区否则失效该分区的缓存。 当导入数据导致文件变更分区表会走 ALTER PARTITION Event 逻辑不分区表会走 ALTER TABLE Event 逻辑。 如果绕过 HMS 直接操作文件系统的话HMS 不会生成对应事件Doris 因此也无法感知 该特性在 fe.conf 中有如下参数 enable_hms_events_incremental_sync: 是否开启元数据自动增量同步功能默认关闭。hms_events_polling_interval_ms: 读取 event 的间隔时间默认值为 10000单位毫秒。hms_events_batch_size_per_rpc: 每次读取 event 的最大数量默认值为 500。 如果想使用该特性 (华为 MRS 除外)需要更改 HMS 的 hive-site.xml 并重启 HMS 和 HiveServer2 propertynamehive.metastore.event.db.notification.api.auth/namevaluefalse/value /property propertynamehive.metastore.dml.events/namevaluetrue/value /property propertynamehive.metastore.transactional.event.listeners/namevalueorg.apache.hive.hcatalog.listener.DbNotificationListener/value /property 华为的 MRS 需要更改 hivemetastore-site.xml 并重启 HMS 和 HiveServer2 propertynamemetastore.transactional.event.listeners/namevalueorg.apache.hive.hcatalog.listener.DbNotificationListener/value /propertyHive 版本​ Doris 可以正确访问不同 Hive 版本中的 Hive Metastore。在默认情况下Doris 会以 Hive 2.3 版本的兼容接口访问 Hive Metastore。 如在查询时遇到如 Invalid method name: get_table_req 类似错误说明 Hive 版本不匹配。 你可以在创建 Catalog 时指定 Hive 的版本。如访问 Hive 1.1.0 版本 CREATE CATALOG hive PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hive.version 1.1.0 );列类型映射​ 适用于 Hive/Iceberge/Hudi HMS TypeDoris TypeCommentbooleanbooleantinyinttinyintsmallintsmallintintintbigintbigintdatedatetimestampdatetimefloatfloatdoubledoublecharcharvarcharvarchardecimaldecimalarraytypearraytype支持嵌套如 arraymapstring, intmapKeyType, ValueTypemapKeyType, ValueType支持嵌套如 mapstring, arrayintstructcol1: Type1, col2: Type2, ...structcol1: Type1, col2: Type2, ...支持嵌套如 structcol1: arrayint, col2: mapint, dateotherunsupported 注是否按照 Hive 表的 Schema 来截断 char 或者 varchar 列 如果会话变量 truncate_char_or_varchar_columns 开启则当 Hive 表的 Schema 中 char 或者 varchar 列的最大长度和底层 Parquet 或者 ORC 文件中的 schema 不一致时会按照 Hive 表列的最大长度进行截断。 该变量默认为 false。 查询 Hive 分区​ 可以通过下面两种方式查询 Hive 分区信息。 SHOW PARTITIONS FROM hive_table 该语句可以列出指定 Hive 表的所有分区以及分区值信息。 使用 table$partitions 元数据表 自 2.1.7 和 3.0.3 版本开始用户可以通过 table$partitions 元数据表查询 Hive 分区信息。table$partitions 本质上是一个关系表所以可以使用在任意 SELECT 语句中。 SELECT * FROM hive_table$partitions;使用 broker 访问 HMS​ 创建 HMS Catalog 时增加如下配置Hive 外表文件分片和文件扫描将会由名为 test_broker 的 Broker 完成 broker.name test_brokerDoris 基于 Iceberg FileIO 接口实现了 Broker 查询 HMS Catalog Iceberg 的支持。如有需求可以在创建 HMS Catalog 时增加如下配置。 io-impl org.apache.doris.datasource.iceberg.broker.IcebergBrokerIO集成 Apache Ranger​ Apache Ranger 是一个用来在 Hadoop 平台上进行监控启用服务以及全方位数据安全访问管理的安全框架。 Doris 支持为指定的 External Hive Catalog 使用 Apache Ranger 进行鉴权。 目前支持 Ranger 的库、表、列的鉴权暂不支持加密、行权限、Data Mask 等功能。 如需使用 Apache Ranger 为整个 Doris 集群服务进行鉴权请参阅 Apache Ranger 环境配置​ 连接开启 Ranger 权限校验的 Hive Metastore 需要增加配置 配置环境 创建 Catalog 时增加 access_controller.properties.ranger.service.name hive, access_controller.class org.apache.doris.catalog.authorizer.ranger.hive.RangerHiveAccessControllerFactory,注意 access_controller.properties.ranger.service.name 指的是 service 的类型例如 hivehdfs 等。并不是配置文件中 ranger.plugin.hive.service.name 的值。 配置所有 FE 环境 将 HMS conf 目录下的配置文件 ranger-hive-audit.xml, ranger-hive-security.xml, ranger-policymgr-ssl.xml 复制到 FE 的 conf 目录下。 修改 ranger-hive-security.xml 的属性参考配置如下 ?xml version1.0 encodingUTF-8? ?xml-stylesheet typetext/xsl hrefconfiguration.xsl? configuration#The directory for caching permission data, needs to be writablepropertynameranger.plugin.hive.policy.cache.dir/namevalue/mnt/datadisk0/zhangdong/rangerdata/value/property#The time interval for periodically pulling permission datapropertynameranger.plugin.hive.policy.pollIntervalMs/namevalue30000/value/propertypropertynameranger.plugin.hive.policy.rest.client.connection.timeoutMs/namevalue60000/value/propertypropertynameranger.plugin.hive.policy.rest.client.read.timeoutMs/namevalue60000/value/propertypropertynameranger.plugin.hive.policy.rest.ssl.config.file/namevalue/value/propertypropertynameranger.plugin.hive.policy.rest.url/namevaluehttp://172.21.0.32:6080/value/propertypropertynameranger.plugin.hive.policy.source.impl/namevalueorg.apache.ranger.admin.client.RangerAdminRESTClient/value/propertypropertynameranger.plugin.hive.service.name/namevaluehive/value/propertypropertynamexasecure.hive.update.xapolicies.on.grant.revoke/namevaluetrue/value/property/configuration为获取到 Ranger 鉴权本身的日志可在 doris_home/conf 目录下添加配置文件 log4j.properties。 重启 FE。 最佳实践​ 在 Ranger 端创建用户 user1 并授权 db1.table1.col1 的查询权限 在 Ranger 端创建角色 role1 并授权 db1.table1.col2 的查询权限 在 Doris 创建同名用户 user1user1 将直接拥有 db1.table1.col1 的查询权限 在 Doris 创建同名角色 role1并将 role1 分配给 user1user1 将同时拥有 db1.table1.col1 和 col2 的查询权限 Admin 和 Root 用户的权限不受 Apache Ranger 的权限控制 连接 Kerberos 认证的 Hive 集群​ 本小节主要介绍如何连接开启 Kerberos 认证的 Hive HDFS 集群。 环境准备​ krb5.conf krb5.conf 是 Kerberos 认证协议的配置文件。需将该文件部署在所有 FE 和 BE 节点上。并确保 Doris 集群可以和文件中记录的 KDC 服务连通。 默认情况下该文件位于 Hadoop 集群的 /etc 目录下。但请联系 Hadoop 集群管理员获取正确的 krb5.conf 文件并将其部署到所有 FE 和 BE 节点的 /etc 目录下。 注意某些情况下krb5.conf 的文件位置可能取决于环境变量 KRB5_CONFIG 或 JVM 参数中的 -Djava.security.krb5.conf 参数。请检查这些属性以确定 krb5.conf 的确切位置。 如需自定义krb5.conf的位置 FE在 fe.conf 配置 JVM 参数 -Djava.security.krb5.conf。BE在 be.conf 使用 kerberos_krb5_conf_path 配置项默认值为/etc/krb5.conf。 JVM 参数 请在 FE 和 BE 的 JVM 参数中添加如下配置位于 fe.conf 和 be.conf 中 -Djavax.security.auth.useSubjectCredsOnlyfalse-Dsun.security.krb5.debugtrue 并重启 FE、BE 节点以确保其生效。 Catalog 配置​ 通常情况下连接 Kerberos 认证的 Hive 集群需要在 Catalog 中添加如下属性 hadoop.security.authentication kerberos开启 kerberos 认证方式。hadoop.kerberos.principal your_principalHDFS namenode 的 principal。通常是 hdfs-site.xml 的 dfs.namenode.kerberos.principal 配置。hadoop.kerberos.keytab /path/to/your_keytabHDFS namenode 的 keytab 文件。通常是 hdfs-site.xml 的 dfs.namenode.keytab.file 配置。注意这个文件需要部署到所有 FE 和 BE 节点相同的目录下可自定义。yarn.resourcemanager.principal your_principalYarn Resource Manager 的 principal可以在 yarn-site.xml 中获取。hive.metastore.kerberos.principal your_principalHive metastore 的 principal。可以再 hive-site.xml 中。 注建议使用 kinit -kt your_principal /path/to/your_keytab 以及 klist -k /path/to/your_keytab 来 示例如下 CREATE CATALOG hive_krb PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hive.metastore.sasl.enabled true,hive.metastore.kerberos.principal your-hms-principal,hadoop.security.authentication kerberos,hadoop.kerberos.keytab /your-keytab-filepath/your.keytab, hadoop.kerberos.principal your-principalYOUR.COM,yarn.resourcemanager.principal your-rm-principal );CREATE CATALOG hive_krb_ha PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hive.metastore.sasl.enabled true,hive.metastore.kerberos.principal your-hms-principal,hadoop.security.authentication kerberos,hadoop.kerberos.keytab /your-keytab-filepath/your.keytab, hadoop.kerberos.principal your-principalYOUR.COM,yarn.resourcemanager.principal your-rm-principal,dfs.nameservicesyour-nameservice,dfs.ha.namenodes.your-nameservicenn1,nn2,dfs.namenode.rpc-address.your-nameservice.nn1172.21.0.2:8088,dfs.namenode.rpc-address.your-nameservice.nn2172.21.0.3:8088,dfs.client.failover.proxy.provider.your-nameserviceorg.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider );多 Kerberos 集群配置​ 如需同时访问多个启用了 Kerberos 的 Hadoop 集群需要修改 krb5.conf 文件并且配置 hadoop.security.auth_to_local 属性具体操作如下 在 krb5.conf 文件配置 Realms 配置多集群时需要把多个 Realm 配置到一个 krb5.conf 里头kdc 和 admin_server 也可以是域名。 [realms] REALM1.COM {kdc 172.21.16.8:88admin_server 172.21.16.8 } REALM2.COM {kdc kdc_hostname:88admin_server kdc_hostname }在 krb5.conf 文件配置 domain_realm 查找 kdc 时使用 Principal 中的 domain_name 去找相对应的 Realm [libdefaults]dns_lookup_realm truedns_lookup_kdc true [domain_realm].your-host.example REALM1.COMyour-host.example REALM1.COM.your-other-host.example REALM2.COMyour-other-host.example REALM2.COM如果未正确配置通常会在 Doris 的 log/be.out 或者 log/fe.out 看到两种与 domain_realm 有关的错误 Unable to locate KDC for realm / Cannot locate KDCNo service creds 配置 Domain 到 Realm 的映射 为了在多集群环境下能匹配到不同 Kerberos 服用用到的的 Principal推荐 core-site.xml 添加或修改如下配置 propertynamehadoop.security.auth_to_local/namevalueRULE:[1:$1$0](^.*.*$)s/^(.*).*$/$1/gRULE:[2:$1$0](^.*.*$)s/^(.*).*$/$1/gDEFAULT/value /property如果需要在 Catalog 中单独生效可以直接配置在 Properties 中 CREATE CATALOG hive_krb PROPERTIES (typehms,hive.metastore.uris thrift://172.0.0.1:9083,hive.metastore.sasl.enabled true,hive.metastore.kerberos.principal your-other-hms-principal,hadoop.security.authentication kerberos,hadoop.kerberos.keytab /your-other-keytab-filepath/your-other.keytab, hadoop.kerberos.principal your-other-principalYOUR.COM,yarn.resourcemanager.principal your-other-rm-principal,hadoop.security.auth_to_local RULE:[1:$1$0](^.*.*$)s/^(.*).*$/$1/gRULE:[2:$1$0](^.*.*$)s/^(.*).*$/$1/gDEFAULT );重启 Doris 服务 检验映射规则是否能正确匹配只要看访问不同集群时是否出现错误NoMatchingRule: No rules applied to user/domain_nameREALM.COM 问题排查​ 如遇 Kerberos 认证问题在设置了 JVM 参数 -Dsun.security.krb5.debugtrue 后会在 fe.out 或 be.out 中打印 Kerberos 认证相关信息。可以参考 FAQ 中的相关错误进行排查。 Hive Transactional 表​ Hive Transactional 表是 Hive 中支持 ACID 语义的表。详情可见 Hive Transactions。 Hive Transactional 表支持情况​ 表类型在 Hive 中支持的操作Hive 表属性支持的 Hive 版本Full-ACID Transactional Table支持 Insert, Update, Delete 操作transactionaltrue, transactional_propertiesinsert_only3.x2.x其中 2.x 需要在 Hive 中执行完 Major Compaction 才可以加载Insert-Only Transactional Table只支持 Insert 操作transactionaltrue3.x2.x 当前限制​ 目前不支持 Original Files 的场景。 当一个表转换成 Transactional 表之后后续新写的数据文件会使用 Hive Transactional 表的 Schema但是已经存在的数据文件是不会转化成 Transactional 表的 Schema这样的文件称为 Original Files。 最佳实践​ Hive Text 格式表的中空行行为的处理 默认情况下Doris 会忽略 Text 格式表中的空行。从 2.1.5 版本开始可以通过设置会话变量 read_csv_empty_line_as_null 来控制该行为。 set read_csv_empty_line_as_null true; 该变量默认为 false表示忽略空行。如果设置为 true这空行会读取为“所有列都是 null”的行并返回这种行为和部分 Hadoop 生态中查询引擎的行为一致。
http://www.dnsts.com.cn/news/240814.html

相关文章:

  • 网站优化要用什么软件宁乡县建设局网站
  • 直播网站做收入流水有交做拼多多网站的吗
  • 长沙公司做网站大概多少钱微信小程序开通需要多少钱
  • 北京网站设计的公司价格做盗版电影网站犯法吗
  • 杭州网站开发响应式上海软件定制开发公司
  • 搜索引擎论文3000字优就业seo课程学多久
  • 丽水市做网站的网站设计制作中心
  • 宝山网站建设方案企业网站建设对企业客户的意义
  • 国外包装设计网站做内网网站教程
  • 网站建设要注意些什么国内专业建站平台
  • dreawever如何做本地网站短链接转换网站
  • 推广公司的网站可以采取哪些方式设计方案评价
  • 孔为民医生个人网站网站运营队伍与渠道建设
  • 云服务器建设网站用什么系统蚌埠市做网站
  • 建设信用卡分期购物网站三门峡 网站建设
  • 西部数码空间可以做会所网站吗郑州网站优化怎样做
  • 湖北北京网站建设网站开发人员职位晋升空间
  • 制作平台网站费用河南郑州网站关键词排名助手
  • 做网站多少钱?黄冈智能网站建设平台
  • 移动端网站建站视频爱奇艺推广联盟
  • 装修推广网站哪个好公司有必要建设网站吗
  • 网站建设延期报告淄博网站设计方案
  • 做商城网站哪里山西智能建站系统价格
  • 如何编程制作自己的网站北京网站策划服务
  • 云虚拟主机建设网站一定要域名烟台专业做网页的公司
  • 企业网站设计方案书wordpress 手机端模板下载
  • 石家庄网站制作费用wordpress打开慢 cdn
  • 3liang 设计网站 源码建设信用网站的作用
  • 宁波网站建设制作网络公司上海网站seo招聘
  • 湘潭建设网站的公司电脑怎么用别人的网站吗