电影智能问答——neo4j数据库创建

论坛 期权论坛     
匿名技术用户   2021-1-15 13:52   913   0
<div class="blogpost-body" id="cnblogs_post_body">
<p>一 数据库的选用</p>
<p>我们要实现一个智能问答的系统,所以问到的关键词是不确定的,所以查询的时候更注重的是数据的连接性。而普通的表格数据库它们不能提供用于遍历大量数据的适当性能,无论是遍历还是检索都比较困难。做为图数据库的Neo4j 可以提供存储更多的连接数据。 它将每个配置文件数据作为节点存储在内部,它与相邻节点连接的节点,它们通过关系相互连接,这样检索或遍历是非常容易和更快的。</p>
<p>所以我们选用Neo4j数据库,相比而言他有着以下的有点:</p>
<ul><li>它很容易表示连接的数据</li><li>检索/遍历/导航更多的连接数据是非常容易和快速的</li><li>它非常容易地表示半结构化数据</li><li>Neo4j CQL查询语言命令是人性化的可读格式,非常容易学习</li><li>它使用简单而强大的数据模型</li><li>它不需要复杂的连接来检索连接的/相关的数据,因为它很容易检索它的相邻节点或关系细节没有连接或索引</li></ul>
<p> </p>
<p>二 构建Neo4j数据库</p>
<p>1.mysql数据库结构</p>
<p>因为我们要做的是一个电影的智能问答系统,所以足够的数据是确保问答成功的基础,我们不可能将数据一条一条的导入,所以我们在网上找到一个关于电影的mysql数据库。该数据库的结构包括以下内容:</p>
<p>(1).genre表(电影类型表)</p>
<p><img alt="" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-f8169d325932658dedb58d64f96e2b04.png"></p>
<p>(2). movie表(电影信息表)</p>
<p><img alt="" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-7b5238f9973c9941177122cebfd2acfc.png"></p>
<p>(3). person表(演员信息表)</p>
<p><img alt="" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-ee75854750be76811e73cb5765d4ef50.png"></p>
<p>(4). movie_to_genre表(电影与类别对应关系)</p>
<p><img alt="" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-89fe6ab56ef8939fab76eb179a73c17e.png"></p>
<p>(5):person_to_movie表(电影与演员的对呀关系)</p>
<p><img alt="" src="https://201907.oss-cn-shanghai.aliyuncs.com/cs/5606289-4ba49bfcb02f51c5b3b1e43189dbb1b9.png"></p>
<p>以上为mysql的数据类型以及部分数据,我们要将mysql数据已csv格式导出,才可以用在Neo4j的数据库上。</p>
<p>2. 导出csv文件</p>
<p>由于mysql导出数据的默认目录是:安装路径\Uploads\,因此,我们导出csv的时候,一定要在这个目录下指定导出文件名,否则会提示权限不足。</p>
<p>脚本语言如下:</p>
<div class="cnblogs_code">
  <pre class="blockcode"><span style="color:#008080;"> 1</span> <span style="color:#000000;">use movie;
</span><span style="color:#008080;"> 2</span>  
<span style="color:#008080;"> 3</span> <span style="color:#000000;">#CMD命令 查看MySql的导入与导出的目录【其他目录无权限】
</span><span style="color:#008080;"> 4</span> # 使用mysql -u root -<span style="color:#000000;">p  连接mysql
</span><span style="color:#008080;"> 5</span> # show variables like <span style="color:#800000;">&#39;</span><span style="color:#800000;">%secure%</span><span style="color:#800000;">&#39;</span>
<span style="color:#008080;"> 6</span> #&#43;--------------------------&#43;------------------------------------------------&#43;
<span style="color:#008080;"> 7</span> #| Variable_name            | Value                                          |
<span style="color:#008080;"> 8</span> #&#43;--------------------------&#43;------------------------------------------------&#43;
<span style="color:#008080;"> 9</span> #| require_secure_transport | OFF                                            |
<span style="color:#008080;">10</span> #| secure_auth              | ON                                             |
<span style="color:#008080;">11</span> #| secure_file_priv         | C:\ProgramData\MySQL\MySQL Server <span style="color:#800080;">5.7</span>\Uploads\ |<span style="color:#000000;">genregenre
</span><span style="color:#008080;">12</span> #&#43;--------------------------&#43;------------------------------------------------&#43;
<span style="color:#008080;">13</span> #<span style="color:#800080;">3</span> rows <span style="color:#0000ff;">in</span> <span style="color:#0000ff;">set</span>, <span style="color:#800080;">1</span> warning (<span style="color:#800080;">0.00</span><span style="color:#000000;"> sec)
</span><span style="color:#008080;">14</span>  
<span style="color:#008080;">15</span> <span style="color:#000000;">#MySql导出csv数据,带表头
</span><span style="color:#008080;">16</span>  
<span style="color:#008080;">17</span>  
<span style="color:#008080;">18</span> <span style="color:#000000;">#导出电影的类型
</span><span style="color:#008080;">19</span> SELECT * INTO OUTFILE <span style="color:#800000;">&#39;</span><span style="color:#800000;">C:/ProgramData/MySQL/MySQL Server 5.7/Uploads/genre.csv</span><span style="color:
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP