最新实例
Zhihu Question Data Crawler Dataset(100,000Cleaned Entries)
手动爬取的知乎问题数据,共十万条,已做过简单清洗。数据集格式描述如下: r id | 标题 | 回答数 | 关注数 | 浏览数 | 标签r r 【仅供学习使用,请勿商用】
Fixing PrivilegedActionException in Hadoop-core-1.2.1on Windows
遇到的问题: ERROR security.UserGroupInformation: PriviledgedActionException as:chuck cause:java.io.IOException: Failed to set permissions of path. 分析问题:属于windows下的eclipse中访问的权限问题,需要重新打包hadoop-core-1.2.1.jar包,主要是注释checkReturnValue方法。 环境: eclipse 4.4.2, window系统, hadoop 1.2.1。 结论:已解决我的问题,可以正常访问hadoop集群。
protobuf-2.5.0Google的高效数据序列化协议
protobuf-2.5.0 是Google开源的 Protocol Buffers 的一个重要版本,主要用于数据的高效序列化。该版本在多个项目中广泛使用,尤其是对向后兼容性要求较高的项目。该压缩包通常包含: 1. 源代码:.proto文件用于定义数据结构。 2. 编译工具:如protoc,将.proto文件转换为多种编程语言的源码。 3. 库文件:包含预编译库,便于直接使用。 4. 示例:基本的.proto文件和示例代码。 5. 文档:README、API参考和教程材料。 6. 构建脚本:用于编译和测试的Makefile或build.gradle。 在 Hadoop 中,protobuf的主要用途包括: - 数据交换:在MapReduce作业中高效传输数据。 - 持久化存储:在HBase或HDFS中序列化数据,提高存储效率。 - 接口定义:在分布式系统中,protobuf提供了有效的接口定义方式。
Hadoop安装步骤详解
Hadoop安装详细步骤 Hadoop是一个开源的大数据处理框架,由Apache基金会开发和维护。它提供了一个分布式的文件系统和一个MapReduce计算框架,用于处理大规模数据。 1. 固定IP设置 在安装Hadoop之前,需要设置固定IP,以便节点之间可以通信。修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0,添加以下内容: ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=192.168.128.130 NETMASK=255.0 GATEWAY=192.168.128.2 DNS1=192.168.128.2 然后,重启网络服务,输入命令service network restart。克隆节点后,需要修改网络配置文件/etc/sysconfig/network-scripts/ifcfg-eth0,将DEVICE和HWADDR的值修改为克隆节点的值,同时,修改IPADDR的值。 2. 主机名设置 修改/etc/sysconfig/network文件,设置主机名。例如,master节点的主机名可以设置为master,slave节点的主机名可以设置为slave1、slave2等。 3. IP映射 在/etc/hosts文件中添加以下内容,以便节点之间可以通信: 192.168.128.130 master 192.168.128.131 slave1 192.168.128.132 slave2 4. 免密SSH设置 使用ssh-keygen命令生成私有密钥和公有密钥。然后,使用ssh-copy-id命令将公有密钥复制到远程机器中。 5. 时间同步服务 安装NTP服务,以便节点之间可以同步时间。在master节点上,使用以下命令: vim /etc/ntp.conf 注释掉以server开头的行,并添加以下内容: restrict 192.168.128.2 mask 255.0 nomodify notrap server 127.1.0 fudge 127.1.0 stratum 10 在slave节点上,同样进行配置。
创建临时表进行二相编码信号分析
5.1 创建临时表进行这一部分的实验时,需要先将我们的 Hadoop、MySQL、Hive 等等服务全都启动。启动成功以后,就可以进入了 \"hive>\" 命令提示符状态,可以输入类似 SQL 语句的 HiveQL 语句。接着我们首先执行下列命令来创建临时表 user_action,将 Hive 数据仓中的数据流向 HDFS 文件系统中: hive> create table dblab.user_action(id STRING, uid STRING, item_id STRING, behavior_type STRING, item_category STRING, visit_date DATE, province STRING) COMMENT 'Welcome to CUG dblab!' ROW FORMAT DELIMITED FIELDS TERMINATED BY 't' STORED AS TEXTFILE; 这个命令执行完以后,Hive 会自动在 HDFS 文件系统中创建对应的数据文件 /user/hive/warehouse/dblab.db/user_action。我们接着可以新建一个终端,执行命令查看一下,确认这个数据文件在 HDFS 中确实被创建了,在新建的终端中执行下面命令: cd /usr/local/Hadoop ./bin/hdfs -ls /user/hive/warehouse/dblab.db/user_action 上述命令执行主要是检查一下这个数据文件是否在我们的 HDFS 文件系统上确实建立了,当然我们也可以使用我们的 Hadoop 集群 Web 管理页面来查看我们的文件系统,这两种方法都可以检查 HDFS 文件系统中的现存文件。注意,此处建立的这个 HDFS 中的数据文件,在我们后面的“使用 HBase Java API 把数据从本地导入到 HBase 中”操作中会使用到。
bookmarks_2017_12_7
bookmarks_2017_12_7.html,记录工作、学习各方面内容,持续更新中。
使用mysql-connector-5.1.39连接sqoop与hive实现数据交互
MySQL是世界上最受欢迎的关系型数据库管理系统之一,而mysql-connector-5.1.39则是MySQL提供的Java数据库连接器,用于在Java应用程序中与MySQL数据库进行交互。这个连接器遵循JDBC(Java Database Connectivity)标准,使得Java开发者能够方便地执行SQL查询,管理数据,以及实现事务处理等功能。 sqoop1.4.7是一款开源工具,专门设计用来在Apache Hadoop和关系型数据库之间传输数据。它允许用户将大规模的数据导入到Hadoop的HDFS(Hadoop Distributed File System)中,或者从Hadoop导出数据到结构化的数据库系统,如MySQL。Sqoop通过使用MapReduce任务来并行化数据传输过程,从而提高了效率。 hive2.1.1是Apache Hive的版本,Hive是一个基于Hadoop的数据仓库工具,它可以将结构化的数据文件映射为一张数据库表,并提供SQL-like的查询语言(HQL)进行数据查询、分析。Hive主要适用于离线批处理场景,适合对大数据进行ETL(提取、转换、加载)和报表生成。将mysql-connector-5.1.39与sqoop1.4.7和hive2.1.1配合使用,主要是为了实现以下功能: 1. 数据导入:使用Sqoop,你可以通过指定MySQL数据库的连接参数(如主机名、端口、用户名、密码和数据库名),将MySQL中的数据高效地导入到Hadoop集群的HDFS中。mysql-connector-5.1.39在这个过程中起到桥梁作用,提供Java API供Sqoop连接MySQL服务器。 2. 数据导出:同样,当你在Hive中完成数据分析后,可以使用Sqoop将结果数据导回MySQL,更新或者创建新的表。这在数据仓库的ELT(提取、加载、转换)流程中非常常见。 3. Hive与MySQL交互:虽然Hive不直接支持MySQL作为元数据存储,但通过配置,可以在Hive Metastore中使用MySQL数据库存储表元数据,如表名、字段名、分区信息等。这有助于在多用户环境中提高性能和并发性。 4. 数据分析:在Hadoop集群上,Hive可以读取由Sqoop导入的MySQL数据进行分析和处理。
Apache Flume安装指南
Apache Flume是一个分布式、可靠且可用的服务,用于有效地收集、聚合和移动大量日志数据。它是Apache Hadoop生态系统的一部分,特别设计用于处理和传输大规模流式数据。Flume通过简单而灵活的架构实现了数据的高效传输,允许数据源、数据通道和数据接收器之间的动态配置。在本安装指南中,我们将深入探讨如何使用提供的flume-1.6.0-bin.tar安装包来安装和配置Apache Flume。 下载与准备:你需要从Apache官方网站下载Flume的最新稳定版本。在本例中,我们已有一个名为flume-1.6.0-bin.tar的压缩包,这意味着你已经完成了这一步。将这个文件解压缩到你想要安装Flume的目录,例如/usr/local:tar -xvf flume-1.6.0-bin.tar -C /usr/local/ 配置环境变量:为了能够全局访问Flume,你需要在系统的环境变量中添加Flume的路径。打开或创建~/.bashrc或~/.bash_profile(取决于你的操作系统),然后添加以下行:export FLUME_HOME=/usr/local/flume-1.6.0export PATH=$PATH:$FLUME_HOME/bin保存并应用更改:source ~/.bashrc 启动Flume:现在你可以启动Flume了。在命令行中输入以下命令以启动Flume的命名节点(Agent):flume-ng agent --conf $FLUME_HOME/conf --conf-file /path/to/your/config/file.conf --name agentName -Dflume.root.logger=INFO,console这里的agentName是你自定义的Agent名称,config/file.conf是你的Flume配置文件的路径。 配置Flume:配置文件是Flume的核心,它定义了数据流的结构。一个基本的配置示例可能如下所示:```agentName.sources = source1agentName.sinks = sink1agentName...
YARN高优先级作业调度优化方案
YARN(Yet Another Resource Negotiator)是Apache Hadoop项目的一个子项目,提高大数据框架中的资源分配和作业调度效率。YARN的核心组件包括资源管理器、节点管理器和应用程序历史服务器,负责资源和作业管理。当前的YARN调度机制通常按提交顺序分配资源,未能有效区分作业的紧急度,这在需要快速响应的场景中显得不足。 为此,提出了一种基于YARN的高优先级作业调度方案,通过修改原有调度策略,引入一个自定义的高优先级队列,使高优先级作业能优先获得资源。这种机制在资源有限的情况下确保高优先级作业的快速执行。 在新方案中,作业的资源分配不再单纯依据提交顺序,而是按照优先级进行,从而显著提升高优先级作业的执行效率,减少低优先级作业的干扰。实验结果显示,高优先级作业的执行效率显著提高,验证了该方案的有效性。
Hadoop-2.6.4编译指南基于CentOS 6.5
【标题解析】标题\"基于CentOS 6.5已经编译好的Hadoop 2.6.4\"指的是在CentOS 6.5操作系统环境下,已经完成了对Hadoop 2.6.4版本的编译工作。用户可以直接在相同或相似环境中使用,无需自行编译。【描述详解】描述中的\"重新编译64位本地库\"表明此Hadoop版本为64位系统定制,确保其充分利用64位硬件资源。编译过程可能包含对源代码的调整与优化,以适应特定的CentOS 6.5和64位架构。【Hadoop 2.6.4知识点】Hadoop是一个开源的分布式计算框架,主要由HDFS(Hadoop Distributed File System)和MapReduce组成。相较于早期版本,Hadoop 2.6.4包含了多项改进和修复:1. YARN:作为新的资源管理器,增强集群的可扩展性和资源利用率。2. HA:支持NameNode和ResourceManager的高可用性,提高服务的可靠性。3. HDFS Federation:通过多NameNode扩展HDFS的命名空间,增强横向扩展能力。4. Block Size调整:用户可以自定义Block Size,以适应不同数据处理需求。5. MapReduce优化:包括任务调度的优化,使数据处理更高效。【CentOS 6.5环境】CentOS 6.5是以稳定性著称的开源操作系统,适合企业级应用,为Hadoop提供可靠的运行环境。【编译过程】在Linux环境下编译Hadoop的步骤包括:下载源代码、安装依赖包、配置编译参数和执行编译命令等。