IC培训
   
 
 
     班级规模及环境--热线:4008699035 手机:15921673576( 微信同号)
         每期人数限3到5人。
     上课时间和地点
  上课地点:【上海】:同济大学(沪西)/新城金郡商务楼(11号线白银路站) 【深圳分部】:电影大厦(地铁一号线大剧院站)/深圳大学成教院 【北京分部】:北京中山学院/福鑫大楼 【南京分部】:金港大厦(和燕路) 【武汉分部】:佳源大厦(高新二路) 【成都分部】:领馆区1号(中和大道) 【沈阳分部】:沈阳理工大学/六宅臻品 【郑州分部】:郑州大学/锦华大厦 【石家庄分部】:河北科技大学/瑞景大厦 【广州分部】:广粮大厦 【西安分部】:协同大厦
最近开课时间(周末班/连续班/晚班):2020年6月15日
     实验设备
       ☆资深工程师授课
        
        ☆注重质量 ☆边讲边练

        ☆合格学员免费推荐工作
        ★实验设备请点击这儿查看★
     质量保障
 

        1、培训过程中,如有部分内容理解不透或消化不好,可免费在以后培训班中重听;
        2、培训结束后,授课老师留给学员联系方式,保障培训效果,免费提供课后技术支持。
        3、培训合格学员可享受免费推荐就业机会。

 
课程大纲
   
 


一.概述:

1.1 什么是Lucene4

1.2 全文检索系统的结构

1.3 Lucene4能做什么

1.4 为什么使用Lucene4

1.5 Lucene4只关注文本的索引和搜索

1.6 索引库结构—倒排序索引

1.7 基于Lucene4的搜索程序例子

1.8 Nutch

Nutch是一个开源Java实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。

1.9 开源搜索引擎列表

JXTA Search是一个分布式的搜索系统.设计用在点对点的网络与网站上.

Carrot2是一个开源搜索结果分类引擎。它能够自动把搜索结果组织成一些专题分类。

 MG4J可以让你为大量的文档集合构建一个被压缩的全文本索引,通过使内插编码(interpolative coding)技术.

1.10 全球商用搜索市场

在全球商用搜索市场上,Autonomy是老大!Autonomy的市值不足Google的零头,而Google在这一市场的份额也不足Autonomy份额的零头.

1.11 几种常见的基于Lucene4的开源搜索解决方案对比

Solr Cloud;Solandra = Solr + Cassandra ;HBasene(Lucene+HBase)

1.12 Lucene4倒排索引原理

1.13 Lucene4基本开发环境配置-样例项目概览

1.14 快速浏览demo

 

二、Lucene系统架构 

2.1 Lucene4系统结构

2.2 Lucene4包结构功能表 

2.3 Lucene4的主要逻辑图 

2.3.1 查询逻辑

2.3.2 入库逻辑

2.4 理解核心索引类 

2.4.1 IndexWriter

2.4.2 Directory

2.4.3 Analyzer

 2.4.4 Document

2.4.5 Field

2.5 静态内部类

Field.Store ?表示Field的存储方式

2.6 关于Field的重要说明

org.apache.lucene.document.StringField   A field that is indexed but not tokenized: the entire String value is indexed as a single token.

org.apache.lucene.document.TextField      A field that is indexed and tokenized, without term vectors. For example this would be used on a 'body' field, that contains the bulk of a document's text.

org.apache.lucene.document.BinaryDocValuesField   The values are stored directly with no sharing, which is a good fit when the fields don't share (many) values, such as a title field. If values may be shared and sorted it's better to use?SortedDocValuesField.?

2.7 项目实战动手演练

 

三、 Lucene索引里有什么

什么是索引 index

Lucene索引的术语定义

倒排索引(inverted indexing)

Fields的种类

片断(segments)

文档编号(document numbers)

索引结构概述

Lucene src自带样例代码

Lucene索引的目录结构

 

四、Lucene索引深入

4.1 Lucene4索引的目录结构

4.2 索引文件后缀名说明:segments.gen, segments_N;write.lock;.si;.cfs, .cfe ;.fnm;dex .fdx;.fdt;.tim;.tip;.doc;.pos;.pay;.nvd, .nvm;.dvd, .dvm;.tvx;.tvd;.tvf;.del

4.3 当前版本索引的限制:Lucene的当前实现索引中使用Java语言中的 int 对term词典计数。所以单个索引片段文件中词典最大的数目为: ~2.1 billion  (约21亿)  X  索引片段文件最大个数(128)

故 能索引的词典最大数目为: ~274 billion (约2740亿)

这个限制不是索引文件格式造成的,是采用当前java实现版本造成的。(This is technically not a limitation of the index file format, just of Lucene's current implementation.)

同理:也是使用int 对document文档源计数的。并且索引文件格式也是采用的?Int32?在硬盘上存储document文档号的。这个限制即是实现版本也是索引文件格式的限制,后续可能会改为?UInt64?或?Vint 更好就没限制了。

4.4 索引文件可放的位置

内存,硬盘

 

五、 Lucene索引深入优化

5.1 索引的合并

实际代码实战

5.2 索引优化的部分技巧

重用Document和Field实例

使用按照内存消耗Flush代替根据文档数量Flush(4.3版缺省)

当使用 fuzzy 查询时设置一个较小的比较长度 (prefixLength) 

考虑使用filters 

等等

 

六、Lucene索引搜索及实战

6.1 理解核心搜索类 

6.2 IndexSearcher

6.2.1 基本Search方法

6.2.2 代码实战

 

6.3 Term 

6.3.1 TermQuery 

6.3.2 Hits 返回的命中结果

6.3.3 关键词搜索的大致过程

 

6.4 Query 

6.4.1 BooleanQuery布尔搜索

使用场景说明及代码实战

6.4.2   TermRangeQuery范围搜索

使用场景说明及代码实战

6.4.3   NumericRangeQuery范围搜索

 使用场景说明及代码实战

6.4.4   PrefixQuery 前缀搜索

使用场景说明及代码实战

6.4.5   PhraseQuery短语搜索

使用场景说明及代码实战

6.4.6   MultiPhraseQuery多短语搜索

使用场景说明及代码实战

6.4.7   FuzzyQuery模糊搜索

使用场景说明及代码实战

6.4.8   WildcardQuery通配符搜索

使用场景说明及代码实战

6.4.9   RegexpQuery正则表达式搜索

使用场景说明及代码实战

6.4.10   正则表达式语法

深入介绍:正则表达式是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”)。模式描述在搜索文本时要匹配的一个或多个字符串。/^\s*$/ 匹配空行。  /\d{2} \d{-5}/ 验证由两位数字、一个连字符再加 5 位数字组成的 ID 号。

/<\s*(\S+)(\s[^>]*)?>[\s\S]*<\s*\/\1\s*>/ 匹配 HTML 标记。

等等详细语法指导

6.4.11 SpanQuery跨度搜索

使用场景说明及代码实战

 

十二、Lucene搜索深入实战进阶

QueryParser语法

一、Terms,Fields

一般来说,创建索引的分析器和查询的分析器最好保持一致(当然也有特殊情况,比如单字索引,分词组合查询),所以选择一个不会干扰查询词的分析器是很重要的。

代码实战

 

二、Term操作符   

AND,OR,分组,特殊字符及: QueryParser.escape(q)? 可去除q中含有查询关键字的字符!如:* ,? 等

代码实战

 

三、模糊查询,范围查询

Lucene支持在Term中使用通配符来支持模糊查询。

范围查询是按字典查询,非“org.apache.lucene.search.NumericRangeQuery”

代码实战

 

四、优先级

Lucene支持给不同的查询词设置不同的权重。设置权重使用“^”符号,将“^”放于查询词的尾部,同时跟上权重值,权重因子越大,该词越重要。设置权重允许你通过给不同的查询词设置不同的权重来影响文档的相关性。

代码实战

 

十五、Lucene高级进阶

在索引中清除Document

maxDoc()和numDocs()

更新索引中的Document 

分页搜索的实现

 

十八、 Lucene排序

Lucene默认按照文档得分进行排序

explain方法

加分

sort排序

 

十九、Lucene过滤

内置的过滤器

org.apache.lucene.search.Filter 提供了几个内置的过滤器

Direct Known Subclasses: 

CachingWrapperFilter,DocTermOrdsRangeFilter,?FieldCacheRangeFilter,FieldCacheTermsFilter,?FieldValueFilter,?MultiTermQueryWrapperFilter,QueryWrapperFilter

FieldCacheRangeFilter

 

二十、Lucene分词器 

20.1 英文分析器比较   SimpleAnalyzer; StopAnalyzer; StandardAnalyzer xy&z?mail?is?-?xyz@hello.com ,中文 SimpleAnalyzer 空格及各种符号分割:xy   ,    z   ,   mail   ,   is   ,   xyz   ,   hello   ,  com ,   中文 StopAnalyzer 

空格及各种符号分割,去掉停止词,停止词包括?is,are,in,on,the等无实际意义的词 :xy    ,   z   ,    mail    ,     xyz    ,    hello   ,    com  ,   中文  StandardAnalyzer

混合分割,包括了去掉停止词,支持汉语 :xy ,  z  ,  mail  ,  xyz   ,  hello.com   ,   中   ,   文

代码实战

 

20.2 中文分词器IK Analyzer 2012介绍 

在2012版本中,IK实现了简单的分词歧义排除算法,标志着IK分词器从单纯的词典分词向模拟语义分词衍化。 

 

20.3 IK Analyzer 2012特性

采用了特有的“正向迭代最细粒度切分算法“,支持细粒度和智能分词两种切分模式

2012版本的智能分词模式支持简单的分词排歧义处理和数量词合并输出。 

采用了多子处理器分析模式,支持:英文字母、数字、中文词汇等分词处理,兼容韩文、日文字符 

优化的词典存储,更小的内存占用。支持用户词典扩展定义。特别的,在2012版本,词典支持中文,英文,数字混合词语。

 

20.4 IK Analyzer 2012分词效果示例

IK Analyzer 2012版本支持 细粒度切分 和 智能切分,以下是两种切分方式的演示样例。 

代码实战

 

20.5 IK Analyzer 2012下载包内容

环境搭建,代码实战

自定义扩展词典实战

IKAnalyzer.cfg.xml(分词器扩展配置文件) 

stopword.dic(停止词典) 

ext.dic(自定义扩展词典词典) 

常见UTF-8问题演示及解决,代码实战

20.6 高亮工具包

lucene-highlighter-4.3.0.jar

实现类似baidu搜索高亮显示关键词,及上下文的功能

代码实战

 

二十三、Lucene项目实战   9课时

某大型企业信息化系统中 某某文档中心管理系统

23.1 实现上传并解析全文检索各种文件类型

23.1.1 上传并解析各种格式的内容文档:(.txt,.pdf,.doc,.xls,.docx,.xlsx,.htm……)

23.1.2 Apache Tika – 文档解析工具包

org.apache.tika.parser.AutoDetectParser

23.1.3 文件上传工具包使用实战

org.apache.commons.fileupload

23.2 实现代码功能:

23.2.1 文件上传,

org.apache.commons.fileupload.servlet

实现文件上传并建立索引

23.2.2 文件下载,

实现文件点击下载

23.2.3 文件管理:文件删除,

目录管理,目录的增加、修改、删除

23.2.4 全文检索:

实现全文检索分页,

类似baidu搜索的分页实现

全文检索上下文实现摘要

org.apache.Lucene4.search.highlight.*

实现类似baidu搜索高亮显示关键词,及上下文的功能

 

端海教育实验设备
android开发板
linux_android开发板
fpga图像处理
端海培训实验设备
fpga培训班
 
本课程部分实验室实景
端海实验室
实验室
端海培训优势
 
  合作伙伴与授权机构



Altera全球合作培训机构



诺基亚Symbian公司授权培训中心


Atmel公司全球战略合作伙伴


微软全球嵌入式培训合作伙伴


英国ARM公司授权培训中心


ARM工具关键合作单位
  我们培训过的企业客户评价:
    端海的andriod 系统与应用培训完全符合了我公司的要求,达到了我公司培训的目的。 特别值得一提的是授课讲师针对我们公司的开发的项目专门提供了一些很好程序的源代码, 基本满足了我们的项目要求。
——上海贝尔,李工
    端海培训DSP2000的老师,上课思路清晰,口齿清楚,由浅入深,重点突出,培训效果是不错的,
达到了我们想要的效果,希望继续合作下去。
——中国电子科技集团技术部主任 马工
    端海的FPGA 培训很好地填补了高校FPGA培训空白,不错。总之,有利于学生的发展, 有利于教师的发展,有利于课程的发展,有利于社会的发展。
——上海电子学院,冯老师
    端海给我们公司提供的Dsp6000培训,符合我们项目的开发要求,解决了很多困惑我 们很久的问题,与端海的合作非常愉快。
——公安部第三研究所,项目部负责人李先生
    MTK培训-我在网上找了很久,就是找不到。在端海居然有MTK驱动的培训,老师经验 很丰富,知识面很广。下一个还想培训IPHONE苹果手机。跟他们合作很愉快,老师很有人情味,态度很和蔼。
——台湾双扬科技,研发处经理,杨先生
    端海对我们公司的iPhone培训,实验项目很多,确实学到了东西。受益无穷 啊!特别是对于那种正在开发项目的,确实是物超所值。
——台湾欧泽科技,张工
    通过参加Symbian培训,再做Symbian相关的项目感觉更加得心应手了,理 论加实践的授课方式,很有针对性,非常的适合我们。学完之后,很轻松的就完成了我们的项目。
——IBM公司,沈经理
    有端海这样的DSP开发培训单位,是教育行业的财富,听了他们的课,茅塞顿开。
——上海医疗器械高等学校,罗老师
  我们最新培训过的企业客户以及培训的主要内容:
 

一汽海马汽车 DSP培训
苏州金属研究院 DSP培训
南京南瑞集团技术 FPGA培训
西安爱生技术集团 FPGA培训,DSP培训
成都熊谷加世电气 DSP培训
福斯赛诺分析仪器(苏州) FPGA培训
南京国电工程 FPGA培训
北京环境特性研究所 达芬奇培训
中国科学院微系统与信息技术研究所 FPGA高级培训
重庆网视只能流技术开发 达芬奇培训
无锡力芯微电子股份 IC电磁兼容
河北科学院研究所 FPGA培训
上海微小卫星工程中心 DSP培训
广州航天航空 POWERPC培训
桂林航天工学院 DSP培训
江苏五维电子科技 达芬奇培训
无锡步进电机自动控制技术 DSP培训
江门市安利电源工程 DSP培训
长江力伟股份 CADENCE 培训
爱普生科技(无锡 ) 数字模拟电路
河南平高 电气 DSP培训
中国航天员科研训练中心 A/D仿真
常州易控汽车电子 WINDOWS驱动培训
南通大学 DSP培训
上海集成电路研发中心 达芬奇培训
北京瑞志合众科技 WINDOWS驱动培训
江苏金智科技股份 FPGA高级培训
中国重工第710研究所 FPGA高级培训
芜湖伯特利汽车安全系统 DSP培训
厦门中智能软件技术 Android培训
上海科慢车辆部件系统EMC培训
中国电子科技集团第五十研究所,软件无线电培训
苏州浩克系统科技 FPGA培训
上海申达自动防范系统 FPGA培训
四川长虹佳华信息 MTK培训
公安部第三研究所--FPGA初中高技术开发培训以及DSP达芬奇芯片视频、图像处理技术培训
上海电子信息职业技术学院--FPGA高级开发技术培训
上海点逸网络科技有限公司--3G手机ANDROID应用和系统开发技术培训
格科微电子有限公司--MTK应用(MMI)和驱动开发技术培训
南昌航空大学--fpga 高级开发技术培训
IBM 公司--3G手机ANDROID系统和应用技术开发培训
上海贝尔--3G手机ANDROID系统和应用技术开发培训
中国双飞--Vxworks 应用和BSP开发技术培训

 

上海水务建设工程有限公司--Alter/Xilinx FPGA应用开发技术培训
恩法半导体科技--Allegro Candence PCB 仿真和信号完整性技术培训
中国计量学院--3G手机ANDROID应用和系统开发技术培训
冠捷科技--FPGA芯片设计技术培训
芬尼克兹节能设备--FPGA高级技术开发培训
川奇光电--3G手机ANDROID系统和应用技术开发培训
东华大学--Dsp6000系统开发技术培训
上海理工大学--FPGA高级开发技术培训
同济大学--Dsp6000图像/视频处理技术培训
上海医疗器械高等专科学校--Dsp6000图像/视频处理技术培训
中航工业无线电电子研究所--Vxworks 应用和BSP开发技术培训
北京交通大学--Powerpc开发技术培训
浙江理工大学--Dsp6000图像/视频处理技术培训
台湾双阳科技股份有限公司--MTK应用(MMI)和驱动开发技术培训
滚石移动--MTK应用(MMI)和驱动开发技术培训
冠捷半导体--Linux系统开发技术培训
奥波--CortexM3+uC/OS开发技术培训
迅时通信--WinCE应用与驱动开发技术培训
海鹰医疗电子系统--DSP6000图像处理技术培训
博耀科技--Linux系统开发技术培训
华路时代信息技术--VxWorks BSP开发技术培训
台湾欧泽科技--iPhone开发技术培训
宝康电子--Allegro Candence PCB 仿真和信号完整性技术培训
上海天能电子有限公司--Allegro Candence PCB 仿真和信号完整性技术培训
上海亨通光电科技有限公司--andriod应用和系统移植技术培训
上海智搜文化传播有限公司--Symbian开发培训
先先信息科技有限公司--brew 手机开发技术培训
鼎捷集团--MTK应用(MMI)和驱动开发技术培训
傲然科技--MTK应用(MMI)和驱动开发技术培训
中软国际--Linux系统开发技术培训
龙旗控股集团--MTK应用(MMI)和驱动开发技术培训
研祥智能股份有限公司--MTK应用(MMI)和驱动开发技术培训
罗氏诊断--Linux应用开发技术培训
西东控制集团--DSP2000应用技术及DSP2000在光伏并网发电中的应用与开发
科大讯飞--MTK应用(MMI)和驱动开发技术培训
东北农业大学--IPHONE 苹果应用开发技术培训
中国电子科技集团--Dsp2000系统和应用开发技术培训
中国船舶重工集团--Dsp2000系统开发技术培训
晶方半导体--FPGA初中高技术培训
肯特智能仪器有限公司--FPGA初中高技术培训
哈尔滨大学--IPHONE 苹果应用开发技术培训
昆明电器科学研究所--Dsp2000系统开发技术
奇瑞汽车股份--单片机应用开发技术培训


 

        Troubleshooting Java Applications
                Classpath Errors
                Class Loaders
                Common Java Errors
        Troubleshooting Servers
                Native Libraries
                Threading Architecture
                Work Managers
                Deadlocks
                Overload Protection
                Deployment Problems
        Troubleshooting JDBC
                Data Source Management
                Diagnostics
                Debug Flags
                Connectivity Problems
                Connection Leaks
                Database Availability
        Troubleshooting JMS
                Management
                MBean Hierarchy
                Message Logging
                Diagnostics
                Debug Flags
                Overload Protection
                Lost Messages
                Duplicate Messages
        Troubleshooting Security
                SSL Internals
                Keystore Management
                Debug Flags
                Common SSL Problems
                Certificate Validation
                Embedded LDAP
                Security Audit
                Common LDAP Problems
        Troubleshooting Node Manager
                Internals
                Security
                Common Issues
        Troubleshooting Clusters
                Plug-in Configuration
                OHS Overview
                Plug-in Connectivity
                Plug-in Diagnostics
                Unicast Communication
                Replication Debug Flags
                Typical Replication Issues
  端海企业学院  
  备案号:备案号:沪ICP备08026168号-1 .(2024年07月24日)....................
友情链接:Cadence培训 ICEPAK培训 EMC培训 电磁兼容培训 sas容培训 罗克韦尔PLC培训 欧姆龙PLC培训 PLC培训 三菱PLC培训 西门子PLC培训 dcs培训 横河dcs培训 艾默生培训 robot CAD培训 eplan培训 dcs培训 电路板设计培训 浙大dcs培训 PCB设计培训 adams培训 fluent培训系列课程 培训机构课程短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班培训 南京 NS3培训 OpenGL培训 FPGA培训 PCIE培训 MTK培训 Cortex训 Arduino培训 单片机培训 EMC培训 信号完整性培训 电源设计培训 电机控制培训 LabVIEW培训 OPENCV培训 集成电路培训 UVM验证培训 VxWorks培训 CST培训 PLC培训 Python培训 ANSYS培训 VB语言培训 HFSS培训 SAS培训 Ansys培训 短期培训系列课程培训机构 长期课程列表实践课程高级课程学校培训机构周末班 端海 教育 企业 学院 培训课程 系列班 长期课程列表实践课程高级课程学校培训机构周末班 短期培训系列课程培训机构 端海教育企业学院培训课程 系列班 软件无线电培训 FPGA电机控制培训 Xilinx培训 Simulink培训 DSP培训班 数字信号培训 Ansys培训 LUA培训 单片机培训班 PCB设计课程 PCB培训 电源培训 电路培训 CST培训 PLC课程 变频器课程 Windows培训 R语言培训 Python培训 5G培训
在线客服