将 MySQL 的全量数据导入到 Apache Solr 中

Similar documents
Apache CarbonData集群模式使用指南

Spark读取Hbase中的数据

通过Hive将数据写入到ElasticSearch

使用Cassandra和Spark 2.0实现Rest API服务

使用Hive读取ElasticSearch中的数据

如何在 Apache Hive 中解析 Json 数组

Flume-ng与Mysql整合开发

使用Spark SQL读取Hive上的数据

六种使用Linux命令发送带附件的邮件

SparkR(R on Spark)编程指南

使用MapReduce读取XML文件

在Spring中使用Kafka:Producer篇

Kafka客户端是如何找到 leader 分区的

三种方法实现Hadoop(MapReduce)全局排序(1)

Guava学习之Resources

Hadoop&Spark解决二次排序问题(Hadoop篇)

Hive几种数据导入方式

使用Apache Beam读写HDFS上的文件

三种恢复 HDFS 上删除文件的方法

Hive:用Java代码通过JDBC连接Hiveserver

Flink on YARN部署快速入门指南

在Fedora上部署Hadoop2.2.0伪分布式平台

Flink快速上手(QuickStart)

韶关:神奇丹霞

哼, 你 們 不 回 答 又 怎 麼 樣? 不 管 是 多 大 來 頭, 現 在 都 被 血 魔 吞 噬 無 蹤 了 你 們 幾 個 真 是 太 過 分, 我 不 犯 你 們, 你 們 卻 一 天 到 晚 來 挑 釁 我 教 尊 冷 笑 著 說 道 嗚, 大 人 土 地 大 姐 跪 下 來, 流 下

解决百度统计无法获取https来源的referrer

21 个你应该知道的 wget 命令

伊春:醉人林都

教学〔2016〕120号

关林:武圣陵寝

泰山:五岳独尊

Ubuntu和CentOS如何配置SSH使得无密码登陆

Hadoop元数据合并异常及解决方法

国内26省市新能源汽车推广规划已出台

帝国CMS下在PHP文件中调用数据库类执行SQL语句实例

北戴河:海阔天空

使用Apache Spark将数据写入ElasticSearch

案例分享产品文档

Apache Spark 2.4 新增内置函数和高阶函数使用介绍

59 1 CSpace 2 CSpace CSpace URL CSpace 1 CSpace URL 2 Lucene 3 ID 4 ID Web 1. 2 CSpace LireSolr 3 LireSolr 3 Web LireSolr ID

Guava学习之CharSequenceReader


西岭雪山滑雪场

Hadoop 2.2.0安装和配置lzo

PowerPoint 演示文稿

Spark1.4中DataFrame功能加强,新增科学和数学函数

Spark作业代码(源码)IDE远程调试

電機工程系認可證照清單 /7/1

Flink快速上手之Scala API使用

untitled

团 学 要 闻 我 校 召 开 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 3 月 17 日, 我 校 共 青 团 五 届 九 次 全 委 ( 扩 大 ) 会 议 在 行 政 办 公 楼 五 楼 会 议 室 举 行, 校 团 委 委 员 各 院 ( 系 ) 团 委 书 记 校 学 生

江门:中国第一侨乡

是 喔, 就 是 那 個 在 BBS 醫 療 版 跟 你 嗆 聲, 自 稱 有 三 十 多 年 推 拿 經 驗 的 大 叔 嗎? 一 個 看 來 頗 為 清 秀 的 女 生 問 道, 她 語 氣 中 略 感 訝 異 是 啊, 什 麼 推 拿 按 摩 有 多 好, 還 要 人 生 病 盡 量 不 要

「西醫基層總額支付委員會《第28次委員會議紀錄

教育扩张能改善收入分配差距吗?——来自CHNS2006年数据的证据

山水文化,市井人家——以湖州邱城小镇的概念性规划为例

南華大學數位論文

最 佳 做 法 : 在 需 要 时 或 需 要 前 从 CDN 下 载 内 容, 并 使 它 们 与 Flash 代 码 和 文 件 分 离 存 盘 率 vs 响 应 速 度 当 用 户 玩 游 戏 时, 客 户 端 可 以 把 每 一 个 变 化 实 时 写 到 后 端 Web 服 务 器, 也

Cityville Game Free Download For Pc Full Version Offline. custom sistema PACKARD court support

投影片 1

2 SGML, XML Document Traditional WYSIWYG Document Content Presentation Content Presentation Structure Structure? XML/SGML 3 2 SGML SGML Standard Gener

truck and trailer game free download full version

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

六域链联盟 SDChain-Matrix 节点搭建指南 2018/07/26 Version : 1.0.0

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

64 [ 46 ] (p297) 1924 :? [ 47 ] (p570) ; ; ; ; ; ; ; ; ; ; ; [ 11 ]; [ 35 ] [ 49 ] [ 32 ] ( ) [ 48 ] (p 425) [ 50 ] (p 670 6

业 务 与 运 营 Business & Operation (Transform) 加 载 (Load) 至 目 的 端 的 过 程, 该 部 分 在 数 据 挖 掘 和 分 析 过 程 中 为 最 基 础 的 一 部 分 一 个 良 好 的 ETL 系 统 应 该 有 以 下 几 个 功 能 1

Azure_s

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

01

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该


Urdu Naat Books Free Download Pdf

是 证 券 市 场 的 后 来 者, 但 在 前 景 广 阔 的 道 路 上 前 行, 终 将 成 为 这 个 市 场 的 领 先 者, 这 里 会 给 你 一 个 巨 大 的 舞 台, 这 里 有 你 需 要 的 机 会, 这 里 欢 迎 优 秀 的 你! 二 招 收 条 件 1. 遵 守 国 家

Spark 2.0介绍:在Spark SQL中定义查询优化规则

Kubenetes 系列列公开课 2 每周四晚 8 点档 1. Kubernetes 初探 2. 上 手 Kubernetes 3. Kubernetes 的资源调度 4. Kubernetes 的运 行行时 5. Kubernetes 的 网络管理理 6. Kubernetes 的存储管理理 7.

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

<4D F736F F D20B9FABCD2BBFAB9D8B0ECB9ABBDA8D6FEBACDB4F3D0CDB9ABB9B2BDA8D6FEC4DCBAC4BCE0B2E2CFB5CDB3C8EDBCFEBFAAB7A2D6B8B5BCCBB5C3F7CAE92E646F63>

Itext Sign Pdf Example Download

cyberghost vpn premium keygen torrent

八个基本的 Docker 容器管理命令

Free Download Mivo Tv For Pc. Paraiso About private Sunday effect Georgia letra Results

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

Reducing Client Incidents through Big Data Predictive Analytics

Risala Film Nederlands Ondertiteld Downloadinstmank. awarded Clive ministry consulta relaxed Pocos points which

Ioncube Php Encoder 8 3 Crack 4. llamaba octobre traslado General Search colony

“百企入校——广西青年企业家协会高校

合集

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

XXXXXXXX

行 业 市 场 研 究 属 于 企 业 战 略 研 究 范 畴, 作 为 当 前 应 用 最 为 广 泛 的 咨 询 服 务, 其 研 究 报 告 形 式 呈 现, 通 常 包 含 以 下 内 容 : 一 份 专 业 的 行 业 研 究 报 告, 注 重 指 导 企 业 或 投 资 者 了 解 该

ElasticSearch系列文章:集群操作

0627學校內控流程圖完整版0627

对于部署 MOSS 工作流, 有下面这些步骤 1. 添加 DLL 文件到 GAC 中 2. 配置 feature.xml 和 workflow.xml 文件 3. 在服务器添加 Feature 文件夹, 复制相关文件 4. 利用 stsadm 命令部署并激活 Feature Step1 添加 DLL

据传-蚂蚁金服350亿美元开约A股IPO,马云身价又要暴涨

张家口:塞外明珠

master the boards step 2 ck pdf free download

Daniel Humair - Baby Boom says genero AGENCY creating como View Easy

Transcription:

关于分页方式导入全量数据请参照 将 MySQL 的全量数据以分页的形式导入到 Apache Solr 中 在前面几篇文章中我们介绍了如何通过 Solr 的 post 命令将各种各样的文件导入到已经创建好的 Core 或 Collection 中 但有时候我们需要的数据并不在文件里面, 而是在别的系统中, 比如 MySql 里面 不过高兴的是,Solr 针对这些数据也提供了强大的数据导入工具, 这就是 DataImportHandler DataImportHandler 是 Solr 中最重要的工具之一, 利用它我们可以轻易地将数据从数据库 XML 文件以及 HTTP 数据源导入 Solr 中, 同时支持全量和增量的数据导入 DataImportHandler 的实现在 solr-dataimporthandler-x.x.x.jar 和 solr-dataimporthandler-extras-x.x.x.jar 两个文件中 下面我们将利用这个工具从 MySQL 导数据到 Solr 中 其实在 Solr 的安装包里面提供了这个工具的使用例子 ($SORE_HOME/example/example- DIH), 我们可以通过 solr -e dih 命令来加载这个例 不过基于学习的心态, 我不打算直接使用这个例子下的文件, 而是从头开始创建 下面跟我一步一步地查看如何实现 下载相关依赖 在进行相关设置之前, 我们准备好运行环境, 因为我们这用到了 MySQL, 自然需要准备好 MySQL 相关驱动 我们使用下面的命令下载这个驱动, 并将它移到 $SOLR_HOME/dist 目录下 : wget http://central.maven.org/maven2/mysql/mysql-connector-java/8.0.8-dmr/mysqlconnector-java-8.0.8-dmr.jar mv ~/mysql-connector-java-8.0.8-dmr.jar $SOLR_HOME/dist 准备配置文件并创建 Core MySQL 驱动包准备好之后, 我们需要准备配置相关文件了 Solr 安装包默认都自带了名为 _default 的配置, 对于的配置文件夹是 $SORE_HOME/server/solr/configsets/_default, 我们直接从这个文件夹复制一份新的配置 : cp -R _default iteblog 然后到 $SORE_HOME/server/solr/configsets/iteblog/conf/solrconfig.xml 里面添加 MySQL 1 / 10

驱动的路径 : <lib dir="${solr.install.dir:../../../../dist/" regex="mysql-connector-java-\d.*\.jar" /> 配置文件准备好之后, 我们就可以创建 Core/Collection 了, 命令如下 : [root@iteblog.com /opt/solr]$ bin/solr create -c mysql2solr -d /opt/solr/server/solr/configsets/ iteblog/ INFO - 2018-08-06 22:54:42.684; org.apache.solr.util.configuration.sslcredentialproviderfact ory; Processing SSL Credential Provider chain: env;sysprop Created new core 'mysql2solr' 注意, 一定要注意加上 -d /opt/solr/server/solr/configsets/iteblog/ 参数 创建完之后, 我们就可以在 Admin UI 界面看到我们创建好的 Core: 如果想及时了 2 / 10

解 Spark Hadoop 或者 Hbase 相关的文章, 欢迎关注微信公共帐号 :iteblog_hadoop 设置 DataImportHandler 按照上面步骤创建的 Core 是无法从 MySQL 导数到 Solr 的, 我们可以到 http://iteblog.com:8983/solr/#/mysql2solr/dataimport/ 路径下显示的页面看到 The solrconfig.xml file for this index does not have an operational DataImportHandler defined! 相关错误提示, 因为我们没有定义 DataImportHandler 到 mysql2solr 的 solrconfig.xml 配置文件里面添加如下内容 : <requesthandler name="/dataimport" class="solr.dataimporthandler"> <lst name="defaults"> <str name="config">db-data-config.xml</str> </lst> </requesthandler> 并在 solrconfig.xml 配置文件同一目录下创建名为 db-data-config.xml 的配置文件, 在这个文件里面添加如下内容 : <dataconfig> <datasource driver="com.mysql.jdbc.driver" url="jdbc:mysql://localhost:3306/iteblog" user="root" password="xxx" /> <document> <entity name="iteblog" query="select id,post_title,post_author from wp_posts"> <field column="id" name="id" /> <field column="post_title" name="post_title" /> <field column="post_author" name="post_author" /> </entity> </document> </dataconfig> 这里将我博客的 iteblog 数据库下面的 wp_posts 表里面的数据导入到 Solr, 其中只使用 id,post_title,post_author 三个字段, 其含义分别是文章 id 文章标题以及文章作者等信息 现在我们需要到 http://iteblog.com:8983/solr/#/mysql2solr/schema 里面添加 id,post_title,post_author 三个字段的模式相关定义, 如下 : 3 / 10

如果想及时了解 Spark Hadoop 或者 Hbase 相关的文章, 欢迎关注微信公共帐号 :iteblog_hadoop 这里以 post_title 为例进行了介绍, 其他字段和这个步骤类似, 不再赘述 添加完字段以后我们就可以看到如下界面的信息 : 4 / 10

如果想及时了解 Spark Hadoop 或者 Hbase 相关的文章, 欢迎关注微信公共帐号 :iteblog_hadoop 到这里 id,post_title,post_author 三个字段的模式已经全部定义完毕 需要注意的是 : 因为 MySQL 里面正好有一个名为 id 的字段用于标记为唯一键, 而 Solr 里面也正好默认存在名为 id 的字段, 定义如下 : 5 / 10

<field name="id" type="string" multivalued="false" indexed="true" required="true" sto red="true"/> 如果需要导的 MySQL 表唯一键不叫 id, 比如叫 iteblog_id, 那么我们需要定义它, 而且还需要将 Solr 里面的 uniquekey 属性设置为它, 如下 : <field name="iteblog_id" type="string" multivalued="false" indexed="true" required="true" stored="true"/> <uniquekey>iteblog_id</uniquekey> 其实我们还可以直接到 mysql2solr 的 managed-schema 配置文件添加下面的定义 : <field name="post_author" type="string" indexed="true" stored="true"/> <field name="post_title" type="string" indexed="true" stored="true"/> 其效果和直接在 Admin UI 界面添加类似 一切准备好之后, 我们需要重启 Solr, 然后就可以看到如下界面 : 6 / 10

如果想及时了解 Spark Hadoop 或者 Hbase 相关的文章, 欢迎关注微信公共帐号 :iteblog_hadoop 好了, 现在我们可以点击这个界面里面的 Execute 按钮开始导入 MySQL 的全量数据了, 结果如下 : 7 / 10

如果想及时了解 Spark Hadoop 或者 Hbase 相关的文章, 欢迎关注微信公共帐号 :iteblog_hadoop 如果你看到上面的界面说明导数据成功了, 上面界面显示我们一共成功导入了 1086 篇文章, 花费时间为 31s 其实点击 Execute 按钮相当于执行下面的 URL 请求 : http://iteblog.com:8983/solr/mysql2solr/dataimport?core=mysql2solr&indent=on&commit=tr ue&name=dataimport&clean=false&wt=json&command=full-import 输出 { "responseheader": { "status": 0, "QTime": 16, "initargs": [ "defaults", [ "config", "db-data-config.xml" ] ], "command": "full-import", "status": "idle", "importresponse": "", "statusmessages": { 8 / 10

"Total Requests made to DataSource": "1", "Total Rows Fetched": "1086", "Total Documents Processed": "1086", "Total Documents Skipped": "0", "Full Dump Started": "2018-08-06 23:30:00", "": "Indexing completed. Added/Updated: 1086 documents. Deleted 0 documents.", "Committed": "2018-08-06 23:30:01", "Time taken": "0:0:1.79" 现在我们可以从 Solr 里面查询数据了 : curl "http://iteblog.com:8983/solr/mysql2solr/select?q=*:*&rows=2" { "responseheader": { "status": 0, "QTime": 5, "params": { "q": "*:*", "rows": "2", "response": { "numfound": 1086, "start": 0, "docs": [ { "post_title": " 联系我 ", "post_author": "1", "id": "2", "_version_": 1608065325379616800, { "post_title": "Spark 2.0 介绍 :Catalog API 介绍和使用 ", "post_author": "1", "id": "1701", "_version_": 1608065330188386300 ] 9 / 10

Powered by TCPDF (www.tcpdf.org) 到这里我们已经成功的将 MySQL 里面的数据全量导入 Solr 了 现在有几个问题 : 如果全量数据很大咋办? 一次性导入肯定会出问题, 可以分页导入吗? 增量数据如何导入? 这些问题我们在后面文章进行介绍吧, 很晚了, 睡觉去了 本博客文章除特别声明, 全部都是原创! 转载本文请加上 : 转载自过往记忆 (https://www.iteblog.com/) 本文链接 : () 10 / 10