我的偏见 : 对于互联网公司来说提炼挖掘生产中用户产生的大量日志是个有价值的工作,在这些看似垃圾东西中蕴含着大量的商业机会和用户的需求,如果可以简单的实现当然皆大欢喜,但是面对庞大的输出日志需要去提炼的时候只好束手无则无视他的存在,就拿我们最
我的偏见:
对于互联网公司来说提炼挖掘生产中用户产生的大量日志是个有价值的工作,在这些看似垃圾东西中蕴含着大量的商业机会和用户的需求,如果可以简单的实现当然皆大欢喜,但是面对庞大的输出日志需要去提炼的时候只好束手无则无视他的存在,就拿我们最熟悉的Log4J来说,如果是上TB的海量文本类型输出的格式根本无法查询,更谈不上数据挖掘。
当然我们也知道存放在数据库里面当然是不错的选择,对抗海量的日志数据存储与查询坚持做下去的话最后换来的是高昂的代价,Hive借助MapReduce的计算+HDFS的海量存储的功能,对与海量的日志存储、查询,数据挖掘Hive也是个不错的选择,在功能上和总体成本上高于刚刚所说的前两者。
但是对与存储在其他类型的NOSQL产品,Hive投入正式生产的环境我们还需要进一步的分析与比较,例如:MongoDB vs Hive,这个2个产品对于海量日志数据挖掘的性能与系统的扩展性来说谁将会比谁更胜一筹喃?因为 MongoDB 中也是支持海量级分布式存储,并且MongoDB也支持了MapReduce算法,这样我就需要为此得出一个结论,或者说我需要一个折中的方案,但不是现在。
Hive 中不支持对数据的改写和添加,所有的数据都是在加载的时候中确定好的。Hive中你添加了数据就无法删除的,SQL的fans们是不是很费解?我是这样认为的就拿Google的Google Analytics分析工具为例子,在Google Analytics分析工具 会有对日志进行删除的操作吗?答案是“NO!”,也许在Hive设计的时候Facebook的工程师就认为对需要进行挖掘的数据删除是一项没有必要的工作,Hive在Facebook能成功,并且运行在上千台的节点上 或许就是Facebook工程师们明确了Hive不去做的事情,让Hive只做好那一部分事情。
以上是我对 Hive Why(为什么使用Hive)片面的观点。
集群中的Hive
Hive的失效转发可以设计成这样的,将元数据和存储的数据分别保存在同一个位置,如图所示:
多个Hive的物理节点连接到相同的数据库和HDFS环境,防止Hive Thrift Server单点失效(SPFO)问题。
将Hive的MetaData 存储在 MySQL中,MySQL的运行环境支持双向同步或者集群,这样至少2台数据库服务器上热备份着Hive的元数据存储,例如:
多个物理Hive节点的数据内容保存在HDFS上,通过修改 hive-default.xml 配置 文件,指向NameNode节点即可,例如:
/user/hive/warehouse –>
Hive 与 Log4J
在Hive中建一张表叫user_log,里面含有4个字段,以\t划分,一行一条数据,建表的脚本如下:
CREATE TABLE USER_LOG(DateInfo STRING,LogName STRING,LogLevel STRING,MSG STRING)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' STORED AS TEXTFILE;
在Log4J的日子输出格式中每个栏目以Tab相隔开,中间不是空格而是Tab,例如:
log4j.appender.A1.layout.ConversionPattern=%d %-6p %l %m %n
输入数据文件格式如下:
在Hive的控制台下将Log4J输出的日志文件导入Hive中,操作结果如下,如图所示:
在建表语句中还可以加入正则表达式,的自定义功能都在contrib里面, 例如:将WEB日志先用正则表达式进行组合,再按需要的条件进行组合输入到表中
add jar ../build/contrib/hive_contrib.jar;
CREATE TABLE apachelog (
host STRING,
identity STRING,
user STRING,
time STRING,
request STRING,
status STRING,
size STRING,
referer STRING,
agent STRING)
ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
"input.regex" = "([^ ]*) ([^ ]*) ([^ ]*) (-|\\[[^\\]]*\\]) ([^ \"]*|\"[^\"]*\") (-|[0-9]*) (-|[0-9]*)(?: ([^ \"]*|\"[^\"]*\") ([^ \"]*|\"[^\"]*\"))?",
"output.format.string" = "%1$s %2$s %3$s %4$s %5$s %6$s %7$s %8$s %9$s"
)STORED AS TEXTFILE;
对于Hive的学习方向:
1、hive 的 hive-default.xml 配置文件中的参数细节,主要针对Hive的性能优化。
2、Hive 是如何使用MapReduce来完成工作的整套机制。
我的口水,目前使用Hadoop产品的国内外公司有如下一些:
Facebook
处理内部产生的日志和数据挖掘、展示以及机器学习
IBM
用Hadoop MapReduce 分析billions of lines of GPS data 并产生交通路线资讯.
Krugle
用Hadoop and Nutch 建构原始码搜寻引擎
SEDNS – Security Enhanced DNS Group
收集全世界的DNS 以探索网路分散式内容.
Technical analysis and Stock Research
分析股票资讯
University of Nebraska Lincoln, Research Computing Facility
用Hadoop跑约200TB的Compact Muon Solenoid经验分析紧凑渺子线圈,该机构是为瑞士欧洲核子研究组织CERN的大型强子对撞器计划的两大通用型粒子侦测器中的一个。
Yahoo!
使用Hadoop平台来发现发送垃圾邮件的僵尸网络
趋势科技
过滤像是钓鱼网站或恶意连结的网页内容
还有以前提到过的:A9.com、ImageShack、Last.fm、Powerset、纽约时报
在国内使用Hadoop的公司有:
淘宝、中国移动研究院、英特尔研究院、金山软件、百度、腾讯、新浪、搜狐。
相关文章:
Apache Hive入门1
–end–
原文地址:Apache Hive入门2, 感谢原作者分享。

本文给大家介绍如何安装apache2.4,以及如何配置php8.0,文中附有图文详细步骤,下面就带大家一起看看怎么安装配置apache2.4+php8.0吧~

查看apache版本的步骤:1、进入cmd命令窗口;2、使用cd命令切换到Apache的bin目录下,语法“cd bin目录路径”;3、执行“httpd -v”命令来查询版本信息,在输出结果中即可查看apache版本号。

mod_limitipconn,这个是apache的一个非官方模块,根据同一个来源ip进行并发连接控制,bw_mod,它可以根据来源ip进行带宽限制,它们都是apache的第三方模块。1.下载:wgetwget2.安装#tar-zxvfmod_limitipconn-0.22.tar.gz#cdmod_limitipconn-0.22#vimakefile修改:apxs=“/usr/local/apache2/bin/apxs”#这里是自己apache的apxs路径,加载模块或者#/usr/lo

1.Nginx和tomcat的区别nginx常用做静态内容服务和代理服务器,直接外来请求转发给后面的应用服务器(tomcat,Django等),tomcat更多用来做一个应用容器,让javawebapp泡在里面的东西。严格意义上来讲,Apache和nginx应该叫做HTTPServer,而tomcat是一个ApplicationServer是一个Servlet/JSO应用的容器。客户端通过HTTPServer访问服务器上存储的资源(HTML文件,图片文件等),HTTPServer是中只是把服务器

本篇文章给大家带来了关于PHP的相关知识,其中主要跟大家分享在Ubuntu20.04 LTS环境下安装Apache的全过程,并且针对其中可能出现的一些坑也会提供解决方案,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。

在使用 PHP 进行网站开发时,你可能会遇到字符编码问题。特别是在使用不同的 Web 服务器时,会发现 IIS 和 Apache 处理字符编码的方法不同。当你使用 IIS 时,可能会发现在使用 UTF-8 编码时出现了乱码现象;而在使用 Apache 时,一切正常,没有出现任何问题。这种情况应该怎么解决呢?

Pacemaker是适用于类Linux操作系统的高可用性集群软件。Pacemaker被称为“集群资源管理器”,它通过在集群节点之间进行资源故障转移来提供集群资源的最大可用性。Pacemaker使用Corosync进行集群组件之间的心跳和内部通信,Corosync还负责集群中的投票选举(Quorum)。先决条件在我们开始之前,请确保你拥有以下内容:两台RHEL9/8服务器RedHat订阅或本地配置的仓库通过SSH访问两台服务器root或sudo权限互联网连接实验室详情:服务器1:node1.exa

快速查看服务器软件的编译参数:1、nginx编译参数:your_nginx_dir/sbin/nginx-v2、apache编译参数:catyour_apache_dir/build/config.nice3、php编译参数:your_php_dir/bin/php-i|grepconfigure4、mysql编译参数:catyour_mysql_dir/bin/mysqlbug|grepconfigure以下是完整的实操例子:查看获取nginx的编译参数:[root@www~]#/usr/lo


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 English version
Recommended: Win version, supports code prompts!

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft