今日はクラウド コンピューティング、ビッグ データ、人工知能についてお話します。これら 3 つの単語は現在非常に人気があり、互いに関連しているようです。
一般的に、クラウド コンピューティングについて話すときはビッグ データについて言及し、人工知能について話すときはビッグ データについて言及し、人工知能について話すときはクラウド コンピューティングについて言及します...この 3 つは互いに補完し合い、切り離せないものであるように感じます。 しかし、技術者でない人にとっては、この3つの関係性を理解するのは難しいかもしれないので、説明する必要があります。 クラウドコンピューティングの本来の目的 まずはクラウドコンピューティングから始めましょう。クラウド コンピューティングの本来の目的は、主にコンピューティング リソース、ネットワーク リソース、ストレージ リソースなどのリソースを管理することです。 データセンターの管理はコンピュータの設定に似ている コンピューティング、ネットワーク、ストレージ リソースとは何ですか? たとえば、ノートパソコンを購入する場合、どのような CPU が搭載されているかを気にする必要がありますか?メモリはどれくらいですか?これら 2 つはコンピューティング リソースと呼ばれます。 このコンピュータがインターネットにアクセスするには、ネットワーク ケーブルを接続するインターネット ポート、または自宅のルーターに接続できるワイヤレス ネットワーク カードが必要です。 100M 帯域幅などのネットワークを開設するには、家庭でも China Unicom、China Mobile、China Telecom などの通信事業者と契約する必要があります。その後、技術者がインターネット ケーブルを持ってお客様のご自宅に伺い、ルーターと会社のインターネット接続間の接続の設定をお手伝いします。 このようにして、自宅内のすべてのコンピューター、携帯電話、タブレットがルーターを介してインターネットにアクセスできるようになります。これはネットワーク リソースです。 ハードドライブの容量はどれくらいですか? という質問もあるかもしれません。かつてのハードディスクは 10G 程度の非常に小さなサイズでしたが、その後、500G、1T、2T のハードディスクも目新しいものではなくなりました。 (1Tは1000G)これがストレージリソースです。 これはコンピューターにも当てはまりますが、データセンターにも当てはまります。非常に大きなコンピュータ ルームがあり、その中に多数のサーバーが積み上げられていると想像してください。これらのサーバーにも CPU、メモリ、ハード ディスクが搭載されており、ルーターに似たデバイスを介してインターネットにアクセスします。 現時点での疑問は、データセンターを運営する人々がこれらのデバイスをどのようにして統一的に管理するかということです。 柔軟性とは、必要なときに必要なだけ利用できることを意味します 経営の目標は、2つの側面で柔軟性を実現することです。具体的にはどの2つの側面ですか? 理解するために例を挙げてみましょう。たとえば、CPU が 1 つ、メモリが 1G、ハードディスクが 10G、帯域幅が 1M の非常に小型のコンピューターが必要な人がいます。その人にそれを提供することができますか? このような小さな仕様のコンピュータの場合、現在のどのラップトップもこれよりも強力な構成になっており、自宅のブロードバンドは少なくとも 100M になります。しかし、クラウド コンピューティング プラットフォームにアクセスすれば、このリソースが必要なときにクリックするだけで入手できます。 この場合、次の 2 つの側面で柔軟性を実現できます。
空間的な柔軟性と時間的な柔軟性は、クラウド コンピューティングの弾力性とよく呼ばれるものです。この弾力性の問題を解決するには長い開発期間が必要でした。 物理デバイスは柔軟性に欠ける 最初の段階は物理的な装備期間です。この期間中、顧客がコンピュータを必要とする場合、私たちはそれを購入し、データセンターに設置していました。 もちろん、物理的な装備はどんどん良くなってきています。
ただし、物理デバイスでは大きな柔軟性は提供できません。 1 つ目は、時間の柔軟性が欠けていることです。欲しいものをいつでも手に入れることはできません。たとえば、サーバーやコンピューターを購入する場合、購入には時間が必要です。 ユーザーが突然、パソコンを立ち上げて物理サーバーを使いたいとクラウドベンダーに伝えても、その時点では購入するのは難しいでしょう。仕入先との関係が良好であれば、購入までに 1 週間かかることもありますが、仕入先との関係が平均的な場合は、購入までに 1 か月かかることもあります。 ユーザーはコンピュータが到着するまで長い間待機し、その後ログインして自分のアプリケーションの展開をゆっくりと開始する必要がありました。時間の柔軟性が非常に低い。 第二に、空間的な柔軟性も良くありません。たとえば、上記のユーザーは非常に小型のコンピューターを必要としていますが、現在そのような小型のコンピューターはどこで入手できるでしょうか? 1G のメモリと 80G のハードドライブというユーザーのニーズを満たすためだけに、このような小さなマシンを購入することはできません。 しかし、大きなものを購入すると、コンピューターが大きいためユーザーに追加料金を請求する必要がありますが、ユーザーが必要とするのは小さなコンピューターだけなので、追加料金を支払うのは不公平です。 仮想化ははるかに柔軟です 誰かが解決策を見つけました。最初の方法は仮想化です。ユーザーに必要なのは、非常に小さなコンピューターだけではないでしょうか? データセンターの物理設備は非常に強力です。物理 CPU、メモリ、ハードディスクの一部を仮想化して顧客に提供したり、一部を仮想化して他の顧客に提供したりすることができます。 各顧客は自分の小さな部分しか見ることができませんが、実際には各顧客は大きなデバイス全体の小さな部分を使用しています。 仮想化テクノロジーにより、異なるクライアントのコンピューターが分離されているように見えます。つまり、私にとってこのディスクは私のものであり、あなたにとってこのディスクはあなたのもののように見えますが、実際の状況は、私の 10G とあなたの 10G が同じ非常に大きなストレージ上にある可能性があります。 さらに、物理デバイスが事前に準備されている場合、仮想化ソフトウェアは基本的に数分で非常に迅速にコンピューターを仮想化できます。したがって、任意のクラウド上にコンピューターを作成する場合、ほんの数分しかかかりません。それが理由です。 このようにして、空間的な柔軟性と時間的な柔軟性が基本的に解決されます。 仮想世界でお金を稼ぎ、感じる 仮想化の段階では、最も強力な企業は VMware です。仮想化技術をいち早く導入した企業のひとつで、コンピューティング、ネットワーク、ストレージの仮想化を実現できます。 この会社は非常に強力で、優れたパフォーマンスを発揮し、仮想化ソフトウェアの売れ行きも好調で、多額の利益を上げていました。その後、この会社は EMC (Fortune 500 企業であり、ストレージ製造のトップ企業) に買収されました。 しかし、この世界には、特にプログラマーなど、情熱的な人々がまだたくさんいます。感傷的な人は何をするのが好きですか?オープンソース。 この世の多くのソフトウェアはクローズドソースかオープンソースのいずれかであり、ソースとはソースコードのことを指します。つまり、あるソフトウェアはよくできていて、誰もがそれを愛用しているのですが、そのソフトウェアのコードは私によってクローズされており、それを知っているのは私の会社だけで、他の誰も知りません。 他の人がこのソフトウェアを使いたい場合、私に料金を支払う必要があり、これをクローズドソースと呼びます。しかし、世の中には、すべてのお金がひとつの企業によって稼がれる状況に耐えられない大物たちが常に存在します。専門家は、あなたがこの技術を知っているなら、私も知ることができるし、あなたが開発できるなら、私も開発できると考えています。 私が開発したソフトウェアには料金はかかりません。コードをみんなと共有します。世界中の誰もがそれを使用でき、誰もがその恩恵を受けることができます。これをオープンソースと呼びます。 たとえば、ティム・バーナーズ=リーは非常に感傷的な人です。 2017年、彼は「ワールドワイドウェブ、最初のブラウザ、そしてワールドワイドウェブの拡張を可能にした基本的なプロトコルとアルゴリズムを発明した」として2016年のチューリング賞を受賞した。 チューリング賞はコンピューター界のノーベル賞です。しかし、彼の最も素晴らしい点は、私たちがよく知っている WWW 技術である World Wide Web を、無料で使用できるように世界中に貢献したことです。 私たちが今インターネットで行っていることすべてに対して、彼に感謝すべきです。もし彼がこの技術でお金を稼ぐことができたら、彼はビル・ゲイツと同じくらい裕福になるでしょう。 オープンソースとクローズドソースの例はたくさんあります。たとえば、クローズドソースの世界には Windows があり、Windows を使用するすべての人が Microsoft に料金を支払わなければなりません。一方、オープンソースの世界には Linux があります。 ビル・ゲイツは、Windows や Office などのクローズドソース ソフトウェアで大金を稼ぎ、世界一の富豪と呼ばれました。その後、何人かの有名人が別のオペレーティング システム、Linux を開発しました。 Linux について聞いたことがない人も多いかもしれません。バックエンド サーバーで実行されているプログラムの多くは Linux 上で実行されています。たとえば、Taobao、JD.com、Koala など、誰もがダブル イレブンを楽しんでいるとき、ダブル イレブンの買い物をサポートするシステムはすべて Linux 上で実行されています。 たとえば、Apple があれば、Android もあります。 Appleの市場価値は高いが、Appleシステムのコードを見ることはできないため、一部の専門家がAndroid携帯電話のオペレーティングシステムを作成しました。 つまり、他のほぼすべての携帯電話メーカーが Android システムをインストールしていることがわかります。その理由は、Apple システムはオープンソースではないのに対し、Android システムは誰でも使用できるからです。 仮想化ソフトウェアについても同様です。VMware の場合、このソフトウェアは非常に高価です。その後、何人かの専門家が 2 つのオープンソース仮想化ソフトウェアを作成しました。1 つは Xen と呼ばれ、もう 1 つは KVM と呼ばれます。技術者でない場合は、この 2 つの名前を無視できますが、後で説明します。 半自動仮想化と完全自動クラウドコンピューティング 仮想化ソフトウェアが柔軟性の問題を解決すると言うのは完全に真実ではありません。仮想化ソフトウェアは通常、仮想コンピュータを作成するため、仮想コンピュータを配置する物理マシンを手動で指定する必要があります。 このプロセスでは、より複雑な手動構成が必要になる場合もあります。したがって、VMware の仮想化ソフトウェアを使用するには、非常に印象的な認定を取得する必要があり、この認定を取得できる人は非常に高い給与を得ており、それがいかに複雑であるかを示しています。 そのため、仮想化ソフトウェアだけで管理できる物理マシンのクラスター サイズはそれほど大きくなく、通常は 10 台から多くても 100 台程度です。 これは時間の柔軟性に影響します。コンピューターを仮想化する時間は非常に短いですが、クラスターのサイズが大きくなるにつれて、手動の構成プロセスはますます複雑になり、時間がかかります。 一方、スペースの柔軟性にも影響します。ユーザー数が多い場合、クラスターのサイズはユーザーのニーズを満たすのに十分ではありません。リソースがすぐに使い果たされ、再度購入する必要が生じる可能性があります。 したがって、クラスターの規模がどんどん大きくなると、基本的には数千単位から始まり、数万単位、さらには数千万単位に簡単に達します。 NetEase、Google、AmazonなどBATを調べてみると、サーバーの数が恐ろしいほど多いです。 人間がこの仮想化されたコンピュータを配置する場所を選択し、多数のマシン間で対応する構成を行うことはほぼ不可能です。これを実行するには、依然としてマシンが必要です。 これを実現するためにさまざまなアルゴリズムが発明されており、そのアルゴリズムの名前は Scheduler と呼ばれています。 簡単に言えば、スケジューリング センターがあり、数千台のマシンがプールに入っています。ユーザーが必要とする CPU、メモリ、ハード ディスクを備えた仮想コンピューターがいくつあっても、スケジューリング センターは自動的に大きなプールからユーザーのニーズを満たす場所を見つけ、仮想コンピューターを起動して構成し、ユーザーが直接使用できるようにします。 この段階をプーリングまたはクラウド化と呼びます。この段階でのみクラウド コンピューティングと呼ぶことができ、それ以前は仮想化と呼ぶしかありません。 プライベートおよびパブリッククラウドコンピューティング クラウドコンピューティングには、大きく分けてプライベートクラウドとパブリッククラウドの2種類があります。プライベートクラウドとパブリッククラウドを結び付けてハイブリッドクラウドと呼ぶ人もいますが、ここでは取り上げません。 プライベート クラウド: 仮想化およびクラウド ソフトウェアを他のデータ センターに展開します。プライベート クラウドのユーザーは、多くの場合、非常に裕福です。彼らは土地を購入し、コンピューター ルームを建設し、独自のサーバーを購入し、クラウド ベンダーに自分の場所にサーバーを展開させます。 VMware は仮想化に加えて、後にクラウド コンピューティング製品を立ち上げ、プライベート クラウド市場で大きな利益を上げました。 パブリッククラウド: 仮想化とクラウドソフトウェアは、クラウドベンダーの独自のデータセンターに展開されます。ユーザーは大きな投資をする必要はありません。アカウントを登録するだけで、Web ページをクリックするだけで仮想コンピューターを作成できます。 たとえば、AWS は Amazon のパブリッククラウドであり、国内のものには Alibaba Cloud、Tencent Cloud、NetEase Cloud などがあります。 Amazon はなぜパブリッククラウドを構築したいのでしょうか?アマゾンはかつて海外では比較的大きな電子商取引会社だったことは周知の事実です。電子商取引を行っていた当時は、ダブルイレブンに似た状況に必ず遭遇していました。ある瞬間に、誰もが急いで物を買いに走るのです。 誰もが急いで物を購入しているとき、クラウドの時間と空間の柔軟性が特に必要になります。必ずしもすべてのリソースを準備できるわけではないので、それは無駄になります。しかし、Double Eleven で商品を購入したいのにログインできないユーザーが多数いるのを見て、ただ座って何もできないというわけにはいきません。 したがって、Double Eleven が必要な場合は、電子商取引アプリケーションをサポートするために大量の仮想コンピューターが作成され、Double Eleven 後にこれらのリソースが解放されて他の処理が実行されます。したがって、Amazon にはクラウド プラットフォームが必要です。 しかし、市販の仮想化ソフトウェアは高価すぎるため、Amazon は電子商取引で得た収益のすべてを仮想化ベンダーに渡すことはできません。 その後、Amazon は、前述の Xen や KVM などのオープンソース仮想化テクノロジーをベースにした独自のクラウド ソフトウェアを開発しました。予想外に、Amazon の電子商取引事業はますます成功し、そのクラウド プラットフォームもますます成功しました。 同社のクラウド プラットフォームは自社の電子商取引アプリケーションをサポートする必要があり、従来のクラウド コンピューティング ベンダーは主に IT ベンダーであり、自社のアプリケーションをほとんど持っていないため、Amazon のクラウド プラットフォームはアプリケーション フレンドリーであり、急速にクラウド コンピューティングのナンバーワン ブランドに成長し、多額の収益を上げています。 Amazon がクラウド コンピューティング プラットフォームの財務レポートを発表する前、人々は「Amazon は電子商取引で利益を上げているが、クラウドも利益を上げているのだろうか?」と疑問に思っていました。その後、財務報告書が発表され、その会社が多額の利益を上げていたことが判明した。昨年だけでも、Amazon AWS の年間収益は 122 億ドル、営業利益は 31 億ドルでした。 クラウドコンピューティングのお金と感情 パブリッククラウド企業第1位のAmazonは好調だが、第2位のRackspaceは平均的な業績だ。回避する方法はありません。これは、主に勝者総取りのモデルであるインターネット業界の残酷さです。したがって、2 番目がクラウド コンピューティング業界でない場合、多くの人は聞いたことがないかもしれません。 2番目に考えたのは、ボスに勝てなかったらどうすればいいのか?オープンソース化しましょう。前述のように、Amazon はオープンソースの仮想化技術を使用していますが、クラウド コードはクローズド ソースです。 クラウド プラットフォームを構築したいが構築できない多くの企業は、Amazon が大金を稼ぐのを見ているしかありません。 Rackspace がソースコードを公開すれば、業界全体が協力してこのプラットフォームをさらに改善することができます。兄弟の皆さん、みんなで参加して大ボスと競い合いましょう。 そこで、Rackspace と NASA は協力してオープンソース ソフトウェア OpenStack を作成しました。上図は OpenStack のアーキテクチャ図です。クラウド コンピューティング業界に携わっていない人は、この図を理解する必要はありません。 しかし、コンピューティング、ネットワーキング、ストレージという 3 つのキーワードが表示されます。また、コンピューティング、ネットワーク、ストレージのためのクラウド管理プラットフォームでもあります。 もちろん、2位のテクノロジーも非常に優れています。OpenStackの登場後、Rackspaceが考えていたように、クラウドコンピューティングをやりたい大企業はすべて熱狂しました。想像できるすべての有名な大手IT企業、IBM、HP、Dell、Huawei、Lenovoなどはすべて熱狂しました。 誰もがクラウド プラットフォームを構築したいと考えているようですが、Amazon や VMware がどれだけの収益を上げているかを見ると、彼らにできることは何もありません。自力で構築するのはかなり難しいようです。 現在、オープンソースのクラウドプラットフォームである OpenStack により、あらゆる IT ベンダーがコミュニティに参加し、クラウドプラットフォームに貢献し、それを自社製品としてパッケージ化し、自社のハードウェア機器と一緒に販売しています。 プライベート クラウドを構築した企業もあれば、パブリック クラウドを構築した企業もあり、OpenStack はオープン ソース クラウド プラットフォームの事実上の標準となっています。 IaaS、リソースレベルでの柔軟性 OpenStack 技術が成熟するにつれて、管理できる規模も大きくなり、複数の OpenStack クラスターを複数セットで展開できるようになります。 例えば、北京に1セット、杭州に2セット、広州に1セットを配備し、一元的に管理します。これにより、全体の規模がさらに大きくなります。 この規模であれば、一般ユーザーの観点からすると、基本的に、欲しいものを、欲しいときに、欲しいだけ手に入れることができることになります。 クラウド ディスクを例に挙げてみましょう。各ユーザーのクラウド ディスクには 5T 以上の容量が割り当てられます。1 億人いるとしたら、合計でどのくらいの容量になるでしょうか。 実際、その背後にあるメカニズムは次のとおりです。スペースが割り当てられると、そのごく一部しか使用できません。たとえば、5T が割り当てられている場合、そのような大きなスペースは表示されているだけで、実際にあなたに与えられているわけではありません。 実際は 50G しか使用していないため、実際に与えられる容量は 50G です。ファイルをアップロードし続けると、割り当てられる容量は増加します。 全員がアップロードし、クラウド プラットフォームがほぼ満杯 (たとえば、70% が使用されている) であることがわかった場合、クラウド プラットフォームはサーバーを追加購入し、その背後にあるリソースを拡張します。これは透過的で、ユーザーには見えません。 ある意味、クラウド コンピューティングの弾力性が実現されました。実際、それは銀行に少し似ています。預金者はいつでもお金を引き出せると感じており、同時取り付けがない限り銀行は破綻しません。 要約する この段階では、クラウド コンピューティングは基本的に時間の柔軟性と空間の柔軟性を実現し、コンピューティング、ネットワーク、およびストレージ リソースの弾力性を実現しています。 コンピューティング、ネットワーク、ストレージはインフラストラクチャと呼ばれることが多いため、この段階での弾力性はリソース レベルの弾力性と呼ばれます。 リソースを管理するクラウド プラットフォームはインフラストラクチャ サービスと呼ばれ、よく IaaS (Infranstracture As A Service) として耳にします。 クラウドコンピューティングはリソースだけでなくアプリケーションも対象としている IaaS では、リソース レベルで弾力性を実現するだけで十分でしょうか?当然そうではありません。アプリケーション レベルでも柔軟性はあります。 例を挙げると、電子商取引アプリケーションを実装するには、通常は 10 台のマシンで十分ですが、ダブル イレブンの期間中は 100 台のマシンが必要になります。これは簡単にできると思うかもしれません。IaaS では、90 台の新しいマシンを作成するだけです。 しかし、90 台のマシンは空の状態で作成され、電子商取引アプリケーションはインストールされていませんでした。会社の運用および保守担当者が 1 台ずつインストールする必要があり、長い時間がかかりました。 リソース レベルでは弾力性が実現されますが、アプリケーション レイヤーで弾力性が実現されなければ、柔軟性は依然として不十分です。この問題を解決する方法はありますか? リソース上のアプリケーションの弾力性の問題を管理するために、IaaS プラットフォームの上に別のレイヤーが追加されています。このレイヤーは通常、PaaS (Platform As A Service) と呼ばれます。 このレイヤーは理解するのが難しい場合が多く、大まかに 2 つの部分に分かれています。1 つの部分を「独自のアプリケーションの自動インストール」と呼び、もう 1 つの部分を「一般的なアプリケーションはインストールする必要がない」と呼びます。
たとえば、電子商取引アプリケーションをインストールする場合、他のユーザーが電子商取引 Web サイトで商品を購入したときに支払いが自分のアカウントに入金され、自分以外の誰にも知られないように、Alipay または WeChat アカウントを構成する必要があります。 したがって、プラットフォームはインストール プロセスを支援することはできませんが、自動化を支援することはできます。構成情報を自動化されたインストール プロセスに統合するには、いくつかの作業を行う必要があります。 たとえば、上記の例では、Double Eleven に新しく作成された 90 台のマシンは空です。これらの 90 台の新しいマシンに電子商取引アプリケーションを自動的にインストールするツールを提供できれば、アプリケーション レベルでの真の弾力性を実現できます。 たとえば、Puppet、Chef、Ansible、Cloud Foundary はすべてこれを実行できますが、最新のコンテナ テクノロジである Docker ではさらに優れた実行が可能です。
このようなアプリケーションは、標準の PaaS レイヤー アプリケーションに変換され、クラウド プラットフォーム インターフェイスに配置できます。ユーザーがデータベースを必要とすると、すぐにデータベースが表示され、ユーザーは直接使用できます。 誰もが同じ方法でインストールするので、自分でインストールすればよく、クラウド プラットフォームで購入するためにお金を使う必要はない、と誰かが尋ねました。もちろん違います。データベースは非常に難しいものです。Oracle だけでも、データベースから多額の収益を上げることができます。 Oracle を購入するのにも多額の費用がかかります。 ただし、ほとんどのクラウド プラットフォームでは MySQL などのオープン ソース データベースが提供されており、オープン ソースであるため、それほど多くの費用をかける必要はありません。 ただし、このデータベースを維持するには大規模なチームが必要です。データベースを Double Eleven に対応できるように最適化するには、1、2 年以上かかります。 たとえば、自転車メーカーの場合、これを行うために非常に大規模なデータベース チームを採用する必要はまったくありません。コストが高すぎます。これはクラウド プラットフォームに任せるべきでしょう。 専門的なことは専門家が行うべきです。クラウド プラットフォームでは、このシステムを維持するために何百人もの人を雇っています。あなたは自転車のアプリケーションに集中するだけでいいのです。 自動的にデプロイされるか、デプロイの必要がないかのどちらかです。一般的に言えば、アプリケーション層についてはあまり心配する必要はありません。これが PaaS 層の重要な役割です。 スクリプト方式では独自のアプリケーションのデプロイメントの問題を解決できますが、環境によって大きく異なります。スクリプトは、ある環境では正しく実行されても、別の環境では正しく実行されない場合があります。 コンテナはこの問題をより適切に解決できます。 Container は Container であり、Container の別の意味はコンテナです。実際、Container の考え方は、ソフトウェア配信用のコンテナにすることです。容器の特徴は、第一に包装、第二に規格です。 コンテナがなかった時代には、A地点からB地点まで貨物を輸送する場合、3つの埠頭を通過し、船を3回乗り換える必要がありました。 船から商品を降ろすたびに、商品は乱雑に置かれ、その後再び船に積み込まれ、再び整頓されました。そのため、コンテナがない場合、乗組員は船を乗り換えるたびに数日間陸上に留まらなければなりませんでした。 コンテナなら、すべての品物が一緒に梱包され、コンテナのサイズもすべて同じなので、船を乗り換えるたびに、1つの箱全体を移動するだけで済み、数時間で完了します。乗組員が陸に上がって長時間滞在する必要がなくなりました。 容器の持つ2大特性「包装」と「規格」を生活に応用した製品です。 では、コンテナはどのようにしてアプリケーションをパッケージ化するのでしょうか?まだコンテナを学習する必要があります。まず第一に、荷物が互いに干渉せず、互いに隔離され、積み下ろしが便利になるように、荷物を梱包するための密閉された環境が必要です。幸いなことに、Ubuntu の LXC テクノロジーは長い間これを実現してきました。 閉鎖環境で使用される主なテクノロジは 2 つあります。
いわゆるミラーリングとは、溶接した瞬間のコンテナの状態を保存することを意味します。孫悟空が「フリーズ」と言ったように、コンテナはその瞬間にフリーズし、その瞬間の状態が一連のファイルとして保存されます。 これらのファイルのフォーマットは標準的であり、誰でもそれを見て、その時点で凍結された瞬間を復元することができます。イメージを実行時に復元するプロセス(つまり、イメージファイルを読み込んでその時点の状態に復元するプロセス)がコンテナを実行するプロセスとなります。 コンテナを使用すると、PaaS レイヤーでのユーザー独自のアプリケーションの自動展開が高速かつエレガントになります。 ビッグデータはクラウドコンピューティングを採用 PaaS レイヤーの複雑な汎用アプリケーションは、ビッグデータ プラットフォームです。ビッグデータはどのようにして段階的にクラウド コンピューティングに統合されるのでしょうか? 小さなデータにも知恵が詰まっている 当初、このビッグデータは大きなものではありませんでした。元々どれくらいの量のデータがあるのか?今では誰もが電子書籍を読んだり、ニュースをネットで調べたりしています。私たちが子供だった1980年代には、情報量はそれほど多くありませんでした。私たちはただ本や新聞を読んでいただけでした。1週間分の新聞には、何語くらい載っていたでしょうか? 大都市でなければ、普通の学校図書館には全部で数個の本棚しかありません。情報化が進み、より多くの情報が出てくるようになったのは、その後になってからです。 まず、ビッグデータのデータを見てみましょう。ビッグデータは3つの種類に分けられます。
実際、データ自体は有用ではなく、特定の方法で処理する必要があります。例えば、毎日ランニングするときに身につけているブレスレットが収集するデータもデータであり、インターネット上の多くのウェブページもデータであり、私たちはこれをデータと呼んでいます。 データ自体は役に立たないが、情報と呼ばれる非常に重要なものが含まれています。 データは非常に乱雑であり、整理され、クリーンアップされた後にのみ情報と呼ぶことができます。情報には多くのルールが含まれており、その情報からルールをまとめる必要があり、これを知識と呼び、知識が運命を変えます。 情報はたくさんありますが、人によっては見るだけ時間の無駄です。しかし、情報の中にeコマースの未来を見る人もいれば、ライブストリーミングの未来を見る人もいるので、すごいことになります。 情報から知識を引き出さなければ、友人のサークルを毎日チェックしても、インターネットの巨大な波の中で傍観者になるだけです。 知識を持ち、それを実際の戦闘に応用すると、非常にうまくやれる人もいます。これを知性と呼びます。 知識を持っていることは、必ずしも知恵を持っていることを意味するわけではありません。たとえば、多くの学者は非常に知識が豊富で、起こったことをさまざまな角度から分析することができますが、実際の仕事になると無力であり、知識を知恵に変換することができません。 多くの起業家が偉大な企業家になる理由は、獲得した知識を実際に応用し、最終的に大きなビジネスを築き上げるからです。 したがって、データの応用は、データ、情報、知識、知恵の 4 つのステップに分かれています。 最終段階は多くの企業が望んでいるものです。ご存知のとおり、私は非常に多くのデータを収集しました。このデータを活用して、次の決定を下し、製品を改善できますか? たとえば、ユーザーが動画を視聴しているときに、ユーザーが購入したい商品の広告がユーザーの隣にポップアップ表示される場合があります。また、ユーザーが音楽を聴いているときに、ユーザーが本当に聴きたい別の音楽が推奨される場合があります。 私にとって、アプリやウェブサイト上でユーザーがクリックしたり、テキストを入力したりすることは、すべてデータです。そこから特定のものを抽出し、実践を導き、知恵を形にして、ユーザーが私のアプリに夢中になるようになればいいのです。一度私のウェブサイトにアクセスすると、離れられなくなり、クリックして購入し続けるようになるのです。 多くの人が、ダブルイレブンの間はインターネットから離れたいと言います。なぜなら、私の妻はオンラインで買い物をし続けるからです。商品 A を購入した後、彼女は商品 B を勧めます。私の妻は、「ああ、私も商品 B が好きよ。ハニー、それ買いたいわ。」と言います。 このプログラムはどうしてこんなに素晴らしくて賢いのでしょうか? 私よりも妻のことをよく知っています。どうやってこんなことができるのでしょうか? データを知恵に変える方法 データ処理は次のステップに分かれており、完了して初めて知恵が生まれます。
データ収集 まず、データが必要です。データを収集する方法は 2 つあります。
例えば、検索すると、結果がリストになります。なぜこのリストが検索エンジン会社にあるのでしょうか?すべてのデータが削除されているためですが、リンクをクリックしても、そのウェブサイトはもはやその会社の検索エンジンに表示されなくなります。 たとえば、Sina にニュースがあり、それを Baidu で検索すると、クリックしない限りそのページは Baidu のデータセンターにありますが、クリックすると表示されるページは Sina のデータセンターにあります。
データ転送 データ量が非常に多いため、データが使用可能になる前に処理する必要があるため、これは通常キューで実行されます。しかし、システムですべてを処理することはできなかったため、キューに入れてゆっくりと処理する必要がありました。 データストレージ 今やデータはお金であり、データをマスターすることはお金をマスターすることと同じです。そうでなければ、ウェブサイトはあなたが何を購入したいのかをどうやって知るのでしょうか? そこにはあなたの過去の取引データが含まれているからです。この情報は他人に渡すことはできず、非常に貴重なので、保存する必要があります。 データ処理と分析 上記に保存されているデータは生データです。生データはほとんどが整理されておらず、ジャンクデータが多く含まれています。そのため、高品質のデータを取得するには、生データをクリーンアップしてフィルタリングする必要があります。 高品質なデータの場合、分析を実行してデータを分類したり、データ間の関係性を発見して知識を得たりすることができます。 たとえば、ウォルマートスーパーマーケットのビールとおむつに関する人気の記事は、人々の購買データの分析に基づいており、男性は一般的におむつを購入するときにビールも同時に購入することが判明しました。 このように、ビールとおむつの関係を発見し、知識を得て、それを実践に応用します。ビールカウンターとおむつカウンターを近くに置くことで、知恵が得られます。 データ検索とマイニング 検索とは検索することです。外部の事柄について疑問があればGoogleに尋ね、国内の事柄について疑問があればBaiduに尋ねます。国内外の検索エンジンは分析したデータを検索エンジンに載せているので、人々が情報を探したいときには、一度の検索で見つけることができます。 もう一つはマイニングです。検索だけではもはや人々のニーズを満たすことはできず、情報間の関係性をマイニングすることも必要です。 たとえば、金融検索で会社の株式を検索する場合、会社の役員も検出されるべきでしょうか? ある会社の株を検索して、株価が急上昇していることがわかったのでそれを買ったのに、その後、その会社の幹部がその株にとって非常に不利な声明を出し、翌日株価が下落したら、これは大多数の投資家に損害を与えるのではないでしょうか。したがって、さまざまなアルゴリズムを通じてデータ内の関係性をマイニングし、知識ベースを形成することが非常に重要です。 ビッグデータの時代では、誰もが火に油を注ぐことになります。 データ量が少ない場合、少数のマシンしかそれを処理できません。徐々にデータ量が増え、最も強力なサーバーでも問題を解決できなくなったら、どうすればよいでしょうか? 現時点では、複数のマシンの力を集め、全員が協力してこの作業を完了する必要があります。全員が燃料を追加すれば、火はさらに強く燃え上がります。 データ収集について:IoTに関しては、屋外に数万台の検出装置が配備されており、大量の温度、湿度、監視、電力などのデータを収集しています。インターネットのウェブページの検索エンジンに関しては、インターネット全体のすべてのウェブページをダウンロードする必要があります。 これは当然、1 台のマシンだけで実行できるものではありません。Web クローラー システムを形成するには、複数のマシンが必要です。各マシンは部分をダウンロードし、同時に動作して、限られた時間内に大量の Web ページをダウンロードします。 データ転送について:メモリ内のキューは大量のデータで確実に圧倒されるため、ハードディスクに基づく分散キューが作成され、キューが複数のマシンによって同時に転送できるようになります。データ量がどれだけ大きくても、十分なキューがあり、パイプラインが十分に厚い限り、処理できます。 データ保存に関して: 1 台のマシンのファイル システムではすべてのデータを収容できないため、複数のマシンのハード ディスクを 1 つの大きなファイル システムに統合する大規模な分散ファイル システムが必要になります。 データ分析の場合: 大量のデータを分解、カウント、要約する必要がある場合がありますが、1 台のマシンでは処理できず、分析を完了するのに非常に長い時間がかかります。 そこで、大量のデータを小さな部分に分割し、各マシンが小さな部分を処理し、複数のマシンが並列に処理することで、計算を迅速に完了できる分散コンピューティング方式があります。 例えば、有名なTerasortは1TB、つまり1000GBのデータをソートします。これを1台のマシンで処理すると数時間かかりますが、並列処理すると209秒で完了します。 ではビッグデータとは何でしょうか?率直に言えば、1 台のマシンでタスクを完了できない場合は、全員が協力して作業する必要があります。 しかし、データ量が増加するにつれて、多くの中小企業は相当量のデータを処理する必要に迫られています。もし、それほど多くのマシンを持っていない中小企業はどうすればいいのでしょうか? ビッグデータにはクラウドコンピューティングが必要であり、クラウドコンピューティングにはビッグデータが必要である これといえば、誰もがクラウドコンピューティングを思い浮かべます。これらの作業を行うには、一緒に作業を行うためにたくさんの機械が必要です。いつでも、必要なだけ機械を入手できます。 例えば、ビッグデータ企業の財務状況は週に1回分析されるかもしれません。そこに100台や1,000台のマシンを置いておいて、週に1回しか使わないのであれば、それは無駄です。 では、計算が必要なときにこれらの 1,000 台のマシンを取り出し、計算が不要なときにはこれらの 1,000 台のマシンに他の作業をさせるというのは可能でしょうか? 誰がこれをできるでしょうか?クラウド コンピューティングだけが、ビッグ データ コンピューティングにリソース レベルの柔軟性を提供できます。 クラウド コンピューティングでは、非常に重要な一般アプリケーションとして、PaaS プラットフォーム上にビッグ データを展開します。 ビッグデータ プラットフォームでは、複数のマシンが 1 つのものに対して連携して動作できるため、これは一般の人が開発できるものではなく、また一般の人が使用できるものでもありません。これを機能させるには、数十人、場合によっては数百人の人材を雇用する必要があります。 したがって、データベースと同様に、このものを扱うには専門家のグループが必要です。現在、基本的にすべてのパブリック クラウドにはビッグ データ ソリューションが備わっています。 中小企業がビッグデータ プラットフォームを必要とする場合、1,000 台のマシンを購入する必要はありません。パブリック クラウドにアクセスするだけで、ビッグデータ プラットフォームがすでに導入された 1,000 台のマシンが表示されます。必要なのは、データを入力して計算を行うことだけです。 クラウド コンピューティングにはビッグ データが必要であり、ビッグ データにはクラウド コンピューティングが必要であり、この 2 つがこのように組み合わせられています。 人工知能がビッグデータを活用する 機械が人間の心を理解できるようになるのはいつでしょうか? ビッグデータがあっても、人間の欲求を満たすことはできません。ビッグデータプラットフォームには検索エンジンがありますが、検索するだけで欲しいものが見つかります。 しかし、自分が欲しいものをどうやって探せばいいのか分からない、表現できない、探しているものが自分の欲しいものではない、といった状況もあります。 例えば、音楽ソフトで聞いたことのない曲がおすすめされたら、当然曲名もわからず検索もできません。しかし、ソフトウェアが私に推奨されたとき、私はそれが本当に好きでした、そしてそれは検索ができないことです。 この種のアプリケーションを使用すると、マシンが必要なときにマシンで検索する代わりに、マシンが私が望むものを知っていることがわかります。このマシンは、私の友人のように私を本当に理解しています。これは人工知能に少し似ています。 人々はこれについて長い間考えてきました。当初、人々は壁があれば壁の後ろに機械があると想像し、私はそれに話しかけ、それが私に応答しました。 それが人間なのか機械なのかわからない場合、それは本当に人工知能のものです。 機械に推論を学ばせてください これを実現するにはどうすればよいでしょうか?人々は考えてください:最初に私は人間の推論能力についてコンピューターに伝えなければなりません。人々にとって何が重要だと思いますか?人間と動物の違いは何ですか?それは推論できることを意味します。 自分の推論能力についてマシンに伝えて、あなたの質問に基づいてマシンに対応する答えを推測させることができたら、それはどれほど素晴らしいでしょうか? 実際、人々は徐々に数学的な式を証明するなど、何らかの推論を実行できるようにしています。これは、マシンが実際に数式を証明できる非常に驚くべきプロセスです。 しかし、徐々に私はこの結果がそれほど驚くことではないことを発見しました。誰もが問題を発見したためです。数学的式は非常に厳密であり、推論プロセスも非常に厳密であり、数学的な式は機械を使用して表現しやすく、プログラムも比較的簡単に表現できます。 しかし、人間の言語はそれほど単純ではありません。たとえば、今夜、あなたはあなたのガールフレンドと付き合っています、そしてあなたのガールフレンドはあなたが早く来ていないなら、私が早く来て、あなたが待ちます! このマシンは理解するのがより困難ですが、人々はそれを理解しています。だから、あなたがあなたのガールフレンドとデートするとき、あなたはあえて遅れることはありません。 ティーチングマシンの知識 したがって、マシンに厳格な推論を伝えるだけでなく、マシンに知識を伝えるだけでは十分ではありません。しかし、ほとんどの人は機械に知識を伝えることができないかもしれません。たぶん、専門家は、言語や金融の分野の専門家など、それを行うことができます。 言語と金融の分野での知識は、数学的な式のように、より厳格な方法で表現できますか?たとえば、言語の専門家は、主題、述語、属性、副詞、補完などの文法規則を要約することができます。 後で、言語の表現は絶えず変化しているため、要約するのが難しすぎるため、これは正しいアプローチではないことがわかりました。主題、述語、オブジェクトの例を見てください。私は答えました:私はliu chaoです。 しかし、スピーチのセマンティック認識中に標準的な書面による言語を話すことはできません。 人工知能のこの段階は、エキスパートシステムと呼ばれます。専門家のシステムは成功するのが容易ではありません。知識を要約することは困難であり、一方で、要約された知識はコンピューターに教えることが困難です。 あなたはまだ混乱しており、パターンがあるように見えるが、それを言葉に載せることができないと感じているので、どのようにプログラミングを通じてコンピューターに教えることができますか? あなたが私に教えることができないなら、それを忘れてください、ただ自分でそれを学ぶ したがって、人々は考えました:機械は人間とはまったく異なる種であるので、機械を自分で学ばせてみませんか。 機械はどのように学習するのでしょうか?マシンの統計的能力は非常に強力であり、統計学習に基づいているため、大量の数値から特定のパターンを発見できるようになります。 実際、エンターテインメント業界には良い例があります。これは、これを垣間見ることができます。 ネチズンは、中国本土の有名な歌手によってリリースされた9枚のアルバムで117曲の歌詞を数えました。 数字の文字列を書いてから、数字に応じて形容詞、名詞、動詞から単語を撮った場合、それらを一緒に接続した場合はどうなりますか? たとえば、PI 3.1415926を服用してください。対応する単語は、強い、道路、飛行、自由、雨、埋葬、混乱です。 少しのつながりとポリッシュ:
少し気分がいいですか?もちろん、真に統計ベースの学習アルゴリズムは、この単純な統計よりもはるかに複雑です。 ただし、統計学習は簡単な相関を理解するのが簡単です。たとえば、1つの単語と別の単語が常に表示され、2つの単語は関係を表すことはできません。 さらに、統計的手法の式は、計算を簡素化するために非常に複雑です。 脳の仕組みをシミュレートします そこで、人間は、人間の世界が機械の世界からどのように機能するかを振り返り始めました。 人間の脳は、多数のルールを保存したり、多数の統計データを記録したりしませんが、ニューロンのトリガーを通じて達成されます。 各ニューロンには他のニューロンからの入力があり、入力が受信されると、他のニューロンを刺激する出力が生成されます。その結果、多数のニューロンが互いに反応し、最終的にさまざまな出力結果を形成します。 たとえば、人々が美しい女性の生徒が拡張されているのを見ると、脳が身体の割合に基づいてルールを作成したり、人生で見たすべての美しさを数えたりするのではなく、ニューロンが網膜から脳に引き起こされて生徒に戻るということではありません。 このプロセスでは、実際には、各ニューロンが最終結果でどのような役割を果たすかを要約することは困難です。 そこで、人々は数学的ユニットでニューロンをシミュレートし始めました。 このニューロンには、入力と出力は式(重量)によって異なります。 したがって、Nニューロンはニューラルネットワークのように接続されています。 nこの数値は非常に大きく、すべてのニューロンを多くの列に分割でき、各列は多くの配置で配置されます。 各ニューロンは入力に異なる重みを持つことができるため、各ニューロンの式も異なります。人々がこのネットワークから何かを入力すると、彼らは人間にとって正しい結果を出力したいと考えています。 たとえば、2つの書かれた写真を入力すると、出力リストの2番目の数字が最大です。 ニューロンと同様に、彼らは網膜が美しさを見ていることも、生徒がはっきりと拡張していることを知りません。 ニューラルネットワークの場合、入力が2であることを保証することはできません。この結果は、トレーニングと学習が必要であることを保証するためです。 結局のところ、美しい女性と拡張された生徒を見ることは、長年にわたる人間の進化の結果でもあります。学習プロセスは、結果が望ましい結果ではない場合は、多数の写真を入力し、調整を行うことです。 調整する方法は?各ニューロンの重量は、ターゲットに微調整されています。ネットワーク全体が生成する結果は、どちらかを示しているが、結果に向かってわずかに進歩し、最終的にターゲット結果を達成することは困難です。 もちろん、これらの調整戦略は依然として非常に熟練しており、アルゴリズムの専門家からの慎重な調整が必要です。人間が美しい女性を見るように、彼女の生徒は最初にはっきりと見るように拡張されていないので、次の研究の結果は、鼻孔を拡張するのではなく、生徒を少し拡張することです。 理由はありませんが、それができます それはそれほど合理的ではありませんが、それはできます、それはとても意図的です! ニューラルネットワークの普遍性定理はこれを述べています。誰かがあなたに複雑で特異な機能を与えているとしたら、F(x): この関数がどのように見えるかに関係なく、値f(x)(または正確な近似)がニューラルネットワークの出力である可能性のある入力xを作成できるニューラルネットワークが常に確保されます。 関数が法律を表す場合、法律がどれほど素晴らしく、理解できないとしても、多数のニューロンと多数の重量調整を通じて表現できることも意味します。 人工知能の経済的説明 これは経済学を思い出させるので、理解しやすいです。 私たちは、各ニューロンを経済活動に従事する社会の個人と見なしています。したがって、ニューラルネットワークは経済社会全体に相当します。 たとえば、賃金が上昇した場合、野菜の価格が上昇し、株式が下落し、何をすべきか、自分のお金を使う方法。ここにルールはありませんか?ある必要がありますが、特定のルールは何ですか?説明するのは難しいです。 専門家システムに基づく経済は計画経済です。経済法全体の表現は、各経済的個人の独立した決定を通して、むしろ専門家の高レベルの視点と先見性を通じて表現されることを望んでいます。しかし、専門家は、どの都市が甘い豆腐の脳を欠いているかを決して知りません。 したがって、専門家は、数百ページの計画全体が書かれていても、多くの場合、鋼鉄と蒸しパンを生産する必要があると言います。 統計ベースのマクロ制御は、毎年はるかに信頼性が高く、統計局は雇用率、インフレ率、GDP、および社会全体の指標をカウントします。これらの指標は、多くの場合、正確に表現することはできませんが、比較的信頼性が高い多くの内部法則を表しています。 ただし、統計ベースのルールの概要は比較的大まかです。たとえば、エコノミストがこれらの統計を見ると、住宅価格が長期的に上昇するか下落するか、長期的に株式が上昇するか下がるかを要約することができます。 経済が全体的に上昇すると、住宅価格と株の両方が上昇するはずです。ただし、統計データに基づいて、株式と価格のわずかな変動を要約することは不可能です。 ニューラルネットワークに基づくマイクロ経済学は、すべての人が社会における自分の調整を行う最も正確な表現であり、調整も社会に投入されます。 各独立した個人の継続的な取引の結果である株式市場の微妙な変動曲線を想像してください。 誰もが社会全体のインプットに基づいて独立した決定を下します。 たとえば、多額のお金が発行されるたびに、最終的に住宅価格が上昇し、多くのトレーニングの後、人々はそれを学びます。 人工知能にはビッグデータが必要です ただし、ニューラルネットワークには非常に多くのノードが含まれており、各ノードには多くのパラメーターが含まれています。 しかし、複数のマシンの力を集めて一緒に計算できるビッグデータプラットフォームがあります。 スパムの識別、ポルノの暴力的なテキストや写真の識別など、人工知能ができることはたくさんあります。 これも3つの段階を経ました。
人工知能アルゴリズムは主に大量のデータに依存しているため、これらのデータは特定の分野(電子商取引や電子メールなど)で長期間蓄積する必要があることがよくあります。 したがって、データがない場合、人工知能アルゴリズムは役に立たないでしょう。 顧客は個別のセットをインストールしており、顧客はトレーニングに関連するデータを持っていないため、結果は非常に貧弱です。 ただし、クラウドコンピューティングメーカーは多くの場合、大量のデータを蓄積するため、クラウドコンピューティングメーカーのセットをインストールしてサービスインターフェイスを公開します。 たとえば、テキストが黄色と暴力を伴うかどうかを特定する場合は、このオンラインサービスを使用してください。この状況でのサービスは、クラウドコンピューティング、SaaS(サービスとしてのソフトウェア)のサービスとしてソフトウェアとして呼ばれます。 したがって、人工知能プログラムは、SaaSプラットフォームとしてクラウドコンピューティングを参照しています。 3つの関係に基づく美しい生活 最後に、クラウドコンピューティングの3人の兄弟、つまりIaas、Paas、Saasが集まっています。したがって、一般的にクラウドコンピューティングプラットフォームでは、クラウド、ビッグデータ、および人工知能が見つかります。 ビッグデータ会社は大量のデータを蓄積し、いくつかのサービスを提供するためにいくつかの人工知能アルゴリズムを使用します。 したがって、クラウドコンピューティング、ビッグデータ、および人工知能がこのように統合されると、遭遇、知人、理解のプロセスが完了します。 |
>>: 南京大学人工知能学院が人材募集開始:年俸は40万元から
電子廃棄物[[277263]]環境の持続可能性のために AI と IoT を活用すると、現在の環境保...
人工知能の発展により、データをアルゴリズムに渡すのではなく、アルゴリズムがデータを処理するようになり...
編集者注: ビジネス旅行者にとって、ついに朗報が届きました。人工知能がついに旅行業界に浸透し、パーソ...
6月25日、ジーナ・ライモンド米国商務長官は、国立標準技術研究所(NIST)が人工知能(AI)に関...
[[207418]]多くの検索専門家は、「機械学習を通じて最適な重みを取得し」、それを検索クエリに使...
私たちは人工知能の存在に慣れ始めており、生成型人工知能(GenAI)の普及により、人工知能が世界に与...
高品質なデータの取得は、現在の大規模モデルのトレーニングにおける大きなボトルネックとなっています。数...
[51CTO.com からのオリジナル記事] ビッグデータとビッグデータ分析は、現在、企業の注目の的...
Keras と PyTorch はどちらも初心者にとても優しいディープラーニング フレームワークです...
パデュー大学のデジタルツインラボの最新の成果として、研究者らは、大規模言語モデル (LLM) を使用...
C# DES アルゴリズムの暗号化と復号化は、開発のセキュリティ部分として、その使用方法を理解する必...