81
Couchbase 2013 ふりかえり 土田 行一

Couchbase meetup20131212 [look back in 2013]

  • Upload
    ktoda

  • View
    600

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Couchbase meetup20131212 [look back in 2013]

Couchbase 2013 ふりかえり

土田 行一

Page 2: Couchbase meetup20131212 [look back in 2013]

自己紹介(とだこういち)• ここ2~3年はSolr/lucneを使用した検索システムの開発に従事(特許検索、地図検索など)していました

• 6月にCouchbaseに気づき、たちまち fall in love

• 現在、Couchbaseに関する技術支援・トレーニング講師をしています

• また、Couchbase 技術文献の翻訳(White Paper等)もしています

Page 3: Couchbase meetup20131212 [look back in 2013]

Couchbase本社で トレーニングも受けさせて頂きました

(from Couchbase twitter)

Page 4: Couchbase meetup20131212 [look back in 2013]

今回は、Release Note から今年1年を振り返ります

• 2.0.1~2.2.0のManual に記載されているRelease Notesを翻訳していきます。

Page 5: Couchbase meetup20131212 [look back in 2013]

今年はいろいろリリースがありました

Version 時期 内容

2.0.1 2013.03

2.1.0 2013.06

2.1.1 2013.07

2.2.0 2013.09

実に3月に1回リリースのハイペースでした

Page 6: Couchbase meetup20131212 [look back in 2013]

では、振り返ってみましょう

Page 7: Couchbase meetup20131212 [look back in 2013]

2.0.1 (3月)

Page 8: Couchbase meetup20131212 [look back in 2013]

2.0.1Release Notes for Couchbase Server 2.0.1 GA (March 2013)¶ Couchbase Server 2.0.1 is first maintenance release for Couchbase Server 2.0. This release contains number of enhancements particularly for the rebalance, indexing and compaction operations. In addition, it also includes some critical bug fixes related to system timeouts and system stability. This includes:! • Improves rebalance operation time for key-value use cases. • Improves coordination of index compaction and index building that occurs during the

rebalance operation. This helps significantly reduce the index file size growth during rebalance.

• Changes to high and low water marks that provides more usable memory for users. • Fixes timeout problems that were seen due to Erlang VM settings. • Fixes a critical indexing problem. A document that produced a runtime failure in one

view had been unavailable to all other views within the same design document.

Couchbase Server 2.0.1は、 Couchbase Server 2.0における最初のメンテナンスリリースです。 このリリースには、いくつかのパフォーマンス向上が含まれます。 この中には、リバランス、インデキシング、コンパクション処理が 含まれます。 加えて、システムタイムアウトや、システムの安定性に関するいくつかの致命的なバクについてのバグフィックスがなされています。

Page 9: Couchbase meetup20131212 [look back in 2013]

2.0.1Release Notes for Couchbase Server 2.0.1 GA (March 2013)¶ Couchbase Server 2.0.1 is first maintenance release for Couchbase Server 2.0. This release contains number of enhancements particularly for the rebalance, indexing and compaction operations. In addition, it also includes some critical bug fixes related to system timeouts and system stability. This includes:! • Improves rebalance operation time for key-value use cases. • Improves coordination of index compaction and index building that occurs during the

rebalance operation. This helps significantly reduce the index file size growth during rebalance.

• Changes to high and low water marks that provides more usable memory for users. • Fixes timeout problems that were seen due to Erlang VM settings. • Fixes a critical indexing problem. A document that produced a runtime failure in one

view had been unavailable to all other views within the same design document.

!key-valueユースケースにおける、リバランス処理時間が改善しています。

Page 10: Couchbase meetup20131212 [look back in 2013]

2.0.1Release Notes for Couchbase Server 2.0.1 GA (March 2013)¶ Couchbase Server 2.0.1 is first maintenance release for Couchbase Server 2.0. This release contains number of enhancements particularly for the rebalance, indexing and compaction operations. In addition, it also includes some critical bug fixes related to system timeouts and system stability. This includes:! • Improves rebalance operation time for key-value use cases. • Improves coordination of index compaction and index building that occurs during the

rebalance operation. This helps significantly reduce the index file size growth during rebalance.

• Changes to high and low water marks that provides more usable memory for users. • Fixes timeout problems that were seen due to Erlang VM settings. • Fixes a critical indexing problem. A document that produced a runtime failure in one

view had been unavailable to all other views within the same design document.

!リバランス処理中に発生した、インデックスのコンパクションと、インデックス生成の整合性が向上しました。 これは、リバランス中におけるインデックスファイルサイズの増加を著しく低減することに寄与します。

Page 11: Couchbase meetup20131212 [look back in 2013]

2.0.1Release Notes for Couchbase Server 2.0.1 GA (March 2013)¶ Couchbase Server 2.0.1 is first maintenance release for Couchbase Server 2.0. This release contains number of enhancements particularly for the rebalance, indexing and compaction operations. In addition, it also includes some critical bug fixes related to system timeouts and system stability. This includes:! • Improves rebalance operation time for key-value use cases. • Improves coordination of index compaction and index building that occurs during the

rebalance operation. This helps significantly reduce the index file size growth during rebalance.

• Changes to high and low water marks that provides more usable memory for users. • Fixes timeout problems that were seen due to Erlang VM settings. • Fixes a critical indexing problem. A document that produced a runtime failure in one

view had been unavailable to all other views within the same design document.

!ハイウォータマークと、ロウウォータマークを変更し、ユーザがより多くのメモリ領域を利用できるようにしました。

Page 12: Couchbase meetup20131212 [look back in 2013]

High Water Markは 2.0.1+ から85%でした

Ejection and Working Set Management というわかりにくい所に記載がありました。

Page 13: Couchbase meetup20131212 [look back in 2013]

どうも、今週から、サイジングの記述が修正されている様です、、、

しかし、式は修正されず、、、

Page 14: Couchbase meetup20131212 [look back in 2013]

2.0.1Release Notes for Couchbase Server 2.0.1 GA (March 2013)¶ Couchbase Server 2.0.1 is first maintenance release for Couchbase Server 2.0. This release contains number of enhancements particularly for the rebalance, indexing and compaction operations. In addition, it also includes some critical bug fixes related to system timeouts and system stability. This includes:! • Improves rebalance operation time for key-value use cases. • Improves coordination of index compaction and index building that occurs during the

rebalance operation. This helps significantly reduce the index file size growth during rebalance.

• Changes to high and low water marks that provides more usable memory for users. • Fixes timeout problems that were seen due to Erlang VM settings. • Fixes a critical indexing problem. A document that produced a runtime failure in one

view had been unavailable to all other views within the same design document.!Erlang VM設定をする必要のあった、タイムアウト問題を解決しました。

Page 15: Couchbase meetup20131212 [look back in 2013]

2.0.1Release Notes for Couchbase Server 2.0.1 GA (March 2013)¶ Couchbase Server 2.0.1 is first maintenance release for Couchbase Server 2.0. This release contains number of enhancements particularly for the rebalance, indexing and compaction operations. In addition, it also includes some critical bug fixes related to system timeouts and system stability. This includes:! • Improves rebalance operation time for key-value use cases. • Improves coordination of index compaction and index building that occurs during the

rebalance operation. This helps significantly reduce the index file size growth during rebalance.

• Changes to high and low water marks that provides more usable memory for users. • Fixes timeout problems that were seen due to Erlang VM settings. • Fixes a critical indexing problem. A document that produced a runtime failure in one

view had been unavailable to all other views within the same design document.

!同じdesign document内の、あるViewにおいてランタイム障害を引き起こしたドキュメントは、その他の全てのviewでも利用できなくなるという問題が発生していましたが、この致命的なインデキシング問題を解決しました。

Page 16: Couchbase meetup20131212 [look back in 2013]

2.0.1Fixes in 2.0.1

• Installation and Upgrade ◦ We now provide a warning message on minimal system requirements for Couchbase Server. This

appears on Linux in the terminal, and on Windows as a InstallShield screen. For more information about minimum platform requirements, see the section Preparation.Issues : MB-7482

• Cluster Operations ◦ The server had experienced timeouts during rebalance if views were being indexed or compacted at the

same time. This resulted in the rebalance to fail. This has been fixed.Issues : MB-6595

◦ In the past, if you were performing an online upgrade of a 1.8 cluster to 2.0 by adding 2.0 nodes, the dynamic configuration file on 2.0 nodes would be purged. This resulted in any XDCR remote cluster references to be lost on the 2.0 nodes and would produce this error message "case_clause,error". This is now fixed.Issues : MB-7568

◦ The server had experienced random timeouts possible due to lack of asynchronous I/O threads. This caused rebalance to fail. This has been fixed.Issues : MB-7182

• Command-line Tools

◦ There is a new setting available in cbepctl named mutation_mem_threshold. This is the amount of RAM that can be used on the server before a client begins receiving temporary out of memory errors. For more information, see Changing Setting for Out Of Memory Errors.Issues : MB-7540

!Couchbase Serverの最小システム要件(を満たさない場合は)ワーニングメッセージを出力するようにしました。これはLinuxの場合はターミナルに表示されます。また、WindowsではInstallSheildスクリーンに表示されます。詳細については「Preparation」セクションを参照。

Page 17: Couchbase meetup20131212 [look back in 2013]

2.0.1Fixes in 2.0.1

• Installation and Upgrade ◦ We now provide a warning message on minimal system requirements for Couchbase Server. This

appears on Linux in the terminal, and on Windows as a InstallShield screen. For more information about minimum platform requirements, see the section Preparation.Issues : MB-7482

• Cluster Operations ◦ The server had experienced timeouts during rebalance if views were being indexed or compacted at the

same time. This resulted in the rebalance to fail. This has been fixed.Issues : MB-6595

◦ In the past, if you were performing an online upgrade of a 1.8 cluster to 2.0 by adding 2.0 nodes, the dynamic configuration file on 2.0 nodes would be purged. This resulted in any XDCR remote cluster references to be lost on the 2.0 nodes and would produce this error message "case_clause,error". This is now fixed.Issues : MB-7568

◦ The server had experienced random timeouts possible due to lack of asynchronous I/O threads. This caused rebalance to fail. This has been fixed.Issues : MB-7182

• Command-line Tools

◦ There is a new setting available in cbepctl named mutation_mem_threshold. This is the amount of RAM that can be used on the server before a client begins receiving temporary out of memory errors. For more information, see Changing Setting for Out Of Memory Errors.Issues : MB-7540

!もしもリバランスと同時にviewがインデックス化されたか、コンパクションされた場合には、リバランスがタイムアウトするという現象が起きていました。そしてこの場合、リバランスが失敗していました。この問題を解決しました。

Page 18: Couchbase meetup20131212 [look back in 2013]

2.0.1Fixes in 2.0.1

• Installation and Upgrade ◦ We now provide a warning message on minimal system requirements for Couchbase Server. This

appears on Linux in the terminal, and on Windows as a InstallShield screen. For more information about minimum platform requirements, see the section Preparation.Issues : MB-7482

• Cluster Operations ◦ The server had experienced timeouts during rebalance if views were being indexed or compacted at the

same time. This resulted in the rebalance to fail. This has been fixed.Issues : MB-6595

◦ In the past, if you were performing an online upgrade of a 1.8 cluster to 2.0 by adding 2.0 nodes, the dynamic configuration file on 2.0 nodes would be purged. This resulted in any XDCR remote cluster references to be lost on the 2.0 nodes and would produce this error message "case_clause,error". This is now fixed.Issues : MB-7568

◦ The server had experienced random timeouts possible due to lack of asynchronous I/O threads. This caused rebalance to fail. This has been fixed.Issues : MB-7182

• Command-line Tools

◦ There is a new setting available in cbepctl named mutation_mem_threshold. This is the amount of RAM that can be used on the server before a client begins receiving temporary out of memory errors. For more information, see Changing Setting for Out Of Memory Errors.Issues : MB-7540

!これまでは、1.8から2.0でのオンライン・アップグレードを、2.0ノードを追加することにより実行した場合、2.0ノード上の dynamic configuration fileは、消去されていましました。この結果XDCRのリモートクラスタ参照は、この2.0ノードを見失い、"case_clause,error"を出力しましたが、この問題を解決しました。

Page 19: Couchbase meetup20131212 [look back in 2013]

2.0.1Fixes in 2.0.1

• Installation and Upgrade ◦ We now provide a warning message on minimal system requirements for Couchbase Server. This

appears on Linux in the terminal, and on Windows as a InstallShield screen. For more information about minimum platform requirements, see the section Preparation.Issues : MB-7482

• Cluster Operations ◦ The server had experienced timeouts during rebalance if views were being indexed or compacted at the

same time. This resulted in the rebalance to fail. This has been fixed.Issues : MB-6595

◦ In the past, if you were performing an online upgrade of a 1.8 cluster to 2.0 by adding 2.0 nodes, the dynamic configuration file on 2.0 nodes would be purged. This resulted in any XDCR remote cluster references to be lost on the 2.0 nodes and would produce this error message "case_clause,error". This is now fixed.Issues : MB-7568

◦ The server had experienced random timeouts possible due to lack of asynchronous I/O threads. This caused rebalance to fail. This has been fixed.Issues : MB-7182

• Command-line Tools

◦ There is a new setting available in cbepctl named mutation_mem_threshold. This is the amount of RAM that can be used on the server before a client begins receiving temporary out of memory errors. For more information, see Changing Setting for Out Of Memory Errors.Issues : MB-7540

!非同期I/Oスレッドが欠乏すると、ランダムなタイムアウトが発生していました。この結果 、リバランスが失敗することがありましたがこの問題を解決しました。

Page 20: Couchbase meetup20131212 [look back in 2013]

2.0.1Fixes in 2.0.1

• Installation and Upgrade ◦ We now provide a warning message on minimal system requirements for Couchbase Server. This

appears on Linux in the terminal, and on Windows as a InstallShield screen. For more information about minimum platform requirements, see the section Preparation.Issues : MB-7482

• Cluster Operations ◦ The server had experienced timeouts during rebalance if views were being indexed or compacted at the

same time. This resulted in the rebalance to fail. This has been fixed.Issues : MB-6595

◦ In the past, if you were performing an online upgrade of a 1.8 cluster to 2.0 by adding 2.0 nodes, the dynamic configuration file on 2.0 nodes would be purged. This resulted in any XDCR remote cluster references to be lost on the 2.0 nodes and would produce this error message "case_clause,error". This is now fixed.Issues : MB-7568

◦ The server had experienced random timeouts possible due to lack of asynchronous I/O threads. This caused rebalance to fail. This has been fixed.Issues : MB-7182

• Command-line Tools

◦ There is a new setting available in cbepctl named mutation_mem_threshold. This is the amount of RAM that can be used on the server before a client begins receiving temporary out of memory errors. For more information, see Changing Setting for Out Of Memory Errors.Issues : MB-7540

!cbepctlコマンドに、mutation_mem_thresholdという新しい設定が追加されました。これは、クライアントが、テンポラリのアウト・オブ・メモリエラーを受け付けるよりも前にサーバ上で利用できるRAMの容量です。詳細は、「Changing Setting for Out Of Memory Errors」参照のこと。

Page 21: Couchbase meetup20131212 [look back in 2013]

2.0.1 • Indexing and Querying ◦ In past releases of Couchbase Server 2.0, if you had a map function that failed to index, other

functions in the same design document would also fail. This has been fixed.Issues : MB-6895

◦ During rebalance, index files were growing to an unnecessarily large size. This has been fixed. Issues : MB-6799

◦ There is a new REST API call which can be used if you experience a slow rebalance while indexing and compaction are in progress. For more information, see Adjusting Rebalance during Compaction.Issues : MB-7843

• Cross Datacenter Replication (XDCR) ◦ Stats for XDCR had erroneously omitted the time taken to commit items and had also displayed the

incorrect number of documents/mutations checked and replicated. This is fixed.Issues : MB-7275

◦ When you create a replication between two clusters, you may see two error messages: “Failed to grab remote bucket info, vbucket” and “Error replicating vbucket X”. Nonetheless, replication will still start and then function as expected, but the error messages may appear for some time in the Web Console. This has been fixed.Issues : MB-7786, MB-7457

!!これまでは、あるMap関数が、インデックスの生成に失敗した場合、同じデザインドキュメント中の他の(Map・Reduce)関数はすべて失敗していましたが、この問題が解決されました。

Page 22: Couchbase meetup20131212 [look back in 2013]

2.0.1 • Indexing and Querying ◦ In past releases of Couchbase Server 2.0, if you had a map function that failed to index, other

functions in the same design document would also fail. This has been fixed.Issues : MB-6895

◦ During rebalance, index files were growing to an unnecessarily large size. This has been fixed. Issues : MB-6799

◦ There is a new REST API call which can be used if you experience a slow rebalance while indexing and compaction are in progress. For more information, see Adjusting Rebalance during Compaction.Issues : MB-7843

• Cross Datacenter Replication (XDCR) ◦ Stats for XDCR had erroneously omitted the time taken to commit items and had also displayed the

incorrect number of documents/mutations checked and replicated. This is fixed.Issues : MB-7275

◦ When you create a replication between two clusters, you may see two error messages: “Failed to grab remote bucket info, vbucket” and “Error replicating vbucket X”. Nonetheless, replication will still start and then function as expected, but the error messages may appear for some time in the Web Console. This has been fixed.Issues : MB-7786, MB-7457

!!リバランスの間、インデックスファイルは、不必要に大きなサイズまで増加する問題がありましたが、この問題が解決されました。

Page 23: Couchbase meetup20131212 [look back in 2013]

2.0.1 • Indexing and Querying ◦ In past releases of Couchbase Server 2.0, if you had a map function that failed to index, other

functions in the same design document would also fail. This has been fixed.Issues : MB-6895

◦ During rebalance, index files were growing to an unnecessarily large size. This has been fixed. Issues : MB-6799

◦ There is a new REST API call which can be used if you experience a slow rebalance while indexing and compaction are in progress. For more information, see Adjusting Rebalance during Compaction.Issues : MB-7843

• Cross Datacenter Replication (XDCR) ◦ Stats for XDCR had erroneously omitted the time taken to commit items and had also displayed the

incorrect number of documents/mutations checked and replicated. This is fixed.Issues : MB-7275

◦ When you create a replication between two clusters, you may see two error messages: “Failed to grab remote bucket info, vbucket” and “Error replicating vbucket X”. Nonetheless, replication will still start and then function as expected, but the error messages may appear for some time in the Web Console. This has been fixed.Issues : MB-7786, MB-7457

!インデキシングとコンパクションが進行している間にリバランスを行った場合に、処理が遅くなる場合がありました。このリバランスのパフォーマンス低下を改善する新しいREST API呼び出しが提供されます。詳細は「Adjusting Rebalance during Compaction」を参照。

Page 24: Couchbase meetup20131212 [look back in 2013]

2.0.1 • Indexing and Querying ◦ In past releases of Couchbase Server 2.0, if you had a map function that failed to index, other

functions in the same design document would also fail. This has been fixed.Issues : MB-6895

◦ During rebalance, index files were growing to an unnecessarily large size. This has been fixed. Issues : MB-6799

◦ There is a new REST API call which can be used if you experience a slow rebalance while indexing and compaction are in progress. For more information, see Adjusting Rebalance during Compaction.Issues : MB-7843

• Cross Datacenter Replication (XDCR) ◦ Stats for XDCR had erroneously omitted the time taken to commit items and had also displayed the

incorrect number of documents/mutations checked and replicated. This is fixed.Issues : MB-7275

◦ When you create a replication between two clusters, you may see two error messages: “Failed to grab remote bucket info, vbucket” and “Error replicating vbucket X”. Nonetheless, replication will still start and then function as expected, but the error messages may appear for some time in the Web Console. This has been fixed.Issues : MB-7786, MB-7457

!コミットに時間がかかったitemについて、XDCRのための統計情報が、誤って省略されていました。このためチェックされ、レプリケートされた、ドキュメント数/変更数について正しくない件数が表示されていました。これを修正しました。

Page 25: Couchbase meetup20131212 [look back in 2013]

2.0.1 • Indexing and Querying ◦ In past releases of Couchbase Server 2.0, if you had a map function that failed to index, other

functions in the same design document would also fail. This has been fixed.Issues : MB-6895

◦ During rebalance, index files were growing to an unnecessarily large size. This has been fixed. Issues : MB-6799

◦ There is a new REST API call which can be used if you experience a slow rebalance while indexing and compaction are in progress. For more information, see Adjusting Rebalance during Compaction.Issues : MB-7843

• Cross Datacenter Replication (XDCR) ◦ Stats for XDCR had erroneously omitted the time taken to commit items and had also displayed the

incorrect number of documents/mutations checked and replicated. This is fixed.Issues : MB-7275

◦ When you create a replication between two clusters, you may see two error messages: “Failed to grab remote bucket info, vbucket” and “Error replicating vbucket X”. Nonetheless, replication will still start and then function as expected, but the error messages may appear for some time in the Web Console. This has been fixed.Issues : MB-7786, MB-7457

!クラスタ間のレプリケーションを生成した時、2つのエラーメッセージ(“Failed to grab remote bucket info, vbucket”,“Error replicating vbucket X”)が表示されていました。この表示がされていても、レプリケーションは問題なく開始されます。しかしエラーメッセージは、Webコンソール上に時々表示されるといった状態になっていましたが、この問題を修正しました。

Page 26: Couchbase meetup20131212 [look back in 2013]

2.1.0(6月)

Page 27: Couchbase meetup20131212 [look back in 2013]

2.1.0Release Notes for Couchbase Server 2.1.0 GA (June 2013)¶ Couchbase Server 2.1.0 is the first minor release for Couchbase Server 2.0 and includes several optimizations, new features and important bug fixes.The major enhancements available in Couchbase Server 2.1.0 include:• Improved disk read and write performance with new multi-

threaded persistence engine. With the newly designed persistence engine, users can configure the multiple read-write workers on a per Bucket basis. See Disk Storage.

!Couchbase Server 2.1.0は、Couchbase Server 2.0のマイナーリリースであり、この版では、いくつかの最適化、新規機能、そして重要なバグフィックスが含まれます。Couchbase Server 2.1.0で可能になった主要な改善点は以下。

Page 28: Couchbase meetup20131212 [look back in 2013]

2.1.0Release Notes for Couchbase Server 2.1.0 GA (June 2013)¶ Couchbase Server 2.1.0 is the first minor release for Couchbase Server 2.0 and includes several optimizations, new features and important bug fixes.The major enhancements available in Couchbase Server 2.1.0 include:• Improved disk read and write performance with new multi-

threaded persistence engine. With the newly designed persistence engine, users can configure the multiple read-write workers on a per Bucket basis. See Disk Storage.

!マルチスレッド化された永続化エンジンにより、ディスクへの読込み、書込みのパフォーマンスが改善されました。新しくデザインされたエンジンを使って、ユーザは、バケット単位で、multiple read-write workerを設定できるようになりました。「Disk Storage」参照。

Page 29: Couchbase meetup20131212 [look back in 2013]

Disk周りが,マルチスレッド化

Page 30: Couchbase meetup20131212 [look back in 2013]

2.1.0• Optimistic Replication mode for XDCR to optimistically replicate

mutations to the target cluster. More information can be found here: ‘Optimistic Replication’ in XDCR

• More XDCR Statistics to monitor performance and behavior of XDCR. See Monitoring Outgoing XDCR.

• Support for hostnames when setting up Couchbase Server. See Using Hostnames with Couchbase Server.

• Rebalance progress indicator to provide more visibility into rebalance operation. See Monitoring a Rebalance.

• Ability to generate a health report with cbhealthchecker, now included as part of the Couchbase Server install. See cbhealthchecker Tool.

• Importing and exporting of CSV files with Couchbase using cbtransfer. See cbtransfer Tool.

• Server-side replica-read API. Couchbase Developer Guide, Replica Read.

XDCRへの楽観的レプリケーションモード(ターゲットクラスタに対する楽観的なレプリケートmutation)を提供します.詳細は「xdcrOptimisticReplicationThreshold」を参照。

Page 31: Couchbase meetup20131212 [look back in 2013]

2.1.0• Optimistic Replication mode for XDCR to optimistically replicate

mutations to the target cluster. More information can be found here: ‘Optimistic Replication’ in XDCR

• More XDCR Statistics to monitor performance and behavior of XDCR. See Monitoring Outgoing XDCR.

• Support for hostnames when setting up Couchbase Server. See Using Hostnames with Couchbase Server.

• Rebalance progress indicator to provide more visibility into rebalance operation. See Monitoring a Rebalance.

• Ability to generate a health report with cbhealthchecker, now included as part of the Couchbase Server install. See cbhealthchecker Tool.

• Importing and exporting of CSV files with Couchbase using cbtransfer. See cbtransfer Tool.

• Server-side replica-read API. Couchbase Developer Guide, Replica Read.

XDCRの統計情報が追加され、XDCRのパフォーマンスや挙動をモニタできるようになりました。「Monitoring Outgoing XDCR」を参照。

Page 32: Couchbase meetup20131212 [look back in 2013]

2.1.0• Optimistic Replication mode for XDCR to optimistically replicate

mutations to the target cluster. More information can be found here: ‘Optimistic Replication’ in XDCR

• More XDCR Statistics to monitor performance and behavior of XDCR. See Monitoring Outgoing XDCR.

• Support for hostnames when setting up Couchbase Server. See Using Hostnames with Couchbase Server.

• Rebalance progress indicator to provide more visibility into rebalance operation. See Monitoring a Rebalance.

• Ability to generate a health report with cbhealthchecker, now included as part of the Couchbase Server install. See cbhealthchecker Tool.

• Importing and exporting of CSV files with Couchbase using cbtransfer. See cbtransfer Tool.

• Server-side replica-read API. Couchbase Developer Guide, Replica Read.

Couchbase Serverの設定時に、hostnameが設定できるようになりました。「Using Hostnames with Couchbase Server」を参照。

Page 33: Couchbase meetup20131212 [look back in 2013]

2.1.0• Optimistic Replication mode for XDCR to optimistically replicate

mutations to the target cluster. More information can be found here: ‘Optimistic Replication’ in XDCR

• More XDCR Statistics to monitor performance and behavior of XDCR. See Monitoring Outgoing XDCR.

• Support for hostnames when setting up Couchbase Server. See Using Hostnames with Couchbase Server.

• Rebalance progress indicator to provide more visibility into rebalance operation. See Monitoring a Rebalance.

• Ability to generate a health report with cbhealthchecker, now included as part of the Couchbase Server install. See cbhealthchecker Tool.

• Importing and exporting of CSV files with Couchbase using cbtransfer. See cbtransfer Tool.

• Server-side replica-read API. Couchbase Developer Guide, Replica Read.

リバランスのプログレス表示が、リバランス処理をより視覚的に表示するようになりました。「See Monitoring a Rebalance」を参照。

Page 34: Couchbase meetup20131212 [look back in 2013]

2.1.0• Optimistic Replication mode for XDCR to optimistically replicate

mutations to the target cluster. More information can be found here: ‘Optimistic Replication’ in XDCR

• More XDCR Statistics to monitor performance and behavior of XDCR. See Monitoring Outgoing XDCR.

• Support for hostnames when setting up Couchbase Server. See Using Hostnames with Couchbase Server.

• Rebalance progress indicator to provide more visibility into rebalance operation. See Monitoring a Rebalance.

• Ability to generate a health report with cbhealthchecker, now included as part of the Couchbase Server install. See cbhealthchecker Tool.

• Importing and exporting of CSV files with Couchbase using cbtransfer. See cbtransfer Tool.

• Server-side replica-read API. Couchbase Developer Guide, Replica Read.

cbhealthcheckerにより、ヘルス・レポートを生成するようになりました。また、これは、Couchbase Serverのインストールパッケージに含まれるようになりました。「cbhealthchecker Tool」を参照。

Page 35: Couchbase meetup20131212 [look back in 2013]

2.1.0• Optimistic Replication mode for XDCR to optimistically replicate

mutations to the target cluster. More information can be found here: ‘Optimistic Replication’ in XDCR

• More XDCR Statistics to monitor performance and behavior of XDCR. See Monitoring Outgoing XDCR.

• Support for hostnames when setting up Couchbase Server. See Using Hostnames with Couchbase Server.

• Rebalance progress indicator to provide more visibility into rebalance operation. See Monitoring a Rebalance.

• Ability to generate a health report with cbhealthchecker, now included as part of the Couchbase Server install. See cbhealthchecker Tool.

• Importing and exporting of CSV files with Couchbase using cbtransfer. See cbtransfer Tool.

• Server-side replica-read API. Couchbase Developer Guide, Replica Read.

cbtransferコマンドにより、CSVファイルによる、インポート・エクスポートができるようになりました。「cbtransfer Tool」を参照。

Page 36: Couchbase meetup20131212 [look back in 2013]

2.1.0• Optimistic Replication mode for XDCR to optimistically replicate

mutations to the target cluster. More information can be found here: ‘Optimistic Replication’ in XDCR

• More XDCR Statistics to monitor performance and behavior of XDCR. See Monitoring Outgoing XDCR.

• Support for hostnames when setting up Couchbase Server. See Using Hostnames with Couchbase Server.

• Rebalance progress indicator to provide more visibility into rebalance operation. See Monitoring a Rebalance.

• Ability to generate a health report with cbhealthchecker, now included as part of the Couchbase Server install. See cbhealthchecker Tool.

• Importing and exporting of CSV files with Couchbase using cbtransfer. See cbtransfer Tool.

• Server-side replica-read API. Couchbase Developer Guide, Replica Read.

サーバサイドのレプリカ読込APIが追加されました。「Couchbase Developer Guide, Replica Read」参照。

Page 37: Couchbase meetup20131212 [look back in 2013]

レプリカ読み込み8.4. Replica Read As of Couchbase Server 2.1.0, we have a binary protocol to retrieve replicated data for a given key. The command is similar to the existing binary get command, however it returns data from a vBucket that is in a replica state as opposed to an active state. In case of node failure you can have an application retry the server and wait until replicated data is available on another node. Couchbase Server takes 30 seconds to detect a node has failed, automatically failover the node, and then elevate replicated data to an active state on another node. If you do not have automatic failover enabled, it may take even longer for human intervention and manual failover. Although clients can wait and retry a read, you may have a scenario where you cannot wait 30 seconds to detect node failure, perform failover and activate replicated data. For instance if you a SLA that requires you to get data within 30 seconds of a request or less, you may need replica read functionality. In this case you can use replica read at the binary protocol level or as it is available in Couchbase SDKs. For more information about node failure and failover, see Couchbase Server Manual, Failing Over Nodes. If you create your own Couchbase client, you can also create a wrapper on this protocol to provide replica reads. The request is identical to a get request with the exception of the Opcode of 0x83:

!Couchbase Server 2.1.0では、レプリケートデータを読み出すためのバイナリプロトコルが提供されます。このコマンドは、getコマンドに類似していますが、アクティブステートではなく、レプリカステートのデータがvBucketから返却されます。ノード障害では、アプリケーションはリトライにより、レプリカデータが他のノードで利用可能になるまで待ちます。 !!Couchbase Serverは、ノードに障害が起きたことを判断するのに、30秒かかります。自動的にノードのフェイルオーバができ、そして、他ノード上にあるレプリカデータは、アクティブステートに昇格することになります。もしも、あなたが、オートフェイルオーバを有効にしていなければ、手動のフェイルオーバをすることになり、さらに長時間を要します。

Page 38: Couchbase meetup20131212 [look back in 2013]

レプリカ読み込み8.4. Replica Read As of Couchbase Server 2.1.0, we have a binary protocol to retrieve replicated data for a given key. The command is similar to the existing binary get command, however it returns data from a vBucket that is in a replica state as opposed to an active state. In case of node failure you can have an application retry the server and wait until replicated data is available on another node. Couchbase Server takes 30 seconds to detect a node has failed, automatically failover the node, and then elevate replicated data to an active state on another node. If you do not have automatic failover enabled, it may take even longer for human intervention and manual failover. Although clients can wait and retry a read, you may have a scenario where you cannot wait 30 seconds to detect node failure, perform failover and activate replicated data. For instance if you a SLA that requires you to get data within 30 seconds of a request or less, you may need replica read functionality. In this case you can use replica read at the binary protocol level or as it is available in Couchbase SDKs. For more information about node failure and failover, see Couchbase Server Manual, Failing Over Nodes. If you create your own Couchbase client, you can also create a wrapper on this protocol to provide replica reads. The request is identical to a get request with the exception of the Opcode of 0x83:

!!しかし、あなたにはシナリオがあり、30秒も待ってノード障害が判断され、フェールオーバを実行し、レプリカデータがアクティベートするまでの間、待てないかもしれない。例えば、もしもSLAが設定されており、30秒以内に、データを取得することが求められている場合、レプリカ読み込みを使用する必要があるかもしれません。このケースでは、あなたは、レプリカ読み込みをバイナリプロトコルレベルで使用することが可能であり、Couchbase SDKで使用することもできます。

Page 39: Couchbase meetup20131212 [look back in 2013]

レプリカ読み込みA.2. Release Notes for Couchbase Client Library Java 1.1.8 GA

(9 July 2013)より抜粋

Page 40: Couchbase meetup20131212 [look back in 2013]

2.1.0Additional behavior changes in 2.1.0 include:• Backup, Restore and Transfer tool to optionally transfer data or design

documents only. The default is to transfer both data and design documents. See cbbackup Tool, cbrestore Tool, cbtransfer Tool

• Improved cluster manager stability via separate process for cluster manager. See Underlying Server Processes.

• Command Line tools updated so you can manage nodes, buckets, clusters and XDCR. See couchbase-cli Tool

• Several new and updated statistics for XDCR on the admin Console and via the REST API. For more information, see Monitoring Incoming XDCR, Monitoring Outgoing XDCR, and Getting XDCR Stats via REST.

バックアップ、レストア、転送ツールは、オプションで、データ転送か、デザインドキュメントかのどちらかを選択して行うことができるようになりました。デフォルトでは、両方のデータを転送します。「cbbackup Tool」, 「cbrestore Tool」, 「cbtransfer Tool」を参照。

Page 41: Couchbase meetup20131212 [look back in 2013]

2.1.0Additional behavior changes in 2.1.0 include:• Backup, Restore and Transfer tool to optionally transfer data or design

documents only. The default is to transfer both data and design documents. See cbbackup Tool, cbrestore Tool, cbtransfer Tool

• Improved cluster manager stability via separate process for cluster manager. See Underlying Server Processes.

• Command Line tools updated so you can manage nodes, buckets, clusters and XDCR. See couchbase-cli Tool

• Several new and updated statistics for XDCR on the admin Console and via the REST API. For more information, see Monitoring Incoming XDCR, Monitoring Outgoing XDCR, and Getting XDCR Stats via REST.

改善されたクラスタマネージャは、クラスタマネジャ専用にプロセスを分離することにより、安定性が増しています。「See Underlying Server Processes」を参照。

Page 42: Couchbase meetup20131212 [look back in 2013]

2.1.0Additional behavior changes in 2.1.0 include:• Backup, Restore and Transfer tool to optionally transfer data or design

documents only. The default is to transfer both data and design documents. See cbbackup Tool, cbrestore Tool, cbtransfer Tool

• Improved cluster manager stability via separate process for cluster manager. See Underlying Server Processes.

• Command Line tools updated so you can manage nodes, buckets, clusters and XDCR. See couchbase-cli Tool

• Several new and updated statistics for XDCR on the admin Console and via the REST API. For more information, see Monitoring Incoming XDCR, Monitoring Outgoing XDCR, and Getting XDCR Stats via REST.コマンドラインツールが更新されました。このため、ノード、バケット、クラスタ、XDCRの管理ができるようになりました。「couchbase-cli Tool」参照。

Page 43: Couchbase meetup20131212 [look back in 2013]

2.1.0Additional behavior changes in 2.1.0 include:• Backup, Restore and Transfer tool to optionally transfer data or design

documents only. The default is to transfer both data and design documents. See cbbackup Tool, cbrestore Tool, cbtransfer Tool

• Improved cluster manager stability via separate process for cluster manager. See Underlying Server Processes.

• Command Line tools updated so you can manage nodes, buckets, clusters and XDCR. See couchbase-cli Tool

• Several new and updated statistics for XDCR on the admin Console and via the REST API. For more information, see Monitoring Incoming XDCR, Monitoring Outgoing XDCR, and Getting XDCR Stats via REST.

いくつかのXDCRの統計情報が追加されたことにより、(管理コンソールでも)REST APIでもこの統計情報が参照できるようになりました。「Monitoring Incoming XDCR」,「Monitoring Outgoing XDCR」, 「Getting XDCR Stats via REST」を参照。

Page 44: Couchbase meetup20131212 [look back in 2013]

2.1.0Fixes in 2.1.0• Installation and Upgrade ◦In the past Couchbase Server 2.0.0 upgrade installers on Linux did

not replace the file2.beam with the latest version. This will cause indexing and querying to fail. This has been fixed.Issues : MB-7770

◦The Windows installer for Windows 32-bit and 64-bit now prompts you to set the MaxUserPort registry setting. This will increase the number of ephemeral ports available to applications on Windows, as documented in Microsoft Knowledge Base Article 196271. The installer also warns you that a reboot is necessary for this change to take effect. If this registry key is not set, it may lead to port exhaustion leading to various problems, see as MB-8321. For installer instructions, see Microsoft Windows Installation.Issues : MB-8321

これまでは、Linux環境でのCouchbase Server 2.0.0 のアップグレードインストーラは、file2.beamファイルを差し替えることをしませんでした(with the latest version)。これは、インデキシングとクエリが失敗する原因となっていましたが、この問題を解決しました。

Page 45: Couchbase meetup20131212 [look back in 2013]

2.1.0Fixes in 2.1.0• Installation and Upgrade ◦In the past Couchbase Server 2.0.0 upgrade installers on Linux did

not replace the file2.beam with the latest version. This will cause indexing and querying to fail. This has been fixed.Issues : MB-7770

◦The Windows installer for Windows 32-bit and 64-bit now prompts you to set the MaxUserPort registry setting. This will increase the number of ephemeral ports available to applications on Windows, as documented in Microsoft Knowledge Base Article 196271. The installer also warns you that a reboot is necessary for this change to take effect. If this registry key is not set, it may lead to port exhaustion leading to various problems, see as MB-8321. For installer instructions, see Microsoft Windows Installation.Issues : MB-8321

Windowsのインストーラ(32-bit,64-bit)は、MaxUserPortレジストリの設定を促すようになりました。これはWindows上のアプリケーションが利用可能なエフェメラルポート(一時的な通信のために自由に利用できるポート)の数を増加させることができます(Microsoft Knowledge Base Article 196271)。インストーラは、この変更を有効にするためリブートが必要であると、ワーニングを出力します。もしも、このレジストリ・キーがセットされていない場合は、ポートを使い果たし、様々な問題を引き起こします(MB-8321参照)。インストーラの使用に関しては「Microsoft Windows Installation」参照。

Page 46: Couchbase meetup20131212 [look back in 2013]

2.1.0Fixes in 2.1.0 • Cluster Operations ◦Previously, there was only one process that was responsible for monitoring and

managing all the other underlying server processes. This includes Moxi and memcached, and also statistics gathering. Now there are two processes. One is responsible for just Moxi/Memcached and the other is responsible for monitoring all other processes. This should help prevent the max_restart_intensity seen when timeouts start and temporarily disrupted the server. The most noticeable change you see with this fix is that there are now two beam.smp processes running on Linux and two erl.exe running on Windows. For more details, see Underlying Server Processes.Issues : MB-8376これまでは、全てのプロセスのモニタリングと管理に責任を持つのは、唯一のプロセスでした。これ

にはMoxiや、memcachedや、統計情報の収集も含まれていました。これを2つのプロセスに分離しました。1つは、Moxi/Memcachedにのみ責任を持つようにし、もう1つは、その他のプロセスのモニタリングに責任を持つように構成しました。このことは、max_restart_intensity(最大リスタート数)に到達することを防止することに寄与します。最も大きな変更は、Linux上では2つのbeam.smpプロセスの実行と、Windows上では2つのerl.exeの実行をするようになったことです。詳細は「Underlying Server Processes」を参照。

Page 47: Couchbase meetup20131212 [look back in 2013]

2.1.0Fixes in 2.1.0 • Command-line Tools ◦For earlier versions of Couchbase Server, some internal server

directories were accessible all users, which was a security issue. This is now fixed. The fix now means that you should have root privileges when you run cbcollect_info because this tool needs this access level to collect all the information it needs to collect about the server. For more information about cbcollect_info, see cbcollect_info Tool.

◦One XDCR REST API endpoint had a typo which is now fixed. The old endpoint was /controller/cancelXCDR/:xid. The new, correct endpoint is /controller/cancelXDCR/:xid. See Deleting XDCR Replications.Issues : MB-8347

◦In the past when you used cbworkloadgen you see this error ImportError: No module named _sqlite3. This has been fixed.Issues : MB-8153

Couchbase Serverの古いバージョンのために、いくつかの内部サーバディレクトリが全てのユーザにアクセス可能でした。これはセキュリティ上の問題となっておりました。今回これを修正しました。今後は、root権限が無ければ、cbcollect_infoツールを実行できないことを意味しています(なぜならば、このツールは、サーバについての情報を収集するアクセスレベルが必要になるためです)。cbcollect_infoの詳細は、「cbcollect_info Tool」参照。

Page 48: Couchbase meetup20131212 [look back in 2013]

2.1.0Fixes in 2.1.0 • Command-line Tools ◦For earlier versions of Couchbase Server, some internal server

directories were accessible all users, which was a security issue. This is now fixed. The fix now means that you should have root privileges when you run cbcollect_info because this tool needs this access level to collect all the information it needs to collect about the server. For more information about cbcollect_info, see cbcollect_info Tool.

◦One XDCR REST API endpoint had a typo which is now fixed. The old endpoint was /controller/cancelXCDR/:xid. The new, correct endpoint is /controller/cancelXDCR/:xid. See Deleting XDCR Replications.Issues : MB-8347

◦In the past when you used cbworkloadgen you see this error ImportError: No module named _sqlite3. This has been fixed.Issues : MB-8153

一部のXDCR REST APIのエンドポイントに、ミススペルがあり、これを修正しました。古いエンドポイントは、/controller/cancelXCDR/:xidでしたが、新しくは /controller/cancelXDCR/:xid に修正されます。「Deleting XDCR Replications」参照。

Page 49: Couchbase meetup20131212 [look back in 2013]

2.1.0Fixes in 2.1.0 • Command-line Tools ◦For earlier versions of Couchbase Server, some internal server

directories were accessible all users, which was a security issue. This is now fixed. The fix now means that you should have root privileges when you run cbcollect_info because this tool needs this access level to collect all the information it needs to collect about the server. For more information about cbcollect_info, see cbcollect_info Tool.

◦One XDCR REST API endpoint had a typo which is now fixed. The old endpoint was /controller/cancelXCDR/:xid. The new, correct endpoint is /controller/cancelXDCR/:xid. See Deleting XDCR Replications.Issues : MB-8347

◦In the past when you used cbworkloadgen you see this error ImportError: No module named _sqlite3. This has been fixed.Issues : MB-8153

これまでは、cbworkloadgenを使用する時には、「ImportError: No module named _sqlite3」というエラーが出力されていましたが、これを修正しました。

Page 50: Couchbase meetup20131212 [look back in 2013]

2.1.0Fixes in 2.1.0• Indexing and Querying ◦In the past too many simultaneous views requests could overwhelm

a node. You can now limit the number of simultaneous requests a node can receive. For more information, see REST API, see Limiting Simultaneous Node Requests.Issues : MB-8199

これまでは、viewリクエストが同時に大量に発生した場合、ノード全体が圧倒されてしまう可能性がありました。今後は、ノード当たりの同時リクエスト受付数を制限することができるようになりました。「REST API」, 「Limiting Simultaneous Node Requests」を参照。

Page 51: Couchbase meetup20131212 [look back in 2013]

あれっ?

• 大事なものが、抜けてませんか?

Page 52: Couchbase meetup20131212 [look back in 2013]

metadataのサイズが、 64bytes -> 56bytesに変更されました

Page 53: Couchbase meetup20131212 [look back in 2013]

2.1.1(7月)

Page 54: Couchbase meetup20131212 [look back in 2013]

2.1.1Release Notes for Couchbase Server 2.1.1 GA (July 2013)¶ Couchbase Server 2.1.1 is first maintenance release for Couchbase Server 2.1. This release includes some major bug fixes and enhancements:New Edition in 2.1.1The Enterprise Edition of Couchbase Server is now available on Mac OS X. See Couchbase, Downloads.Fixes in 2.1.1 • Database Operations ◦There was an underlying Windows Management Instrumentation issue in

wmi_port.cpp which caused memory leaks. This has been fixed.Issues : MB-8674

◦The 2.1 version of the server exposes fewer server stats than it did in earlier versions. The five stats that have been removed are key_data_age, key_last_modification_time, paged_out _time, ep_too_young and ep_too_old.Issues : MB-8539

Couchbase Server 2.1.1 は、Couchbase Server 2.1の最初のメンテナンスリリースです。このリリースでは、いくつかの主要なバグフィックスと、機能改善が含まれます。

Page 55: Couchbase meetup20131212 [look back in 2013]

2.1.1Release Notes for Couchbase Server 2.1.1 GA (July 2013)¶ Couchbase Server 2.1.1 is first maintenance release for Couchbase Server 2.1. This release includes some major bug fixes and enhancements:New Edition in 2.1.1The Enterprise Edition of Couchbase Server is now available on Mac OS X. See Couchbase, Downloads.Fixes in 2.1.1 • Database Operations ◦There was an underlying Windows Management Instrumentation issue in

wmi_port.cpp which caused memory leaks. This has been fixed.Issues : MB-8674

◦The 2.1 version of the server exposes fewer server stats than it did in earlier versions. The five stats that have been removed are key_data_age, key_last_modification_time, paged_out _time, ep_too_young and ep_too_old.Issues : MB-8539

(2.1系列の)Enterprise EditionがMac OS Xで利用可能になりました。ダウンロードページを参照。

Page 56: Couchbase meetup20131212 [look back in 2013]

2.1.1Release Notes for Couchbase Server 2.1.1 GA (July 2013)¶ Couchbase Server 2.1.1 is first maintenance release for Couchbase Server 2.1. This release includes some major bug fixes and enhancements:New Edition in 2.1.1The Enterprise Edition of Couchbase Server is now available on Mac OS X. See Couchbase, Downloads.Fixes in 2.1.1 • Database Operations ◦There was an underlying Windows Management Instrumentation issue in

wmi_port.cpp which caused memory leaks. This has been fixed.Issues : MB-8674

◦The 2.1 version of the server exposes fewer server stats than it did in earlier versions. The five stats that have been removed are key_data_age, key_last_modification_time, paged_out _time, ep_too_young and ep_too_old.Issues : MB-8539

Windows Management Instrumentationに関して、wmi_port.cppに起因したメモリーリーク問題が発生していましたが、これを解決しました。

Page 57: Couchbase meetup20131212 [look back in 2013]

2.1.1Release Notes for Couchbase Server 2.1.1 GA (July 2013)¶ Couchbase Server 2.1.1 is first maintenance release for Couchbase Server 2.1. This release includes some major bug fixes and enhancements:New Edition in 2.1.1The Enterprise Edition of Couchbase Server is now available on Mac OS X. See Couchbase, Downloads.Fixes in 2.1.1 • Database Operations ◦There was an underlying Windows Management Instrumentation issue in

wmi_port.cpp which caused memory leaks. This has been fixed.Issues : MB-8674

◦The 2.1 version of the server exposes fewer server stats than it did in earlier versions. The five stats that have been removed are key_data_age, key_last_modification_time, paged_out _time, ep_too_young and ep_too_old.Issues : MB-8539

2.1バージョンは、それ以前のバージョンよりも、サーバステータスが削減されました。削除された5つのステータスは、key_data_age, key_last_modification_time, paged_out _time, ep_too_young and ep_too_oldです。

Page 58: Couchbase meetup20131212 [look back in 2013]

2.1.1Fixes in 2.1.1• Cluster Operations ◦The rebalance speed for small datasets has been significantly

improved. This includes time to rebalance empty buckets and buckets containing tens of thousands of items.Issues : MB-8521

◦In Couchbase 2.1.0 if you tried to assign a hostname to a node when you join the node to a cluster, it will be reset. The hostname will not be saved for the node and will not be used by the cluster to identify the node. This has been fixed. For more information about managing hostnames, see Using Hostnames with Couchbase Server.Issues : MB-8545

!

少ないデータセットにおけるリバランスのスピードが著しく改善しました。これには、空のバケットや、数万個程度のitemしか含まないバケットのリバランスが含まれます。

Page 59: Couchbase meetup20131212 [look back in 2013]

2.1.1Fixes in 2.1.1• Cluster Operations ◦The rebalance speed for small datasets has been significantly

improved. This includes time to rebalance empty buckets and buckets containing tens of thousands of items.Issues : MB-8521

◦In Couchbase 2.1.0 if you tried to assign a hostname to a node when you join the node to a cluster, it will be reset. The hostname will not be saved for the node and will not be used by the cluster to identify the node. This has been fixed. For more information about managing hostnames, see Using Hostnames with Couchbase Server.Issues : MB-8545

!

Couchbase 2.1.0 では、クラスタにノードを追加する際、hostnameをノードに対してアサインすることを試みた場合、リセットされてしまいました。hostnameは、ノードに保存されず、ノードを識別するために、クラスタにより利用されることもありませんでした。この問題を解決しました。「 Using Hostnames with Couchbase Server」参照。

Page 60: Couchbase meetup20131212 [look back in 2013]

2.2.0(9月)

Page 61: Couchbase meetup20131212 [look back in 2013]

2.2.0Release Notes for Couchbase Server 2.2 GA (September 2013)¶ Couchbase Server 2.2 is our minor update release for Couchbase Server 2.0. This includes some major enhancements, new features and important bug fixes. Also with this we have extended our platform support for Windows 2012 and provide separate packages for Ubuntu 12.04 and CentOS 6.

Couchbase Server 2.2 は、Couchbase Server 2.0のマイナーバージョンアップです。これは、いくつかの主要な改良、新機能、及びバグフィックスが含まれます。また、2.2より、プラットフォームサポートにWindows 2012を加え、Ubuntu 12.04とCentOS 6向けに専用のパッケージを用意しました。

Page 62: Couchbase meetup20131212 [look back in 2013]

2.2.0The major enhancements available in Couchbase Server 2.2 include:• XDCR performance optimization through new mode of replication

which utilizes highly efficient memcached protocol on the destination cluster for replicating changes. See Behavior and Limitations.

• Disk storage optimization through new metadata purge settings for permanently purge metadata on deleted items. See Disk Storage.

• New read-only admin user to Couchbase Server. This user will have access to Couchbase Server and its Admin UI, tools and REST APIs but only in read-only mode. See Account Management.

• New addition to our toolset CBRecovery tool that provides additional durability from remote cluster. See CLI Tools.

XDCRのパフォーマンスが最適化されました。新しく設定されたレプリケーションモードにより、レプリケーション先のクラスタへのレプリケーションの変更のために、非常に効率の良いmemcachedプロトコルを使用できるようになりました。

Page 63: Couchbase meetup20131212 [look back in 2013]

XDCRが、memcachedプロトコルとなった影響

• ErasticSearchプラグインが動かなくなりました!

• XDCRのプロトコル指定をいじってもダメ

• Couchbase社に問い合わせたところ、

• 新しいプラグイン(1.2.0)が提供されました

Page 64: Couchbase meetup20131212 [look back in 2013]

Couchbase Plug-in for Elasticsearch 1.2.0

Release Notes for Couchbase Plug-in for Elasticsearch 1.2.0 GA (October 2013)¶ !

This release adds compatibility with Elasticsearch 0.90.5.This release is compatible with Couchbase Server 2.2, and it is backward compatible with earlier 2.x releases.!

Page 65: Couchbase meetup20131212 [look back in 2013]

2.2.0The major enhancements available in Couchbase Server 2.2 include:• XDCR performance optimization through new mode of replication

which utilizes highly efficient memcached protocol on the destination cluster for replicating changes. See Behavior and Limitations.

• Disk storage optimization through new metadata purge settings for permanently purge metadata on deleted items. See Disk Storage.

• New read-only admin user to Couchbase Server. This user will have access to Couchbase Server and its Admin UI, tools and REST APIs but only in read-only mode. See Account Management.

• New addition to our toolset CBRecovery tool that provides additional durability from remote cluster. See CLI Tools.

ディスクストレージが最適化されました。新しいメタデータ除去設定により、削除されたアイテムについて、恒久的にメタデータを除去することが可能になりました。

Page 66: Couchbase meetup20131212 [look back in 2013]

メタデータの除去設定

Page 67: Couchbase meetup20131212 [look back in 2013]

2.2.0The major enhancements available in Couchbase Server 2.2 include:• XDCR performance optimization through new mode of replication

which utilizes highly efficient memcached protocol on the destination cluster for replicating changes. See Behavior and Limitations.

• Disk storage optimization through new metadata purge settings for permanently purge metadata on deleted items. See Disk Storage.

• New read-only admin user to Couchbase Server. This user will have access to Couchbase Server and its Admin UI, tools and REST APIs but only in read-only mode. See Account Management.

• New addition to our toolset CBRecovery tool that provides additional durability from remote cluster. See CLI Tools.

新しい、閲覧専用のアドミニストレータ・ユーザ・アカウントをCouchbase Serverに設定できるようになりました。このユーザは、Couchbase Serverにアクセスし、管理用UI、ツール、そしてREST APIを使用することができますが、すべてリードオンリモードとなります。

Page 68: Couchbase meetup20131212 [look back in 2013]

2.2.0The major enhancements available in Couchbase Server 2.2 include:• XDCR performance optimization through new mode of replication

which utilizes highly efficient memcached protocol on the destination cluster for replicating changes. See Behavior and Limitations.

• Disk storage optimization through new metadata purge settings for permanently purge metadata on deleted items. See Disk Storage.

• New read-only admin user to Couchbase Server. This user will have access to Couchbase Server and its Admin UI, tools and REST APIs but only in read-only mode. See Account Management.

• New addition to our toolset CBRecovery tool that provides additional durability from remote cluster. See CLI Tools.

これまでのコマンドツールに、新たにCBRecoveryツールが加わりました。これは、リモートクラスタに更なる耐久性を提供します。

Page 69: Couchbase meetup20131212 [look back in 2013]

2.2.0Additional enhancements in 2.2 include: • Instructions for non-root, non-sudo installation and running of Couchbase

Server and its tools. See Installing Couchbase Server. • CRAM-MD5 support for SASL authentication on Couchbase Server. See

Providing SASL Authentication. See Couchbase Developer Guide 2.2, Providing SASL Authentication

• Ability to reset password for Administrator using the CLI command. See cbreset_password Tool.

Fixes in 2.2 • Command-line Tools ◦In past versions of Couchbase Server, cbbackup would continue past

100% progress. This is due to a a bug in the cbbackup progress indicator and tool behavior. In the past, cbtransfer only accounted for items in RAM in the backup estimate, but would also backup deleted items as well as items read from disk into memory. This resulted in greater than 100% progress being displayed. These issues have been fixed.Issues : MB-8692

ルート権限やsudoを必要としないインストール&サーバ起動、そしてコマンドラインツールが提供されます。

Page 70: Couchbase meetup20131212 [look back in 2013]

2.2.0Additional enhancements in 2.2 include: • Instructions for non-root, non-sudo installation and running of Couchbase

Server and its tools. See Installing Couchbase Server. • CRAM-MD5 support for SASL authentication on Couchbase Server. See

Providing SASL Authentication. See Couchbase Developer Guide 2.2, Providing SASL Authentication

• Ability to reset password for Administrator using the CLI command. See cbreset_password Tool.

Fixes in 2.2 • Command-line Tools ◦In past versions of Couchbase Server, cbbackup would continue past

100% progress. This is due to a a bug in the cbbackup progress indicator and tool behavior. In the past, cbtransfer only accounted for items in RAM in the backup estimate, but would also backup deleted items as well as items read from disk into memory. This resulted in greater than 100% progress being displayed. These issues have been fixed.Issues : MB-8692

SASL認証向けに、CRAM-MD5認証方式をサポートするようになりました。

Page 71: Couchbase meetup20131212 [look back in 2013]

2.2.0Additional enhancements in 2.2 include: • Instructions for non-root, non-sudo installation and running of Couchbase

Server and its tools. See Installing Couchbase Server. • CRAM-MD5 support for SASL authentication on Couchbase Server. See

Providing SASL Authentication. See Couchbase Developer Guide 2.2, Providing SASL Authentication

• Ability to reset password for Administrator using the CLI command. See cbreset_password Tool.

Fixes in 2.2 • Command-line Tools ◦In past versions of Couchbase Server, cbbackup would continue past

100% progress. This is due to a a bug in the cbbackup progress indicator and tool behavior. In the past, cbtransfer only accounted for items in RAM in the backup estimate, but would also backup deleted items as well as items read from disk into memory. This resulted in greater than 100% progress being displayed. These issues have been fixed.Issues : MB-8692

コマンドラインにより、アドミニストレータのパスワードをリセットすることができるようになりました。

Page 72: Couchbase meetup20131212 [look back in 2013]

2.2.0Additional enhancements in 2.2 include: • Instructions for non-root, non-sudo installation and running of Couchbase

Server and its tools. See Installing Couchbase Server. • CRAM-MD5 support for SASL authentication on Couchbase Server. See

Providing SASL Authentication. See Couchbase Developer Guide 2.2, Providing SASL Authentication

• Ability to reset password for Administrator using the CLI command. See cbreset_password Tool.

Fixes in 2.2 • Command-line Tools ◦In past versions of Couchbase Server, cbbackup would continue past

100% progress. This is due to a a bug in the cbbackup progress indicator and tool behavior. In the past, cbtransfer only accounted for items in RAM in the backup estimate, but would also backup deleted items as well as items read from disk into memory. This resulted in greater than 100% progress being displayed. These issues have been fixed.Issues : MB-8692

これまでは、cbbackupは、100%を超えて継続されてきました。これは、cbbackupプログレス表示機能とツールの挙動に関するバグでした。また、これまではcbtransferは、バックアップ評価中、RAM内のアイテムのみをカウントしていました。しかしディスクから読み込まれてメモリ上にあるアイテムだけでなく、そこから削除されたアイテムもバックアップする必要があります。このため100%以上の進捗率が表示されていました。今回このバクがフィックスされました。

Page 73: Couchbase meetup20131212 [look back in 2013]

2.2.0Fixes in 2.2 • Indexing and Querying ◦In the past you had to delete an XDCR replication and recreate it if you

wanted to change any XDCR internal settings. This includes: xdcr_optimistic_replication_threshold, xdcr_worker_batch_size, xdcr_connection_timeout, xdcr_num_worker_process, xdcr_num_http_connections, and xdcr_num_retries_per_request. You can now change these settings and they will immediately apply to the existing XDCR replication. For more information, see Changing Internal XDCR Settings.Issues : MB-8422

• Cross Datacenter Replication (XDCR) ◦If you used a custom data path then performed a server uninstall and

upgraded, older XDCR replication files were left intact. This resulted in Couchbase Server crashes and incorrect information in Web Console. This has been fixed.Issues : MB-8460

これまでは、もしもあなたが、XDCRの内部設定を変更した場合には、いったんXDCR設定を削除し、改めて再作成するしかありませんでした。このような設定には以下が含まれます(xdcr_optimistic_replication_threshold, xdcr_worker_batch_size, xdcr_connection_timeout, xdcr_num_worker_process, xdcr_num_http_connections, xdcr_num_retries_per_request.)。今回から、これらの設定を既に存在するXDCRについて即座に変更することができるようになりました。

Page 74: Couchbase meetup20131212 [look back in 2013]

2.2.0Fixes in 2.2 • Indexing and Querying ◦In the past you had to delete an XDCR replication and recreate it if you

wanted to change any XDCR internal settings. This includes: xdcr_optimistic_replication_threshold, xdcr_worker_batch_size, xdcr_connection_timeout, xdcr_num_worker_process, xdcr_num_http_connections, and xdcr_num_retries_per_request. You can now change these settings and they will immediately apply to the existing XDCR replication. For more information, see Changing Internal XDCR Settings.Issues : MB-8422

• Cross Datacenter Replication (XDCR) ◦If you used a custom data path then performed a server uninstall and

upgraded, older XDCR replication files were left intact. This resulted in Couchbase Server crashes and incorrect information in Web Console. This has been fixed.Issues : MB-8460

もしもあなたが、カスタムデータパスを使用して、サーバのアンインストールやアップグレードを実行した場合、古いXDCRレプリケーションファイルは、削除されずに残されていました。これは、Couchbase Serverのクラッシュと、Webコンソールに誤った情報を表示する結果になります。今回この問題をフィックスしました。

Page 75: Couchbase meetup20131212 [look back in 2013]

2.2.0 ◦Non-UTF-8 encoded keys will not be replicated to destination clusters via

XDCR by design. See Behavior and Limitations.Issues : MB-8427

• Performance ◦Users experienced higher latency rates when they performed observe for

replicated data. We have now fixed the issue.Latency is now at least 5 times faster for this use case for Couchbase Server 2.2.Issues : MB-8453

◦Users may experience segmentation faults if a cluster is under heavy stress. For example if your cluster has a very high disk write queue such as 2 million items per node, several XDCR replications, plus thousands of writes per second, the disks will drain slower.With a similar workload and limited hardware, synchronization delays in I/O may occur resulting in a segmentation fault. This may result in data-loss. We therefore recommend you have adequate cluster capacity and monitor operations per second on your cluster.Issues : MB-9098

Fixes in 2.2

XDCRでは、設計上、非UTF-8エンコードキーは、レプリケーション先のクラスタにレプリケートされません。

Page 76: Couchbase meetup20131212 [look back in 2013]

2.2.0 ◦Non-UTF-8 encoded keys will not be replicated to destination clusters via

XDCR by design. See Behavior and Limitations.Issues : MB-8427

• Performance ◦Users experienced higher latency rates when they performed observe for

replicated data. We have now fixed the issue.Latency is now at least 5 times faster for this use case for Couchbase Server 2.2.Issues : MB-8453

◦Users may experience segmentation faults if a cluster is under heavy stress. For example if your cluster has a very high disk write queue such as 2 million items per node, several XDCR replications, plus thousands of writes per second, the disks will drain slower.With a similar workload and limited hardware, synchronization delays in I/O may occur resulting in a segmentation fault. This may result in data-loss. We therefore recommend you have adequate cluster capacity and monitor operations per second on your cluster.Issues : MB-9098

Fixes in 2.2

ユーザは、レプリカデータについて、高いレィテンシレートを経験してきました。今回この問題を解決しました。今回のフィックスにより、(レプリケーションが)少なくとも5倍以上高速になりました。

Page 77: Couchbase meetup20131212 [look back in 2013]

2.2.0 ◦Non-UTF-8 encoded keys will not be replicated to destination clusters via

XDCR by design. See Behavior and Limitations.Issues : MB-8427

• Performance ◦Users experienced higher latency rates when they performed observe for

replicated data. We have now fixed the issue.Latency is now at least 5 times faster for this use case for Couchbase Server 2.2.Issues : MB-8453

◦Users may experience segmentation faults if a cluster is under heavy stress. For example if your cluster has a very high disk write queue such as 2 million items per node, several XDCR replications, plus thousands of writes per second, the disks will drain slower.With a similar workload and limited hardware, synchronization delays in I/O may occur resulting in a segmentation fault. This may result in data-loss. We therefore recommend you have adequate cluster capacity and monitor operations per second on your cluster.Issues : MB-9098

Fixes in 2.2

ユーザは、クラスタが非常に重い荷重がかかった場合に、セグメンテーションフォールトを経験してきました。例えば、クラスタが非常に大量のディスク書込みキュー(例えば1ノードあたり200万アイテム程度)を抱え、いくつかのXDCRレプリケーションが設定されており、1秒間あたり、1000回の書込みが加えられた場合、ディスクは、徐々に遅くなります。同様のワークロードと制限されたハードウェアで、同期処理の遅延し、I/Oはセグメンテーションフォールトを発生させる結果となるでしょう。これは、データロスが起きてしまいます。我々はこのため、適切なクラスタ容量の確保と、クラスタの1秒あたりのオペレーション数をモニタリングすることを推奨しています。

Page 78: Couchbase meetup20131212 [look back in 2013]

9月には 他にもいろいろありました

Page 79: Couchbase meetup20131212 [look back in 2013]

9月には 他にもいろいろありました

Couchbase Query Language, known as N1QL or ‘Nickel’, helps you to find and change data in Couchbase Server. We designed the language to be human -readable and -writable; it is an extensible language designed for ad-hoc querying. The query language is a standard semantic you use to build querying ability in other programming languages.

N1QL

Page 80: Couchbase meetup20131212 [look back in 2013]

まとめVersion 時期 内容

2.0.1 2013.03ハイウォータマーク・ローウォータマーク

が変更

2.1.0 2013.06 ディスクまわりがマルチスレッド化

2.1.1 2013.07 item数が少数時のリバランス速度が改善

2.2.0 2013.09 XDCRのパフォーマンスが向上

Page 81: Couchbase meetup20131212 [look back in 2013]

ありがとうございました

そして、Couch [Tokyo] へ!2014.1.21