個人財務 HBaseの属性

HBaseの属性

目次:

ビデオ: 7-3-5 Scala类的成员属性访问权限 2024

ビデオ: 7-3-5 Scala类的成员属性访问权限 2024
Anonim

HBase (Hadoopデータベース)は、GoogleのBigTableのJava実装です。 GoogleはBigTableを「疎、分散、永続的な多次元ソートマップ」と定義しています。 「これはかなり簡潔な定義ですが、複雑な面では少しだと思います。 BigTableの複雑さを少し壊すために、次に各属性の議論があります。

Hbaseはまばらです

あなたが推測したように、BigTable分散データストレージシステムは、大きなデータの要求を満たすように設計されています。現在、大きなデータアプリケーションには大量のデータが格納されますが、大きなデータコンテンツには可変性があります。次の図に示すように、顧客の連絡先情報を格納している会社のデータベースに従来のテーブルがあるとします。

<!顧客ID 姓

ミドルネーム 電子メールアドレス 番地 00001 Smith John
Timothy 1 Hadoop Lane、NY 11111 Doe Jane NULL
NULL 7 HBase Ave、CA 22222 企業または個人は、顧客または構成員のそれぞれについて完全なデータ記録を要求することができる。良い例は、適切なケアを提供するためにすべての連絡先情報を必要とするあなたの医者です。他の企業や個人は、部分的な連絡先情報のみを要求する場合もあり、時間の経過とともにその情報を習得する必要がある場合もあります。 <!例えば、顧客サービス会社は、サービス要求のために電話または電子メールメッセージを処理することができる。顧客は、サービス会社にすべての連絡先情報を提供するかどうかを選択する場合と選択しない場合があります。しかし、時間の経過とともに相互作用するたびに、企業はより良いサービスを提供できるようにクライアントの詳細を知ることができます。たとえば、積極的なサービスアラートを発行します。 この文脈では、 疎の

は、行内のフィールドが空でもNULLでもかまいませんが、HBaseがぎこちなく停止することはありません。 HBaseは、たとえばJane Doeのミドルネームと電子メールアドレスを(まだ)知っていないという事実を処理できます。

<! - 3 - >

別の例としては、衛星画像を保存するためのデータベースです。 GoogleがBigTable技術を使用して地球の衛星画像を保存することが判明しました。ほぼすべての場合、画像が保存されるたびにメタデータも保存されます。

メタデータは、画像が野外から捕捉された場合、画像の住所または緯度および経度のみを含むことができる。メタデータはコンテンツ内で可変であるため、一部のフィールドはNULLになります。これは問題ありません。両方の例において、収集されるデータセットは、特に第2の例において、非常に大きくなる可能性がある。イメージデータベースは、ほとんどの場合、テラバイト単位で測定されるか、時にはペタバイト単位で測定されます。 HBaseは大きなデータを保存するように設計されていますが、無駄なデータレコードを無償で保存するために設計されています。大規模なデータアプリケーションを使用している場合、この懸念事項は重要です。 100万行以上のいくつかのNULLレコードを保存するのは無駄ですが、その廃棄物が数千万行を超えると想像してみてください! ありがたいことに、これはGoogleのデザイナーとHBaseコミュニティにとって重要な考慮事項でした。スパースデータは、高価なストレージスペースを浪費することなくサポートされています。

それはそこで終わらない。スキーマレスのデータストアの能力を考えてみましょう。表は、古典的なカスタマーコンタクトテーブルを示しています。企業がこれらのテーブルを設計するとき、彼らは保存したいものを前もって知っています。つまり、スキーマは

固定されています。情報の最初のバイトがテーブルに格納される前に定義されています。

時間の経過とともに、顧客に新しいフィールドが必要な場合はどうなりますか? Twitterのハンドルや新しい携帯電話番号はどうですか?あなたは、もはやあなたのために働いていないスキーマで一見固執しています。

HBaseはこの問題も解決します。データを持たないときにフィールドをスキップするだけでなく、フィールド(またはHBase内の

カラム

)を動的に追加することもできますスキーマを再設計したり操作を中断したりする必要はありません。

したがって、HBaseはスキーマレスのデータストアと考えることができます。つまり、それは流動的です。スキーマを追加、削除、変更することができます。 HBaseは分散され、永続的です。 BigTableは分散型永続データストアです。

永続的な

は、BigTableに保存したデータ(およびHBase、その問題について)は、プログラムやセッションが終了した後も永続的に保持されることを意味します。それはかなり単純です - 永続的な意味はそれが続くことを意味しますが、データがどのように保持されるかについてもう少し時間をかけて考える必要があります。 GoogleはBigTableの論文で、Google File SystemまたはGFSと呼ばれる分散ファイルシステムについて説明しました。 HBaseはオープンソースでBigTableを実装しているのと同じように、HDFSはGFSのオープンソース実装です。 デフォルトでは、HBaseはHDFSを利用してデータをディスクストレージに保存します。 HBaseでは他の分散データストアも使用できますが、HBaseのインストールの大部分はHDFSを活用しています。これはHBaseが "Hadoop Database"であることを考えると理にかなっています。ちょっと、名前に組み込まれています。

HDFSは、HadoopだけでなくHBaseのキーとなる技術です。 HBaseはHDFSにデータを保存することにより、信頼性、可用性、シームレスなスケーラビリティ、高性能などを、コスト効率の高い分散型サーバで提供します。

マップ

( 連想配列 とも呼ばれます)は、基本から出発して、キーと値のペアの抽象コレクションです。キーはユニークです。この定義は、HBaseのデータモデルがさまざまな方法で記述されることがよくあるため、HBaseの理解には不可欠です。多くの場合、列指向のストアとしては不完全です。 HBaseは、各キーが一意であるキー値データストアで、HBaseデータストア内に最大で1回しか存在しません。さらに、マップはソートされ、多次元である。これらのキーはHBaseに格納され、バイトレキシコン順にソートされます。各値は複数のバージョンを持つことができ、データモデルは多次元になります。デフォルトでは、データバージョンはタイムスタンプで実装されます。

HBaseの属性

エディタの選択

自転車の点検チェックリスト - ダミー

自転車の点検チェックリスト - ダミー

すぐに自転車の点検をするために数分。あなたの自転車を一時的に与えることは、あなたの次の乗り心地の安全性、快適性、そして楽しさを高めることができます。乗車準備の一環として、次の手順に従ってください:車輪のクイックリリースレバーを開閉して、確認します。

必須サイクリング用具 - ダミー

必須サイクリング用具 - ダミー

あなたはバイクの乗り心地をさらに楽しくするために何百万ものものを買うことができます。自転車用に必要なアクセサリーをいくつかご紹介します。ヘルメット:ヘルメットを着用することはオーストラリアとニュージーランドの法律です。

自転車の範囲を閲覧可能 - ダミー

自転車の範囲を閲覧可能 - ダミー

あなたはサイクリングをすることに決めましたが、その重要なキットを欠いている - バイク!あなたが望む自転車のタイプを正確に知っていない限り、良いアドバイスは、あなたの時間を費やして、自転車で何をするのか、どこに乗るのかを本当に考えてみることです。

エディタの選択

アプリとプライバシー - ダミーを特定する

アプリとプライバシー - ダミーを特定する

Spotifyアプリケーションに登録すると、あなたの個人的な詳細の一部にアクセスする。たとえば、Top10アプリを使用してプレイリストを公開するには、既存のFacebookアカウントにリンクする必要があります。このプロセス中、Facebookはあなたに特定の種類の共有を許可するかどうか尋ねます。

モバイル対応携帯電話を識別する - ダミー

モバイル対応携帯電話を識別する - ダミー

SpotifyモバイルはiPhoneで最も人気がありますが、優れたAndroidバージョン(basks Androidマーケットの5つ星評価のうち5つの評価では5位に入っています)が急速に追いついています。

特集 - ダミー

特集 - ダミー

スポットメイキングは、モバイルでも、あらゆる音楽への普遍的な即時アクセスを可能にしますデバイスまたはデスクトップコンピュータ。 Facebookは人々が古い友達と再会して新しい友達を作るのを助け、Spotifyの助けを借りて青春の歌を再発見し、友人や検索を通じて新鮮な音楽を発見しました。

エディタの選択

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSアプリケーションでオブジェクト指向設計を使用する方法 - ダミー

IOSは、動作がオブジェクトに関連付けられているプログラムを設計するさまざまな方法です。説明するために、紅茶とスープの作り方を検討することを検討してください。しかし、即座に代わりに活動に飛び込んではいけません。探偵が犯罪現場に入るように行動してください。

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

IOSアプリケーションでハイレベル抽象化を使用してビデオを再生する方法 - ダミー

このセクションでは、MPMoviePlayerViewControllerクラスの高レベル抽象化を使用してiOSアプリケーションでビデオを再生する方法を説明します。 - (IBAction)playVideo:(id)sender {MPMoviePlayerViewController * moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];このコードは、ビデオビューコントローラ内のTTTVideoViewControllerファイルからです。 [self presentMoviePlayerViewControllerAnimated:moviePlayer];}シンプルさ自体!必要なのはURLです。

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

IOSアプリケーションでJavaスクリプトオブジェクト表記を使用する方法 - ダミー

JavaScript Object Notation (JSON)はiOSアプリのデータを表現する上で事実上の標準になっています。 JSONを使用して、Web上でデータを転送したり、長期保存データを保存および取得するためのフォーマットとして使用することができます。 JSONは、人間が読める形式であり、マシンが理解しやすい形式です。 JSONのデータは1つにまとめることができます...