惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 聂微东
C
CXSECURITY Database RSS Feed - CXSecurity.com
H
Help Net Security
P
Proofpoint News Feed
V
Visual Studio Blog
WordPress大学
WordPress大学
Recent Announcements
Recent Announcements
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tailwind CSS Blog
Hugging Face - Blog
Hugging Face - Blog
GbyAI
GbyAI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
MyScale Blog
MyScale Blog
美团技术团队
Stack Overflow Blog
Stack Overflow Blog
Recorded Future
Recorded Future
Blog — PlanetScale
Blog — PlanetScale
宝玉的分享
宝玉的分享
H
Hackread – Cybersecurity News, Data Breaches, AI and More
I
InfoQ
Microsoft Security Blog
Microsoft Security Blog
The Register - Security
The Register - Security
Y
Y Combinator Blog
Last Week in AI
Last Week in AI
F
Full Disclosure
Jina AI
Jina AI
博客园 - 司徒正美
小众软件
小众软件
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
SegmentFault 最新的问题
量子位
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
U
Unit 42
Vercel News
Vercel News
L
LangChain Blog
云风的 BLOG
云风的 BLOG
The GitHub Blog
The GitHub Blog
B
Blog RSS Feed
有赞技术团队
有赞技术团队
腾讯CDC
Martin Fowler
Martin Fowler
博客园 - 叶小钗
博客园 - 三生石上(FineUI控件)
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
D
DataBreaches.Net
Engineering at Meta
Engineering at Meta
F
Fortinet All Blogs
M
MIT News - Artificial intelligence

博客园 - 小潘

GreenPlum tidb 性能比较 hbase master 无法启动 hbase 集群写入能力优化-预分区、TTL的应用 TiSpark 初级应用 ETL-kettle 核心执行逻辑 HBase 写入优化 HBase ttl 验证 大数据多维分析平台的实践 TiDB在特来电的探索 Druid 基础使用-操作篇(Pivot、plyql) Druid 基础使用-操作篇(Imply ) Druid安装-单机 phoenix 索引修复-基本流程 oracle sql跟踪及‘相关问题 数据交换平台 reportview 实践学习 linq 排序 学习一 开始学习LINQ
Phoenix -修复表索引
小潘 · 2016-11-17 · via 博客园 - 小潘
      • 索引的修复可以通过2种方式,(关于pehoenix的索引的生命周期可以参考  https://community.hortonworks.com/articles/58818/phoenix-index-lifecycle.html
        • 一 手工执行修复命令 
        • 依赖phoenix的自动修复命令
      • 自动修复
      • 手工修复
        • 当数据量比较小的时候,正常的修复命令可以正常执行,但是由于数据量较大,出现了修复超时、修复错误等问题
        • 当数据量较大的时候,采用修复命令的时候,比较曲折,由于各方面原因最终没有修复成功,
      • 下面的一个场景为修复我们的一个数据库表原始数据800G,索引数据70个G左右,regionserver 是3台,8core 14g
      • 修复流程如下
      • 查看当前索引的状态
      •                                 select TABLE_NAME,DATA_TABLE_NAME,INDEX_TYPE,INDEX_STATE,INDEX_DISABLE_TIMESTAMP from system.catalog where INDEX_TYPE is not null

;


      验证sql 是否走索引 发现没有走      
                            .修复索引

          • ALTER INDEX IF EXISTS SysActionLog_idx ON "SysActionLog" REBUIL3
      • 执行出现超时
              Error: org.apache.phoenix.exception.PhoenixIOException: Failed after attempts=36, exceptions:
        • Wed Nov 16 11:06:26 GMT 2016, null, java.net.SocketTimeoutException: callTimeout=60000, callDuration=73626: row '' on table 'SYSACTIONLOG_IDX' at region=SYSACTIONLOG_IDX,,1463835204579.ce4eb5993504052a305c8807d6234d93., hostname=workernode2.reddog.microsoft.com,16020,1479228656092, seqNum=1438608 (state=08000,code=101)

      • 再次查询。

      • 此时索引的状态已经 变为正在进行修复
  •                    修改phoenix 的执行超时(index.phoenix.querytimeout) ,后执行 再次 仍然出现错误

        6/11/16 11:40:40 WARN client.ScannerCallable: Ignore, probably already closed(region server 的日志对应的为超时)
          org.apache.hadoop.hbase.UnknownScannerException: org.apache.hadoop.hbase.UnknownScannerException: Name: 5, already closed?
          •   at org.apache.hadoop.hbase.regionserver.HRegionServer.scan(HRegionServer.java:3186)
           at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:29994)
           at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2080)
           at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:108)
          at org.apache.hadoop.hbase.ipc.RpcExecutor.consumerLoop(RpcExecutor.java:114
        at org.apache.hadoop.hbase.ipc.RpcExecutor$1.run(RpcExecutor.java:94)
         at java.lang.Thread.run(Thread.java:74

      5修改超时时间
                        针对上面的错误,分析regionserve的日志,发现是由于一些超时时间导致,在每个regionserver 的节点上增加如下参数
        • <property>
          <name>hbase.client.scanner.timeout.period</name>
          <value>9200000</value>
          </property>
          <property>
          <name>hbase.rpc.timeout</name>
          <value>9200000</value>
          </property>
          <property>
          <name>hbase.regionserver.lease.period</name>
          <value>9200000</value>
          </property>
          <property>
          <name>phoenix.query.timeoutMs</name>
          <value>9200000</value>
          </property>

    • 目前 怀疑 应该在HDInsight 节点下的phoenix 目录下的hbase-site.xml 增加上面的几个参数,但是原生的HDP下phoenix的目录下没有这个hbase-site.xml。 有时间进一步验证....  

    • 在Hdp 原生的集群执行时,也出现了超时,由于时微软的azure windows 平台上 不知HDP在window上是否有问题,同样的操作和参数配置 在测试的HDP liux集群出现了如下错误,需要进一步解决,(调整zk的时间)
  • 未完 待续

posted on 2016-11-17 10:24  小潘  阅读(4758)  评论()    收藏  举报