Hive安装前扫盲之Derby和Metastore

本文介绍了Hive中Derby数据库的特性,包括其内嵌和网络模式,以及在大数据环境中的局限性。同时,探讨了Hive的元数据存储,元数据的重要性以及如何通过Metastore服务进行管理。HiveServer2作为远程客户端执行查询的接口,提供了多并发和身份验证功能。文章强调了在生产环境中使用独立的Metastore数据库(如MySQL)以提高并发性能。
摘要由CSDN通过智能技术生成

大数据总是有很多英文单词,你不了解一下根本就没法推进。

比如Hive要涉及到的:derby metastore hiveServer2

后面内容都是转载的,大致内容简单来说就是:

 

Derby是一个数据库,非常轻量,而Hive只会把元数据存放在关系型数据库中。这是因为这样可以易于共享这些元数据。

Hive 将元数据存储在 RDBMS 中,一般常用 MySQL 和 Derby。默认情况下,Hive 元数据保存在内嵌的 Derby 数据库中,只能允许一个会话连接,只适合简单的测试。实际生产环境中不适用, 为了支持多用户会话,则需要一个独立的元数据库,使用 MySQL 作为元数据库,Hive 内部对 MySQL 提供了很好的支持。

内置的derby主要问题是并发性能很差,可以理解为单线程操作。

Derby还有一个特性。更换目录执行操作,会找不到相关表等
比如在/usr下执行创建表,在/usr下可以找到这个表。在/etc下执行查找这个表,就会找不到 。

内嵌的意思就是把Derby嵌入到一个程序里,开启和关闭都由该程序来管理,并不是Derby自己来管理。

 

metastore呢,metastore服务实际上就是一种thrift服务,通过它我们可以获取到hive元数据,并且通过thrift获取元数据的方式,屏蔽了数据库访问需要驱动,url,用户名,密码等等细节。

thrift服务的意思就是,一些牛逼人把RPC(函数远程调用,这里面涉及到两台服务器之间网络传输的过程,比较复杂)过程封装好,然后这些细节对我们这些菜鸟来说完全透明,只留出接口写道.thrift文件里,然后通过特殊的编译器来生成不同语言的代码,以满足不同需要的开发者,比如java开发者,就可以生成java代码,c++开发者可以生成c++代码,生成的代码中不但包含目标语言的接口定义,方法,数据类型,还包含有RPC协议层和传输层的实现代码.挺起来真酷。。。。

 

hiveserver2,你可能又想了这tmd又是个什么东西。其实他就是提供给客户端执行查询结果的接口。

HiveServer2(HS2)是一个服务端接口使远程客户端可以执行对Hive的查询并返回结果。目前基于Thrift RPC的实现是HiveServer的改进版本,并支持多客户端并发和身份验证

 

————————————————————————————

 

 

 

derby数据库

一、简介

  Derby 易于管理。当嵌入到客户机应用程序中时, Derby 系统不需要任何管理干预。

  Derby 是可嵌入的。应用程序可以将数据库管理系统( Database Management System , DBMS )引擎嵌入应用程序进程中,从而无需管理单独的数据库进程或服务。通过网络服务器( Network Server )架构或您选择的服务器架构,可以将 Derby 作为单独的进程来运行。

  Derby 是Java 编写的内存数据库,属于 Apache 的一个开源项目,是一个纯 Java 的类库:对于 Java 开发人员,这点十分重要,因为他们正试图维护 Java 技术的优点,例如平台无关性、易于配置以及易于安装。

  Derby 不需要专有的 Java 虚拟机( Java Virtual Machine , JVM )。因为完全是用 Java 语言编写的,所以它适应所有合格的 JVM 。

  DerbyDBMS 引擎是轻量级的。类文件大小大约是 2MB ,并且只使用了 4MB 的 Java 堆。

  Derby 支持使用 Java 编写存储过程和函数,这些存储过程和函数可以在应用程序的任何层上运行。 Derby 没有专用的存储过程语言,它使用JDBC 。

二、两种运行模式

  1.内嵌模式。Derby数据库与应用程序共享同一个JVM,通常由应用程序负责启动和停止,对除启动它的应用程序外的其它应用程序不可见,即其它应用程序不可访问它;

  2.网络模式。Derby数据库独占一个JVM&#

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值