人工智能的数据

Hadoopからレ▪▪▪▪クハウスへの移行:成功のための5▪▪▪のステップ

严厉的Narulaによる投稿

2021年8月6日 デタ+ aiブログ

分享这篇文章

Hadoop(ハドゥ,プ)からレ▪▪クハウスア▪▪キテクチャのようなモダンなクラウドベースのアーキテクチャへの移行は,技術的な判断ではなく,ビジネス的な判断です。以前のブログ,是时候重新评估你与Hadoop的关系了では,組織がHadoopとの関係を再評価する必要がある理由を解説しました。技術やデータ,ビジネスのステークホルダーが,エンタープライズのHadoopを移行する決断をした後,移行を実行する前に考慮すべき課題があります。本ブログでは,実際の移行プロセスそのものに焦点を当て,移行を成功させるための重要なステップや,新たなデータドリブンなイノベーションの成功にレイクレイクハウスアーキテクチャが果たす役割を説明します。

移行のステップ

率直に言って,移行は決して容易ではありません。しかし,移行を構造化することで,リスクを最小限に抑え,ビジネスの継続性を確保し,コストを効果的に管理できます。そのためには,Hadoopからの移行を以下の5のステップに分けて実行ことことをお勧めします。

  • 管理
  • デ,タの移行
  • デ,タ処理
  • セキュリティとガバナンス
  • SQLおよびbiレヤ

ステップ1:管理

Hadoopに不可欠な概念を管理の視点から確認し,砖との比較対照を行ってみましょう。

Hadoopは,基本的にモノリシックな分散型ストレージおよびコンピューティングプラットフォームです。複数のノ,ドとサ,バ,で構成され,それぞれが独自のストレ,ジ,cpu,およびメモリを備えています。

Hadoopは,基本的にモノリシックな分散型ストレージおよびコンピューティングプラットフォームです。複数のノ,ドとサ,バ,で構成され,それぞれが独自のストレ,ジ,cpu,およびメモリを備えています。作業はこれら全てのノ,ドに分散されます。リソース管理は纱によって行われ,ワークロードがそれぞれコンピューティングの割り当てを得られるようにベストエフォートを行います。

また,Hadoopはメタデ,タ情報で構成されています。Hiveメタストアがあり,HDFSに保存されているアセットに関する構造化情報が含まれています。デ,タへのアクセス制御には哨兵や游侠を活用できます。データアクセスの観点から,ユーザーやアプリケーションは,HDFS(または対応するCLI / API),またはSQLタイプのインターフェースを介してデータに直接アクセスできます。一方,SQLインターフェースはJDBC / ODBC接続経由で,一般的なSQL(場合によってはETLスクリプト)に蜂巢を使用するか,インタラクティブなクエリに蜂巢上の黑斑羚または特斯を使用できます。Hadoopは,HBase APIや関連するデ,タソ,スサ,ビスも提供しています。Hadoopのエコシステムの詳細は,こらを参照してください。

次に,Databricksのレ. cerクハウスプラットフォ. cerムで,これらのサビスがどのようにマッピングされ,扱われているかにいて説明します。まず注目すべき最初の違いは,砖環境では,複数のクラスタを見ていることが挙げられます。各クラスタは,特定のユースケース,特定のプロジェクト,ビジネスユニット,チーム,開発グループなどに使用できます。さらに重要なのは,これらのクラスタは一時的なものとして設計されている点です。ジョブクラスタの場合,クラスタの寿命はワークフロー期間中,継続されます。ワークフローが実行され,完了すると自動的に環境が停止されます。例えば,開発者がコンピューティング環境を共有するインタラクティブなユースケースでは,この環境を始業時に起動し,開発者は一日中コードを実行できます。使用されていない期間は,プラットフォームに組み込まれている(設定可能な)自動終了機能により,砖は自動的に環境を停止します。

Hadoopとは異なり,砖はHbaseやSOLRのようなデータストレージサービスを提供しません。デタは,ファルストレジや,オブジェクトストレジに存在します。HbaseやSOLRのようなサービスの多くは,代替または同等の技術をクラウドで提供しています。例えば,クラウドネティブ,あるいはisvソリュションなどがあります。

砖の各クラスタノードは互いに完全に分離されており,火花ドライバまたはワーカーに対応しているため,特定のプロジェクトやユースケースに対して厳格なSLAを満たすことができます。

上図のように,砖の各クラスタノードは,火花ドライバまたはワーカーのいずれかに対応しています。ここで重要なのは,それぞれの数据库クラスタが互いに完全に分離されていることです。これにより,特定のプロジェクトやユ,スケ,スにおいて,厳しいslaを満たすことができます。ストリミングやリアルタムのユスケスを,他のバッチ指向のワクロドから完全に分離できます。また,クラスタのリソースを長時間占有する可能性のある長時間稼働のジョブを手動で分離することを心配する必要もありません。異なるユ,スケ,スに対するコンピュ,ティングとして,新しいクラスタを起動するだけでよいのです。砖では、ストレージとコンピューティングを切り離し、AWS S3、Azure Blob Storage、Azure Data Lake Store(ADLS)など既存のクラウドストレージの活用も可能です。

また,砖には,デフォルトで管理されている蜂巢メタストアがあり,クラウドストレージに存在するデータ資産に関する構造化情報を格納しています。AWS胶水,Azure SQL Server, Azure范围などの外部メタストアの使用もサポートしています。オブジェクトストレージの権限に加え,砖内のテーブルACLなどセキュリティ制御の指定もできます。

データアクセスに関しては,ユーザーがデータをどのように扱うかという点で,砖はHadoopと同様の機能を提供します。クラウドストレージに保存されたデータは,砖環境では複数のパスを経由してアクセスできます。ユーザーは、SQL端点や砖SQLを使って,インタラクティブなクエリや分析を行うことができます。また,クラウドストレージに保存されたデータに対して,データエンジニアリングや機械学習のケイパビリティのための砖の笔记本を使用することもできます。Hadoopの Hbase は、Azure CosmosDB、または AWS DynamoDB/Keyspaces にマッピングされ、ダウンストリームアプリケーションのサービングレイヤーとして活用できます。

ステップ2:デ,タの移行

Hadoopの使用経験者であれば,HDFSをご存知と思います。HDFSは、Hadoop 導入時に使用されるストレージファイルシステムで、Hadoop クラスタのノード上のディスクを利用します。そのため、HDFS をスケールアップする際、クラスタ全体の容量を追加する必要があります(つまり、コンピューティングとストレージを一緒にスケールアップする必要があります)。その際に、追加のハードウェアを調達して設置するのは、多くの時間と労力を要します。

クラウドではAWS S3, Azure湖存储やBlob存储数据,谷歌存储などのクラウドストレージという形で,ほぼ無限のストレージ容量を持つことができます。メンテナンスやヘルスチェックの必要がなく,導入した瞬間から内蔵の冗長性,高レベルの耐久性と可用性を実現します。デ,タの移行にはネイティブクラウドサービスの利用を推奨しており、容易な移行を可能にするいくつかのパートナー/ISVが存在します。

では,どうやってスタ,トするか?お勧めの方法としては,デュアルインジェスト戦略(オンプレミス環境に加えて,クラウドストレージにデータをアップロードするフィードを追加する)で始めることです。これにより,既存のセットアップに影響を与えることなく,新たなデータを活用した新規のユースケースをクラウドで開始できます。組織内の他のグループからの賛同を得たい場合,手始めのバックアップ戦略として位置づけることができます。HDFSは従来,その規模と労力からバックアップが課題でした。そのため,クラウドにデ,タをバックアップすることは,いずれにせよ生産性の高い取り組みとなります。

ほとんどの場合,既存のデータ配信ツールを活用してフィードを分岐し,Hadoopだけでなくクラウドストレージにも書き込むことができます。例えば,InformaticaやTalendなどのツール/フレームワークを使用してデータを処理し,Hadoopに書き込んでいる場合,追加のステップを加えれば,容易にクラウドストレージに書き込み可能です。クラウドにデ,タを移行できれば,そのデ,タを扱う方法は多数あります。

データの方向性としては,オンプレミスからクラウドにプルするか,オンプレミスからクラウドにプッシュするかのどちらかです。データをクラウドにプッシュするために活用できるツールとして,社内フレームワークに加え,クラウドネイティブソリューション(Azure数据框,AWS雪家庭など),DistCP (Hadoopツール),その他のサードパーティ製ツールがあります。セキュリティチ,ムから必要な承認を得るという点では,プッシュ型の方が容易です。

クラウドにデータをプルするには,引发/卡夫卡流,またはクラウドからトリガーされるバッチ取り込みパイプラインを使用できます。バッチの場合は,ファイルを直接取り込むか,JDBCコネクタを使って関連のアップストリーム技術のプラットフォームに接続し,データを引き出すことができます。サドパティ製のルも利用可能です。プッシュ型のオプションは,広く受け入れられ,理解されているので,ここではプル型のアプローチについて少し掘り下げてみましょう。

まず必要なのは,オンプレミス環境とクラウドとの接続の設定です。。AWSDirect Connect や Azure ExpressRoute などの専用の接続オプションを活用することもできます。クラウドに慣れている組織であれば、既に設定されていて、Hadoop の移行プロジェクトに再利用できる可能性もあります。

Hadoop環境でのセキュリティも検討すべき事項です。Kerberos(ケルベロス)対応の環境であれば,Databricks側からの対応が可能です。クラスタ起動時に実行される砖の初期化スクリプトの設定,必要なKerberosクライアントのインストールと設定,クラウドストレージの場所に保存されているkrb5 . confとkeytabファイルへのアクセスを行い,最終的にkinit()関数を実行することで,砖クラスタがHadoop環境と直接やり取りできるようになります。

最後に,外部の共有メタストアも必要になります。砖にはデフォルトでメタストアサービスが導入されていますが、外部メタストアの使用もサポートしています。外部メタストアは、Hadoop と Databricks で共有され、オンプレミス(Hadoop 環境内)、またはクラウドのいずれかに導入できます。例えば、Hadoop で実行されている既存の ETL プロセスがあり、それらをまだ Databricks に移行できない場合、既存のオンプレミスのメタストアでこのセットアップを活用して、Hadoop から最終キュレート済みのデータセットを Databricks で処理させることができます。

ステップ3:デタ処理

データ処理について留意すべき点は,砖にある全ての機能がApache火花を活用していることです。MapReduce,猪,蜂巢QL, JavaなどあらゆるHadoopプログラミング言語は,Pyspark, Scala,火花SQL,さらにはRを経由して火花上で動作するように変換できます。コードとIDEに関しては,Apache飞艇とJupyter笔记本のいずれも砖笔记本に変換できますが,Jupyter笔记本をインポートする方が若干容易です。飞艇笔记本はインポートする前にJupyterまたはIpythonに変換する必要があります。デタサエンスチームが Zeppelin や Jupyter でコードを書き続ける場合は、Databricks Connect を利用できます。これにより、ローカルの IDE(Jupyter、Zeppelin、あるいは IntelliJ、VScode、RStudio など)を活用して Databricks 上でコードを実行できます。

Apache火花™のジョブを移行する際,最も考慮すべき点は火花のバージョンです。オンプレミスのHadoopクラスタでは古いバージョンの火花が稼働している可能性がありますが,Spark移行ガescドを使用すれば,変更履歴を調べ,コ,ドへの影響を確認できます。もう1考慮すべき点は,rdd。RDDはSpark 2。xまではよく使われており,Spark 3.单击“确定”。xでも使うことはできますが,その場合,火花オプティマイザの機能を十分に活用できなくなる可能性があります。可能な限りRDDをデ,タフレ,ムに変換することをお勧めします。

また,移行の際によくある問題の1つとして,リファレンスがローカルのHadoop環境にハードコードされている点があります。もろん,これらの更新が必要です。更新しないと,新たな設定ではコ,ドが壊れてしまいます。

次に,Spark以外のワクロドの変換にいてです。ほとんどの場合,コ,ドの書き換えが必要です。MapReduceでは,Javaライブラリの形で共有ロジックを使用していれば,そのコードを火花で活用できる場合があります。ただし,MapReduceではなく火花環境で実行するには,コードの一部の書き換えが必要な場合があります。新しい環境ではJDBCソースを使って,(MapReduceコマンドではなく)火花コマンドのセットを実行することになるので,Sqoopは比較的容易に移行できます。Sparkのコ,ドでは,Sqoopと同じ方法でパラメ,タを指定できます。水槽では、卡夫卡からデータを処理したり,HDFSに書き込んだりするユースケースが多いようです。これは,Sparkストリ,ミングを使って容易に実現できるタスクです。水槽を移行する際の主な作業は,構成ファイルベースのアプローチを火花のもっとプログラム的なアプローチに変換することです。最後にNifiですが,これは主にHadoop以外で使用され,ドラッグ&ドロップでセルフサービスのインジェストツールとして使用されています。Nifiはクラウドでも活用できますが,多くのお客様がクラウドへの移行を機に,クラウドで利用できる他の新たなツールにNifiを置き換えています。

HiveQLの移行は,おそらく最も容易な作業です。蜂巢と火花SQLの間には高い互換性があり,ほとんどのクエリはそのまま火花SQLで実行できるはずです。HiveQLと火花SQL DDLにのは,いくつかマイナーな違いがあり,一例は,HiveQLの“格式”句に対して火花SQLでは”使用“句を使用することです。コ,ドをSpark SQL形式に変更することをお勧めします。これにより,オプティマイザが砖内のコードに対して最適な実行プランを準備できます。蜂巢SerDeやUDFを活用できるので,HiveQLを砖に移行する際には,さらに容易になります。

关于工作流编制,您必须考虑作业提交方式的潜在变化。您可以继续利用Spark提交语义,但也有其他更快、更无缝集成的选项可用。您可以利用Databricks作业和Delta Live Tables进行无代码ETL以取代Oozie作业,并在Databricks中定义端到端数据管道。对于涉及外部处理依赖关系的工作流,您必须在Apache气流、Azure数据工厂等技术中创建等效的工作流/管道,以实现自动化/调度。使用Databricks的REST api,几乎任何调度平台都可以集成和配置为与Databricksbob体育客户端下载一起工作。

また,Hadoopから砖へのワークロードの移行を支援するKnowledgeLens社が作成したMLensという自動化ツールもあります。MLensはPySparkコ,ドとHiveQLの移行をサポ,トします。蜂巢の仕様の一部を火花SQLに変換し,火花SQLオプティマイザの機能とパフォーマンスの利点をフルに活用することも可能です。また,Oozieのワークフローを气流やAzure数据工厂などへの移行することも,近々サポートが予定されています。

ステップ4:セキュリティとガバナンス

次に,セキュリティとガバナンスにいて説明します。Hadoopの世界では、Ambari や Cloudera Manager、あるいは Impala や Solr などの管理コンソールに接続するための LDAP 統合があります。また、Hadoop には、他のサービスとの認証に使用される Kerberos があります。認証の観点からは、Ranger と Sentry がよく使われるツールです。

砖では,SAML 2.0をサポートする全てのIDプロバイダとシングルサインオン(SSO)の統合が可能です。これには,Azure Active Directory,谷歌Workspace SSO, AWS SSO,およびMicrosoft Active Directoryが含まれます。認証については,砖は砖オブジェクトのACL(访问控制列表)を提供しており,笔记本,ジョブ,クラスタなどのエンティティに権限を設定できます。データの権限やアクセス制御については,テーブルACLやビューを定義して列や行のアクセスを制限したり,認証のパススルーなどを活用して,ワークスペースのログイン認証情報をストレージレイヤー(ADLS S3, Blobストレージ)に渡して,データへのアクセスが許可されているかどうかを判断できます。属性ベースの制御やデータマスキングなどの機能が必要な場合は,ImmutaやPrivaceraなどのパートナーツールを利用できます。また,エンタープライズガバナンスの観点からは,AWS胶水,Informatica数据目录,Alation, Collibraなどの企業データカタログに砖を接続可能です。

ステップ5:sqlおよびbiレ

Hadoopでは,前述のとおり,ETLやアドホックなクエリや分析を行うためのインターフェースとして蜂巢や黑斑羚があります。数据库では,砖的SQLで同様のケ@ @パビリティが利用できます。また,砖SQLはδエンジンによる優れたパフォーマンスに加え,自動スケーリングクラスタによる高度な並列処理を必要とするユースケースをサポートしています。三角洲エンジンには光子も含まれており,これはc++でゼロから作られた新しいMPPエンジンであり,データレベルと命令レベルの両方の並列性を利用するためにベクトル化されています。

表,砖はPowerBI Qlik,美人などのBIツールとのネイティブな統合に加え,それらのツールで活用できる高度に最適化されたJDBC / ODBCコネクタを提供します。新たなJDBC / ODBCドライバは,オーバーヘッドが非常に小さく(1/4秒),Apache箭头を使用した場合には転送速度が50%向上し,また,いくつかのメタデータ操作では,大幅に高速なメタデータ検索操作をサポートしています。砖では,PowerBIのSSOをサポートしており,他のBI /ダッシュボードツールとのSSOのサポートも近日中に開始予定です。

砖は,前述した笔记本エクスペリエンスに加え,SQL用户体验を提供します。SQLユーザーにSQLワークベンチへの独自の視点を提供し,簡単なダッシュボードやアラート機能も備えています。これにより,データレイク内のデータをデータウェアハウスなどのプラットフォームにダウンストリームで移動させることなく,SQLベースのデータ変換や探索的な分析が可能になります。

次のステップ

以下は,レイクハウスアーキテクチャのような最新のクラウドアーキテクチャへの移行プロセスを考えるうえで,覚えておくべき点です。

  1. 主要なビジネスステ,クホルダ,との連携を忘れないでください。この移行は,技術的な決定であると同時に経営面での決定でもあり,ビジネスのステークホルダーがこのプロセスとその最終状態に賛同する必要があります。
  2. 数据库やパ,トナ,企業が支援します。再現可能なベストプラクティスを構築した経験豊富なエキスパートが,組織の時間,費用,リソースを節約し,全体的なストレスの軽減を支援します。
  3. Hadoopから砖への移行を開始するためのステップバイステップのガイドや笔记本,コードが記載された技術移行ガイドは“Hadoop砖技术迁移指南”,こらから入手できます。

Hadoopからの移行により,砖がどのようにしてビジネス価値を向上させるのかを,www.neidfyre.com/migrationでご覧いただき,移行計画を開始してください。

数据库無料トラ电子词典アル

関連記事

人工智能的数据

Hadoopからレ▪▪▪▪クハウスへの移行:成功のための5▪▪▪のステップ

2021年8月6日 严厉的Narulaによる投稿 デタ+ aiブログ
Hadoop(ハドゥープ)からレイクハウスアーキテクチャのようなモダンなクラウドベースのアーキテクチャへの移行は,技術的な判断ではなく,ビジネス的な判断です。以前のブログ,是时候重新评估你与Hadoop的关系了では,組織がHadoopとの関係を再評価する必要がある理由を解説しました。技術やデータ,ビジネスのステークホルダーが,エンタープライズのHadoopを移行する決断をした後,移行を実行する前に考慮すべき課題があります。本ブログでは,実際の移行プロセスそのものに焦点を当て,移行を成功させるための重要なステップや,新たなデータドリブンなイノベーションの成功にレイクレイクハウスアーキテクチャが果たす役割を説明します。移行のステップ率直に言って,移行は決して容易ではありません。しかし,移行を構造化することで,リスクを最小限に抑え,ビジネスの継続性を確保し,コストを効果的に管理できます。5 .そのためには,Hadoopからの移行を以下の
看到所有デタ+ aiブログ的帖子