SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
https://docs.microsoft.com/en-us/sql/relational-databases/search/full-text-search
bleve
Text Indexing Text Analysis Query
https://issues.couchbase.com/browse/MB-21018
REST API endpoint list
Viewing Cluster Details
Buckets API
Type Field name Remark
CPU cpu_utilization
SWAP swap_used
Free memory mem_free
Total memory mem_total
Type Field name Remark
disk consumed couch_docs_actual_disk_size the physical memory used in
the node
background fetches ep_bg_fetched data not in the cache and
pulled from disk
Type Field name Remark
Operations Per Second ops This is a fundamental measure of
the total number of gets, sets,
increment, and decrements that
occur for a given bucket.
Cache Miss ep_cache_miss_rate The metric counts the ratio of
requested objects found in the
cache in relation to what is needed
to be fetched from disk;
as close to 0 as possible
Fragmentation couch_docs_fragmentation measure should auto-compaction
be set on a scheduled basis
Type Field name Remark
Working Set ep_bg_fetched /
vb_active_resident_items_ratio
The resident items ratio and
memory headroom metrics to
understand if your bucket has
enough capacity to store the most
requested objects in memory
Disk Drain ep_queue_size to monitor regardless of what
you’re application is doing is the
drain rate.
From a REST standpoint we can
monitor both the queue fill
(ep_diskqueue_fill) and how quickly
the queue is draining
(ep_diskqueue_drain) to track the
trend over time.
cbstats
Monitor Using the cbstats Utility
Indexes for N1QL
Query Execution with
Global Indexes
EXPLAIN
provides information
about the execution plan
for the statement.
API Query Use index
/notebooks findByOwnerOrHaveReadPermission
select count(*) from `dbee` where javaClass =
"com.delta.ssir.dbee.repository.entity.Notebook"
AND LOWER(owner) = "amber.lee"
OR (javaClass = "com.delta.ssir.dbee.repository.entity.Notebook" AND
owner != "amber.lee" AND
ANY per IN permissions SATISFIES per = {"id":"amber.lee", "permission":1,
"role": "1"} END)
CREATE INDEX notebook_owner_permissions
ON `dbee` (owner, ALL permissions)
WHERE javaClass =
"com.delta.ssir.dbee.repository.entity.Notebook"
countBySharedNote
select count(*) from `dbee` where javaClass =
"com.delta.ssir.dbee.repository.entity.Note"
AND shareNote == true
AND owner != "amber.lee"
AND ANY per IN permissions SATISFIES per = {"id":"amber.lee",
"permission":1, "role": "1"} END
CREATE INDEX
note_shareNote_owner_permissions
ON `dbee` (shareNote, owner, ALL permissions)
WHERE javaClass =
"com.delta.ssir.dbee.repository.entity.Note"
0
50
100
150
200
250
300
metric1 metric2 metric3
ElapsedTime(ms)
Metrics -findByOwnerOrHaveReadPermission
N1QL execution time
N1QL
Use Index
0
200
400
600
800
1000
1200
1400
metric1 metric2 metric3
ElapsedTime(ms)
Metrics - countBySharedNote
N1QL execution time
N1QL
Use Index
API Query Use index
/users/info findByName
select * from `dbee` where javaClass =
"com.delta.ssir.dbee.repository.entity.User"
AND name = “rich.lee”
CREATE INDEX user_name
ON `dbee` (name)
WHERE javaClass =
"com.delta.ssir.dbee.repository.entity.User"
countByOwnerAndIsDeletedFalse CREATE INDEX
note_owner_notebookId_isDeleted
ON `dbee` (owner, notebookId, isDeleted)
WHERE javaClass =
"com.delta.ssir.dbee.repository.entity.Note"
countByOwnerIgnoreCase (Notebook) Use notebook_owner_permissions
countByAllNoteSharedWithMe
SELECT COUNT(*) FROM #{#n1ql.bucket} WHERE #{#n1ql.filter} AND
owner != $1
AND ANY per IN permissions SATISFIES per = per = {"id":$1, "permission":$2,
"role": $3} END
Use note_shareNote_owner_permissions
API Query Use index
/markers findByMarkerTypeOrderBySeqAndParentIds
select count(*) from `dbee` where javaClass =
"com.delta.ssir.dbee.repository.entity.Marker”
AND markerType = $1 ORDER BY ARRAY_LENGTH(parentIds), seq
CREATE INDEX marker_markerType_owner
ON `dbee` (markerType, owner)
WHERE javaClass =
"com.delta.ssir.dbee.repository.entity.Marker"
findByOwnerAndMarkerTypeOrderBySeqAndParentIds
select count(*) from `dbee` where javaClass =
"com.delta.ssir.dbee.repository.entity.Marker”
AND owner = $1
AND markerType = $2
ORDER BY ARRAY_LENGTH(parentIds), seq
Use marker_markerType_owner
API Query Use index
/topics findByOwnerIgnoreCase CREATE INDEX topic_owner
ON `dbee` (owner)
WHERE javaClass =
"com.delta.ssir.dbee.repository.entity.Topic"
Array Indexing
Making the most of your Arrays… with N1QL Array Indexing
Indexing JSON in Couchbase
Indexing Best Practices

Weitere ähnliche Inhalte

Was ist angesagt?

Codeigniter : Using Third Party Components - Zend Framework Components
Codeigniter : Using Third Party Components - Zend Framework ComponentsCodeigniter : Using Third Party Components - Zend Framework Components
Codeigniter : Using Third Party Components - Zend Framework ComponentsAbdul Malik Ikhsan
 
Check username availability with vue.js and PHP
Check username availability with vue.js and PHPCheck username availability with vue.js and PHP
Check username availability with vue.js and PHPYogesh singh
 
Connecting Content Silos: One CMS, Many Sites With The WordPress REST API
 Connecting Content Silos: One CMS, Many Sites With The WordPress REST API Connecting Content Silos: One CMS, Many Sites With The WordPress REST API
Connecting Content Silos: One CMS, Many Sites With The WordPress REST APICaldera Labs
 
Windows power shell and active directory
Windows power shell and active directoryWindows power shell and active directory
Windows power shell and active directoryDan Morrill
 
EPiServer report generation
EPiServer report generationEPiServer report generation
EPiServer report generationPaul Graham
 
An introduction to Laravel Passport
An introduction to Laravel PassportAn introduction to Laravel Passport
An introduction to Laravel PassportMichael Peacock
 
Ruby on Rails For .Net Programmers
Ruby on Rails For .Net ProgrammersRuby on Rails For .Net Programmers
Ruby on Rails For .Net Programmersdaveverwer
 
Zipkin Components #zipkin_jp
Zipkin Components #zipkin_jpZipkin Components #zipkin_jp
Zipkin Components #zipkin_jpToshiaki Maki
 
Using the new WordPress REST API
Using the new WordPress REST APIUsing the new WordPress REST API
Using the new WordPress REST APICaldera Labs
 
Using web2py's DAL in other projects or frameworks
Using web2py's DAL in other projects or frameworksUsing web2py's DAL in other projects or frameworks
Using web2py's DAL in other projects or frameworksBruno Rocha
 
Dance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech TalkDance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech TalkMichael Peacock
 

Was ist angesagt? (20)

Codeigniter : Using Third Party Components - Zend Framework Components
Codeigniter : Using Third Party Components - Zend Framework ComponentsCodeigniter : Using Third Party Components - Zend Framework Components
Codeigniter : Using Third Party Components - Zend Framework Components
 
Phinx talk
Phinx talkPhinx talk
Phinx talk
 
Check username availability with vue.js and PHP
Check username availability with vue.js and PHPCheck username availability with vue.js and PHP
Check username availability with vue.js and PHP
 
Intro to-ant
Intro to-antIntro to-ant
Intro to-ant
 
Connecting Content Silos: One CMS, Many Sites With The WordPress REST API
 Connecting Content Silos: One CMS, Many Sites With The WordPress REST API Connecting Content Silos: One CMS, Many Sites With The WordPress REST API
Connecting Content Silos: One CMS, Many Sites With The WordPress REST API
 
REST API with CakePHP
REST API with CakePHPREST API with CakePHP
REST API with CakePHP
 
My shell
My shellMy shell
My shell
 
Mysql & Php
Mysql & PhpMysql & Php
Mysql & Php
 
19. CodeIgniter imagini in mysql
19. CodeIgniter imagini in mysql19. CodeIgniter imagini in mysql
19. CodeIgniter imagini in mysql
 
Windows power shell and active directory
Windows power shell and active directoryWindows power shell and active directory
Windows power shell and active directory
 
EPiServer report generation
EPiServer report generationEPiServer report generation
EPiServer report generation
 
An introduction to Laravel Passport
An introduction to Laravel PassportAn introduction to Laravel Passport
An introduction to Laravel Passport
 
Ruby on Rails For .Net Programmers
Ruby on Rails For .Net ProgrammersRuby on Rails For .Net Programmers
Ruby on Rails For .Net Programmers
 
Zipkin Components #zipkin_jp
Zipkin Components #zipkin_jpZipkin Components #zipkin_jp
Zipkin Components #zipkin_jp
 
Diving into php
Diving into phpDiving into php
Diving into php
 
Web2py
Web2pyWeb2py
Web2py
 
Using the new WordPress REST API
Using the new WordPress REST APIUsing the new WordPress REST API
Using the new WordPress REST API
 
Using web2py's DAL in other projects or frameworks
Using web2py's DAL in other projects or frameworksUsing web2py's DAL in other projects or frameworks
Using web2py's DAL in other projects or frameworks
 
Pagination in PHP
Pagination in PHPPagination in PHP
Pagination in PHP
 
Dance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech TalkDance for the puppet master: G6 Tech Talk
Dance for the puppet master: G6 Tech Talk
 

Ähnlich wie Couchbase & FTS

Entity Query API
Entity Query APIEntity Query API
Entity Query APImarcingy
 
Ruby on Rails Developer - Allerin
Ruby on Rails Developer - AllerinRuby on Rails Developer - Allerin
Ruby on Rails Developer - AllerinLauree R
 
[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화NAVER D2
 
Tuning and optimizing webcenter spaces application white paper
Tuning and optimizing webcenter spaces application white paperTuning and optimizing webcenter spaces application white paper
Tuning and optimizing webcenter spaces application white paperVinay Kumar
 
[2 d1] elasticsearch 성능 최적화
[2 d1] elasticsearch 성능 최적화[2 d1] elasticsearch 성능 최적화
[2 d1] elasticsearch 성능 최적화Henry Jeong
 
Zend framework 03 - singleton factory data mapper caching logging
Zend framework 03 - singleton factory data mapper caching loggingZend framework 03 - singleton factory data mapper caching logging
Zend framework 03 - singleton factory data mapper caching loggingTricode (part of Dept)
 
How to disassemble one monster app into an ecosystem of 30
How to disassemble one monster app into an ecosystem of 30How to disassemble one monster app into an ecosystem of 30
How to disassemble one monster app into an ecosystem of 30fiyuer
 
DevOps Enabling Your Team
DevOps Enabling Your TeamDevOps Enabling Your Team
DevOps Enabling Your TeamGR8Conf
 
GHC Participant Training
GHC Participant TrainingGHC Participant Training
GHC Participant TrainingAidIQ
 
Future of Web Apps: Google Gears
Future of Web Apps: Google GearsFuture of Web Apps: Google Gears
Future of Web Apps: Google Gearsdion
 
Fargate 를 이용한 ECS with VPC 1부
Fargate 를 이용한 ECS with VPC 1부Fargate 를 이용한 ECS with VPC 1부
Fargate 를 이용한 ECS with VPC 1부Hyun-Mook Choi
 
PostgreSQL Materialized Views with Active Record
PostgreSQL Materialized Views with Active RecordPostgreSQL Materialized Views with Active Record
PostgreSQL Materialized Views with Active RecordDavid Roberts
 
Rails 3: Dashing to the Finish
Rails 3: Dashing to the FinishRails 3: Dashing to the Finish
Rails 3: Dashing to the FinishYehuda Katz
 
Rails 3 overview
Rails 3 overviewRails 3 overview
Rails 3 overviewYehuda Katz
 
Building web framework with Rack
Building web framework with RackBuilding web framework with Rack
Building web framework with Racksickill
 
Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...
Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...
Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...DicodingEvent
 
Accelerated data access
Accelerated data accessAccelerated data access
Accelerated data accessgordonyorke
 
Ejb3 Struts Tutorial En
Ejb3 Struts Tutorial EnEjb3 Struts Tutorial En
Ejb3 Struts Tutorial EnAnkur Dongre
 

Ähnlich wie Couchbase & FTS (20)

Entity Query API
Entity Query APIEntity Query API
Entity Query API
 
Ruby on Rails Developer - Allerin
Ruby on Rails Developer - AllerinRuby on Rails Developer - Allerin
Ruby on Rails Developer - Allerin
 
[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화[2D1]Elasticsearch 성능 최적화
[2D1]Elasticsearch 성능 최적화
 
Tuning and optimizing webcenter spaces application white paper
Tuning and optimizing webcenter spaces application white paperTuning and optimizing webcenter spaces application white paper
Tuning and optimizing webcenter spaces application white paper
 
[2 d1] elasticsearch 성능 최적화
[2 d1] elasticsearch 성능 최적화[2 d1] elasticsearch 성능 최적화
[2 d1] elasticsearch 성능 최적화
 
Zend framework 03 - singleton factory data mapper caching logging
Zend framework 03 - singleton factory data mapper caching loggingZend framework 03 - singleton factory data mapper caching logging
Zend framework 03 - singleton factory data mapper caching logging
 
How to disassemble one monster app into an ecosystem of 30
How to disassemble one monster app into an ecosystem of 30How to disassemble one monster app into an ecosystem of 30
How to disassemble one monster app into an ecosystem of 30
 
DevOps Enabling Your Team
DevOps Enabling Your TeamDevOps Enabling Your Team
DevOps Enabling Your Team
 
GHC Participant Training
GHC Participant TrainingGHC Participant Training
GHC Participant Training
 
8 tune tusc
8 tune tusc8 tune tusc
8 tune tusc
 
Future of Web Apps: Google Gears
Future of Web Apps: Google GearsFuture of Web Apps: Google Gears
Future of Web Apps: Google Gears
 
Fargate 를 이용한 ECS with VPC 1부
Fargate 를 이용한 ECS with VPC 1부Fargate 를 이용한 ECS with VPC 1부
Fargate 를 이용한 ECS with VPC 1부
 
PostgreSQL Materialized Views with Active Record
PostgreSQL Materialized Views with Active RecordPostgreSQL Materialized Views with Active Record
PostgreSQL Materialized Views with Active Record
 
Rails 3: Dashing to the Finish
Rails 3: Dashing to the FinishRails 3: Dashing to the Finish
Rails 3: Dashing to the Finish
 
Rails 3 overview
Rails 3 overviewRails 3 overview
Rails 3 overview
 
A Practical Multi-Tenant Cluster
A Practical Multi-Tenant ClusterA Practical Multi-Tenant Cluster
A Practical Multi-Tenant Cluster
 
Building web framework with Rack
Building web framework with RackBuilding web framework with Rack
Building web framework with Rack
 
Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...
Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...
Dicoding Developer Coaching #19: Android | Menyimpan Database Secara Local di...
 
Accelerated data access
Accelerated data accessAccelerated data access
Accelerated data access
 
Ejb3 Struts Tutorial En
Ejb3 Struts Tutorial EnEjb3 Struts Tutorial En
Ejb3 Struts Tutorial En
 

Mehr von Rich Lee

COSCUP 2023 Building Portable and Reliable Applications on Google Cloud
COSCUP 2023 Building Portable and Reliable Applications on Google CloudCOSCUP 2023 Building Portable and Reliable Applications on Google Cloud
COSCUP 2023 Building Portable and Reliable Applications on Google CloudRich Lee
 
2021 JCConf 使用Dapr簡化Java微服務應用開發
2021 JCConf 使用Dapr簡化Java微服務應用開發2021 JCConf 使用Dapr簡化Java微服務應用開發
2021 JCConf 使用Dapr簡化Java微服務應用開發Rich Lee
 
GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...
GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...
GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...Rich Lee
 
JCConf.tw 2020 - Building cloud-native applications with Quarkus
JCConf.tw 2020 - Building cloud-native applications with QuarkusJCConf.tw 2020 - Building cloud-native applications with Quarkus
JCConf.tw 2020 - Building cloud-native applications with QuarkusRich Lee
 
Redis Cache design
Redis Cache designRedis Cache design
Redis Cache designRich Lee
 
Centralized log-management-with-elastic-stack
Centralized log-management-with-elastic-stackCentralized log-management-with-elastic-stack
Centralized log-management-with-elastic-stackRich Lee
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice ArchitectureRich Lee
 
Apache Spark Introduction
Apache Spark IntroductionApache Spark Introduction
Apache Spark IntroductionRich Lee
 
AWS IoT in action
AWS IoT in actionAWS IoT in action
AWS IoT in actionRich Lee
 
Realtime web development
Realtime web developmentRealtime web development
Realtime web developmentRich Lee
 
Event sourcing
Event sourcingEvent sourcing
Event sourcingRich Lee
 

Mehr von Rich Lee (11)

COSCUP 2023 Building Portable and Reliable Applications on Google Cloud
COSCUP 2023 Building Portable and Reliable Applications on Google CloudCOSCUP 2023 Building Portable and Reliable Applications on Google Cloud
COSCUP 2023 Building Portable and Reliable Applications on Google Cloud
 
2021 JCConf 使用Dapr簡化Java微服務應用開發
2021 JCConf 使用Dapr簡化Java微服務應用開發2021 JCConf 使用Dapr簡化Java微服務應用開發
2021 JCConf 使用Dapr簡化Java微服務應用開發
 
GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...
GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...
GDG Taipei 2020 - Cloud and On-premises Applications Integration Using Event-...
 
JCConf.tw 2020 - Building cloud-native applications with Quarkus
JCConf.tw 2020 - Building cloud-native applications with QuarkusJCConf.tw 2020 - Building cloud-native applications with Quarkus
JCConf.tw 2020 - Building cloud-native applications with Quarkus
 
Redis Cache design
Redis Cache designRedis Cache design
Redis Cache design
 
Centralized log-management-with-elastic-stack
Centralized log-management-with-elastic-stackCentralized log-management-with-elastic-stack
Centralized log-management-with-elastic-stack
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Apache Spark Introduction
Apache Spark IntroductionApache Spark Introduction
Apache Spark Introduction
 
AWS IoT in action
AWS IoT in actionAWS IoT in action
AWS IoT in action
 
Realtime web development
Realtime web developmentRealtime web development
Realtime web development
 
Event sourcing
Event sourcingEvent sourcing
Event sourcing
 

Kürzlich hochgeladen

Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 

Kürzlich hochgeladen (20)

Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 

Couchbase & FTS

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 12.
  • 13.
  • 14. bleve
  • 15. Text Indexing Text Analysis Query
  • 16.
  • 18.
  • 19.
  • 20.
  • 21. REST API endpoint list Viewing Cluster Details Buckets API
  • 22. Type Field name Remark CPU cpu_utilization SWAP swap_used Free memory mem_free Total memory mem_total
  • 23. Type Field name Remark disk consumed couch_docs_actual_disk_size the physical memory used in the node background fetches ep_bg_fetched data not in the cache and pulled from disk
  • 24. Type Field name Remark Operations Per Second ops This is a fundamental measure of the total number of gets, sets, increment, and decrements that occur for a given bucket. Cache Miss ep_cache_miss_rate The metric counts the ratio of requested objects found in the cache in relation to what is needed to be fetched from disk; as close to 0 as possible Fragmentation couch_docs_fragmentation measure should auto-compaction be set on a scheduled basis
  • 25. Type Field name Remark Working Set ep_bg_fetched / vb_active_resident_items_ratio The resident items ratio and memory headroom metrics to understand if your bucket has enough capacity to store the most requested objects in memory Disk Drain ep_queue_size to monitor regardless of what you’re application is doing is the drain rate. From a REST standpoint we can monitor both the queue fill (ep_diskqueue_fill) and how quickly the queue is draining (ep_diskqueue_drain) to track the trend over time.
  • 26. cbstats Monitor Using the cbstats Utility
  • 28.
  • 30.
  • 31.
  • 32. EXPLAIN provides information about the execution plan for the statement.
  • 33.
  • 34. API Query Use index /notebooks findByOwnerOrHaveReadPermission select count(*) from `dbee` where javaClass = "com.delta.ssir.dbee.repository.entity.Notebook" AND LOWER(owner) = "amber.lee" OR (javaClass = "com.delta.ssir.dbee.repository.entity.Notebook" AND owner != "amber.lee" AND ANY per IN permissions SATISFIES per = {"id":"amber.lee", "permission":1, "role": "1"} END) CREATE INDEX notebook_owner_permissions ON `dbee` (owner, ALL permissions) WHERE javaClass = "com.delta.ssir.dbee.repository.entity.Notebook" countBySharedNote select count(*) from `dbee` where javaClass = "com.delta.ssir.dbee.repository.entity.Note" AND shareNote == true AND owner != "amber.lee" AND ANY per IN permissions SATISFIES per = {"id":"amber.lee", "permission":1, "role": "1"} END CREATE INDEX note_shareNote_owner_permissions ON `dbee` (shareNote, owner, ALL permissions) WHERE javaClass = "com.delta.ssir.dbee.repository.entity.Note"
  • 35. 0 50 100 150 200 250 300 metric1 metric2 metric3 ElapsedTime(ms) Metrics -findByOwnerOrHaveReadPermission N1QL execution time N1QL Use Index
  • 36. 0 200 400 600 800 1000 1200 1400 metric1 metric2 metric3 ElapsedTime(ms) Metrics - countBySharedNote N1QL execution time N1QL Use Index
  • 37. API Query Use index /users/info findByName select * from `dbee` where javaClass = "com.delta.ssir.dbee.repository.entity.User" AND name = “rich.lee” CREATE INDEX user_name ON `dbee` (name) WHERE javaClass = "com.delta.ssir.dbee.repository.entity.User" countByOwnerAndIsDeletedFalse CREATE INDEX note_owner_notebookId_isDeleted ON `dbee` (owner, notebookId, isDeleted) WHERE javaClass = "com.delta.ssir.dbee.repository.entity.Note" countByOwnerIgnoreCase (Notebook) Use notebook_owner_permissions countByAllNoteSharedWithMe SELECT COUNT(*) FROM #{#n1ql.bucket} WHERE #{#n1ql.filter} AND owner != $1 AND ANY per IN permissions SATISFIES per = per = {"id":$1, "permission":$2, "role": $3} END Use note_shareNote_owner_permissions
  • 38. API Query Use index /markers findByMarkerTypeOrderBySeqAndParentIds select count(*) from `dbee` where javaClass = "com.delta.ssir.dbee.repository.entity.Marker” AND markerType = $1 ORDER BY ARRAY_LENGTH(parentIds), seq CREATE INDEX marker_markerType_owner ON `dbee` (markerType, owner) WHERE javaClass = "com.delta.ssir.dbee.repository.entity.Marker" findByOwnerAndMarkerTypeOrderBySeqAndParentIds select count(*) from `dbee` where javaClass = "com.delta.ssir.dbee.repository.entity.Marker” AND owner = $1 AND markerType = $2 ORDER BY ARRAY_LENGTH(parentIds), seq Use marker_markerType_owner
  • 39. API Query Use index /topics findByOwnerIgnoreCase CREATE INDEX topic_owner ON `dbee` (owner) WHERE javaClass = "com.delta.ssir.dbee.repository.entity.Topic"
  • 40. Array Indexing Making the most of your Arrays… with N1QL Array Indexing Indexing JSON in Couchbase Indexing Best Practices