1) component
a. serde
serialize, deserialize
允许用户自定义序列化和反序列化的数据格式
b. metastore
保存在warehouse中的table和partition
c. query processor
通过类sql语句运行map/reduce
其他: command line
hive server 提供api接口供client调用用来和hive交互,比如jdbc这种client
2)SerDe
Hive将其中的数据(Row Object)写到HDFS中,或者从HDFS中读出到其Row Object中,需要经历的阶段:
HDFS files --> InputFileFormat --> <key, value> --> Deserializer --> Row object
Row object --> Serializer --> <key, value> --> OutputFileFormat --> HDFS files
Hive使用一些类来进行数据的读写(和HDFS的读写交互), 比如 TextInputFormat/HiveIgnoreKeyTextOutputFormat,进行SerDe也有相关的类;