ここでは、ビッグ・データ・アプライアンス(「Oracle Big Data Appliance上でのOracle Big Data Spatial and Graphのインストール」を参照)、Apache Hadoopシステム(「CDHクラスタまたはその他ハードウェアでのプロパティ・グラフ・サポートのインストール」を参照)またはOracle NoSQL Databaseで、すでにインストールが実行されていると想定しています。
データベースおよびJavaの構成設定を変更することにより、プロパティ・グラフのパフォーマンスを改善できる可能性があります。提供する提案事項はガイドラインであり、ご使用のシステムを慎重かつ徹底的に評価した後にのみ従ってください。
Apache HBaseおよびJava仮想マシンのデフォルト構成を変更することにより、パフォーマンスを改善できます。
Apache HBaseの構成を変更するには、この項の該当するCDHリリースに対する手順に従います。(個々の手順は、CDHリリースに応じて変わる可能性があります。)
CDH 5.2.x、CDH 5.3.xおよびCDH 5.4.xの場合:
admin
ユーザーとしてCloudera Managerにログインします。
「Home」ページで、左側のサービスのリストから「HBase」をクリックします。
「HBase」ページで、「Configuration」タブをクリックします。
左側の「Category」パネルで、「Service-Wide」を展開して「Advanced」を選択します。
hbase-site.xml
のHBase Service Advanced Configuration Snippet (Safety Valve)の値を次のように編集します。
<property> <name>hbase.regionserver.handler.count</name> <value>32</value> </property> <property> <name>hbase.hregion.max.filesize</name> <value>1610612736</value> </property> <property> <name>hbase.hregion.memstore.block.multiplier</name> <value>4</value> </property> <property> <name>hbase.hregion.memstore.flush.size</name> <value>134217728</value> </property> <property> <name>hbase.hstore.blockingStoreFiles</name> <value>200</value></property> <property> <name>hbase.hstore.flusher.count</name> <value>1</value> </property>
このプロパティがすでに存在する場合は、必要に応じて値を置換してください。そうでない場合は、XMLプロパティの記述を追加してください。
「Save Changes」をクリックします。
「Actions」メニューを展開し、状況に応じて「Restart」または「Rolling Restart」オプションのうち、最適な方を選択します。
CDH 5.4.xの場合:
admin
ユーザーとしてCloudera Managerにログインします。
「Home」ページで、左側のサービスのリストから「HBase」をクリックします。
「HBase」ページで、「Configuration」タブをクリックします。
「SCOPE」を開きます。
「HBase (Service-wide)」をクリックし、ページの下部までスクロールして「Display All Entries」を選択します(「Display 25 Entries」ではありません)。
このページで、hbase-site.xml
のHBase Service Advanced Configuration Snippet (Safety Valve)を見つけて、次の<property>
要素の値を入力します。
<property> <name>hbase.regionserver.handler.count</name> <value>32</value> </property> <property> <name>hbase.hregion.max.filesize</name> <value>1610612736</value> </property> <property> <name>hbase.hregion.memstore.block.multiplier</name> <value>4</value> </property> <property> <name>hbase.hregion.memstore.flush.size</name> <value>134217728</value> </property> <property> <name>hbase.hstore.blockingStoreFiles</name> <value>200</value></property> <property> <name>hbase.hstore.flusher.count</name> <value>1</value> </property>
このプロパティがすでに存在する場合は、必要に応じて値を置換してください。そうでない場合は、XMLプロパティの記述を追加してください。
「Save Changes」をクリックします。
「Actions」メニューを展開し、状況に応じて「Restart」または「Rolling Restart」オプションのうち、最適な方を選択します。
Javaメモリー設定を変更するには、この項の該当するCDHリリースに対する手順に従います。(個々の手順は、CDHリリースに応じて変わる可能性があります。)
CDH 5.2.xおよびCDH 5.3.xの場合:
admin
ユーザーとしてCloudera Managerにログインします。
「Home」ページで、左側のサービスのリストから「HBase」をクリックします。
「HBase」ページで、「Configuration」タブをクリックします。
「RegionServer Group」(デフォルトおよびその他)で、「Advanced」をクリックし、HBase RegionServerの「Java Configuration Options」で次の値を使用します。
-Xmn256m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly
「Resource Management」をクリックし、HBase RegionServerの「Java Heap Size」に適切な値(18G
など)を入力します。
「Save Changes」をクリックします。
「Actions」メニューを展開し、状況に応じて「Restart」または「Rolling Restart」オプションのうち、最適な方を選択します。
CDH 5.4.xの場合:
admin
ユーザーとしてCloudera Managerにログインします。
「Home」ページで、左側のサービスのリストから「HBase」をクリックします。
「HBase」ページで、「Configuration」タブをクリックします。
「SCOPE」を開きます。
「RegionServer」をクリックし、ページの下部までスクロールして「Display All Entries」を選択します(「Display 25 Entries」ではありません)。
このページで、「Java Configuration Options for HBase RegionServer」に次の値を入力します。
-Xmn256m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly
「Java Heap Size of HBase RegionServer in Bytes」に適切な値(18G
など)を入力します。
「Save Changes」をクリックします。
「Actions」メニューを展開し、状況に応じて「Restart」または「Rolling Restart」オプションのうち、最適な方を選択します。
関連項目:
Javaガベージ・コレクションの詳細は、次を参照してください。
http://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/
すべての設定の説明は、Javaツール・リファレンスを参照してください。
https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html
Oracle NoSQL Databaseから最高のパフォーマンスを得るには、次のようにします。
レプリケーション・グループ(シャード)がバランス調整されていることを確認します。
ユーザー・プロセス・リソース制限の設定を調整します(ulimit
)。次に例を示します。
ulimit -u 131072
レプリケーション・ノード上のJava仮想マシン(JVM)のヒープ・サイズを、Bツリー索引がメモリーに収まるように設定します。
ヒープ・サイズを設定するには、makebookconfig
コマンドの-memory_mb
オプションまたはストレージ・ノードのmemory_mb
パラメータを使用します。
Oracle NoSQL Databaseでは、ストレージ・ノードで実行するプロセスのヒープ・サイズとしてmemory_mb
の85%を使用します。ストレージ・ノードが複数のレプリケーション・ノードをホストしている場合、ヒープはそれらの間で均等に分割されます。各レプリケーション・ノードは、ヒープの70%であるキャッシュを使用します。
たとえば、2つのレプリケーション・ノードをホストしているストレージ・ノードのmemory_mb
を3000MBに設定した場合、各レプリケーション・ノードは次のようになります。
1275MBヒープ、(3000MB * .85)/2で計算
892MBキャッシュ、1275MB * .70で計算
関連項目:
Oracle NoSQL Database FAQ