hadoop最近心得文档整理
apache和 cloudera 版本的区别 apache在2013年4月25日发布了 hadoop 2.0.4aplha版本,依然不能用于生产环境。 cloudera 基于 hadoop 0.20版本发布了CDH4,实现了namenode高可用,新的MR框架MR2(也被称为YARN),同时支持MR与MR2的切换,cloudera还不建议在生产
apache和cloudera版本的区别
apache在2013年4月25日发布了hadoop2.0.4aplha版本,依然不能用于生产环境。
cloudera基于hadoop0.20版本发布了CDH4,实现了namenode高可用,新的MR框架MR2(也被称为YARN),同时支持MR与MR2的切换,cloudera还不建议在生产环境使用MR2。在MR2里面提供了
一个Resource Manager,负责资源管理,每个slave Node运行一个node manager,负责监控节点资源,并上报给Resource Manager。每一个新的Job被命名为一个application,每一个
Application会被分配一个Application Master,运行在slave node上,负责向Resource Manager协调资源,管理application生命周期,这样解除了MR1中JobTracker任务集中性,将任务
的执行由队列运行改为并发运行,更好的利用了集群资源。
现在一些大公司,比如新浪,已经将hadoop集群切换到CDH4的版本,用于生产环境。同时,CDH4提供了引导安装等方式,大大提高了运维的能力。但是CDH4引导安装的方式,会创建多个
用户及目录,如果出现未知问题,如果对CDH结构不够了解,排查起来会出现一定困难。
hive如何进行权限管理
对于hadoop及hive来说,都提供了有限的权限控制功能。但是针对每个公司特定的需求,并不一定能够满足。所以需要对hive的权限控制进行扩展。在当前情况下,有3种方案可以进行
使用。
1) hive0.10可以通过元数据控制权限。授权方式是通过用户,组,角色的方式进行。可以通过类似于mysql中的创建用户,组,角色,并授予权限。
2) 通过控制元数据的方式进行,对于特定的hivedb,使用特定的mysql等数据库存储元数据,这样就可以完全的隔离相关的操作,以提升数据的安全性。
3) 通过对hive源码进行扩展来实现,针对hive的权限建立一个权限管理工程,负责生成用户,并给用户赋予不同db,table,分区,同一个任务可操作MR task数量上限,及控制特定列
的权限。元数据使用同一份,还是会出现一定的风险,现在hadoop集群的管理一般是由统一的部门进行维护,可以在hive中配置元数据的时候,指定2种用户,一种拥有可读写能力,一种
只拥有只读权限,可以防止使用者误操作造成数据丢生等问题,同时针对hadoop集群要配置垃圾回收机制(core-site.xml中的fs.trash.interval),用于减小误删除造成的影响。
hadoop如何进行性能调优
网上有很多hadoop性能优化的文章,都提到了如何优化集群,我们不能照搬网上的配置,因为网络环境,服务器等的多样性,使得我们需要根据自己的情况,进行集群参数的设置。
lzo压缩即可以减少集群数据存储压力,也可以提高mapper端到reduce的数据传输压力,提高job运行效率。
hadoop原生对gzip进行支持,gzip的压缩比远高于lzo,但是在运行的过程中,其只能运行在一个task上的缺点,造成集群能力大幅下降,而lzo原生对于分块的支持,大大提供了MR执行
的效率,同时节省了磁盘空间,可以很好的提高集群性能。gzip压缩也适用于一部分非常冷的数据,对于经常不进行使用的历史数据,可以采用gzip压缩的方式,进行处理,虽然造成在
处理查询历史数据的时候会慢,但是可以减少集群磁盘占用,而且实际上很冷的数据可能一年都用不到一次。
原文地址:hadoop最近心得文档整理, 感谢原作者分享。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









同時実行テストとデバッグ Java 同時プログラミングにおける同時実行テストとデバッグは非常に重要であり、次の手法が利用可能です。 同時実行テスト: 単体テスト: 単一の同時タスクを分離してテストします。統合テスト: 複数の同時タスク間の相互作用をテストします。負荷テスト: 高負荷時のアプリケーションのパフォーマンスとスケーラビリティを評価します。同時実行デバッグ: ブレークポイント: スレッドの実行を一時停止し、変数を検査するかコードを実行します。ロギング: スレッドのイベントとステータスを記録します。スタック トレース: 例外のソースを特定します。視覚化ツール: スレッドのアクティビティとリソースの使用状況を監視します。

1. 58 Portraits プラットフォーム構築の背景 まず、58 Portraits プラットフォーム構築の背景についてお話ししたいと思います。 1. 従来のプロファイリング プラットフォームの従来の考え方ではもはや十分ではありません。ユーザー プロファイリング プラットフォームを構築するには、複数のビジネス分野からのデータを統合して、ユーザーの行動や関心を理解するためのデータ マイニングも必要です。最後に、ユーザー プロファイル データを効率的に保存、クエリ、共有し、プロファイル サービスを提供するためのデータ プラットフォーム機能も必要です。自社構築のビジネス プロファイリング プラットフォームとミドルオフィス プロファイリング プラットフォームの主な違いは、自社構築のプロファイリング プラットフォームは単一のビジネス ラインにサービスを提供し、オンデマンドでカスタマイズできることです。ミッドオフィス プラットフォームは複数のビジネス ラインにサービスを提供し、複雑な機能を備えていることです。モデリングを提供し、より一般的な機能を提供します。 2.58 中間プラットフォームのポートレート構築の背景のユーザーのポートレート 58

Eclipse にサーバーを追加するには、次の手順に従います。 サーバー ランタイム環境の作成 サーバーの構成 サーバー インスタンスの作成 サーバー ランタイム環境の選択 サーバー インスタンスの構成 サーバー デプロイメント プロジェクトの開始

PHP Web サイトを正常に展開して維持するには、次の手順を実行する必要があります。 Web サーバー (Apache や Nginx など) を選択する PHP をインストールする データベースを作成して PHP に接続する コードをサーバーにアップロードする ドメイン名と DNS を設定する Web サイトのメンテナンスを監視する手順には、PHP および Web サーバーの更新、Web サイトのバックアップ、エラー ログの監視、コンテンツの更新が含まれます。

KubernetesOperator は、次の手順に従って PHP クラウド デプロイメントを簡素化します。 PHPOperator をインストールして、Kubernetes クラスターと対話します。 PHP アプリケーションをデプロイし、イメージとポートを宣言します。ログの取得、記述、表示などのコマンドを使用してアプリケーションを管理します。

PHP セキュリティのベスト プラクティスを実装する方法 PHP は、動的でインタラクティブな Web サイトの作成に使用される最も人気のあるバックエンド Web プログラミング言語の 1 つです。ただし、PHP コードはさまざまなセキュリティ脆弱性に対して脆弱になる可能性があります。 Web アプリケーションをこれらの脅威から保護するには、セキュリティのベスト プラクティスを実装することが重要です。入力検証 入力検証は、ユーザー入力を検証し、SQL インジェクションなどの悪意のある入力を防止するための重要な最初のステップです。 PHP は、filter_var() や preg_match() などのさまざまな入力検証関数を提供します。例: $username=filter_var($_POST['username'],FILTER_SANIT

クラウド コンピューティングでは、大量のデータを管理および処理するために、データ構造とアルゴリズムの使用が不可欠です。一般的なデータ構造には、配列、リスト、ハッシュ テーブル、ツリー、グラフなどがあります。一般的に使用されるアルゴリズムには、並べ替えアルゴリズム、検索アルゴリズム、グラフ アルゴリズムなどがあります。 Java の機能を活用することで、開発者は Java コレクション、スレッドセーフなデータ構造、および Apache Commons Collection を使用して、これらのデータ構造とアルゴリズムを実装できます。

Java ネットワーク プログラミングで一般的に使用されるプロトコルとライブラリ: プロトコル: TCP、UDP、HTTP、HTTPS、FTP ライブラリ: java.net、java.nio、ApacheHttpClient、Netty、OkHttp
