Saturday, 30 May 2026

Filled under:

 He has been recognized in the Oracle ACE program since 2021, reflecting his sustained technical contribution, community involvement, knowledge sharing, and external credibility in the Oracle ecosystem. He has now achieved Oracle ACE Pro status, a higher level within the program, which further highlights his continued technical leadership and contribution to the Oracle community.

Posted By Nikhil03:07
Filled under:

Promotion Input – Nikhil

Current Role / Context / Scope / Organizational Impact

  • Nikhil is a key member of the Database/SRE team with strong experience across Oracle, PostgreSQL, automation, production support, BCM, patching, observability, knowledge management, and emerging database areas.

  • He has consistently demonstrated high ownership, reliability, technical depth, and productivity across critical database services. His contribution is not limited to BAU support; he actively identifies gaps, improves processes, drives automation, supports strategic initiatives, and enables other team members.

  • Nikhil has been acting as an Oracle Backup and Restore SME since 2020. He has maintained backup and restore documentation, worked closely with backup engineering teams on new and recurring issues, and followed up until resolution.

  • He has strong knowledge of the Oracle estate, PostgreSQL estate, internal processes, tooling, and operational workflows. This makes him one of the key APAC contacts for Oracle and PostgreSQL-related process and technical assistance.

  • He supports production services across Oracle and PostgreSQL, including critical incident handling, RCA, patching, backup monitoring, BCM planning, Infrastructure Weekend Event activities, automation migration, observability initiatives, request improvement, and knowledge sharing.

  • Nikhil has also taken up the role of Duty Manager as an L3 contact for Oracle and PostgreSQL, reflecting the trust placed in him for critical escalation handling and production accountability.

  • Recently, Nikhil has taken up the role of Scrum Master for the Emerging DB POD. His diverse technical background across Oracle, PostgreSQL, Azure, and other database technologies, combined with his understanding of UBS internal processes, enables him to drive this role effectively.

  • His journey shows continuous growth and adaptability. He has grown from Oracle DBA to Oracle SME, expanded into PostgreSQL as an early adopter and SRE, supported PostgreSQL adoption through stakeholder sessions, contributed to automation and AI/ML initiatives, represented Oracle and PostgreSQL in observability initiatives, and now also contributes as Scrum Master for Emerging DB.

Contribution / Impact Comparable to Peers at the Next Rank Level

  • Nikhil has been the key Oracle contact for planning and implementation of APAC BCM activities. He collaborates closely with BCM teams and stakeholders to understand requirements, validate database readiness, coordinate execution, and support successful completion.

  • He has consistently supported APAC BCM events not only from a planning perspective but also during actual implementation, ensuring Oracle database activities are tracked, validated, and completed with the required operational checks.

  • Nikhil has been a key person during Infrastructure Weekend Events for both Oracle and PostgreSQL estates. He has worked with multiple regional teams during critical activities and production issues, providing technical guidance and helping drive resolution.

  • He independently coordinates PostgreSQL database patching for the APAC region, including planning, coordination, communication, execution tracking, and post-patching validation.

  • He is also actively involved in Oracle database patching for the global estate as part of weekly operational and Infrastructure Weekend Event activities. His involvement helps ensure database readiness, smooth execution, post-check completion, and timely follow-up on any issues found during or after patching.

  • Nikhil actively supports critical incident channels for both Oracle and PostgreSQL estates. He gets involved proactively during high-priority issues, supports technical analysis, and helps drive incidents toward resolution.

  • He shows curiosity and ownership in understanding root cause, rather than only focusing on immediate recovery. Wherever applicable, he documents findings, actions, and follow-ups in GitLab to ensure proper tracking and future reference.

  • Nikhil works closely with the PostgreSQL engineering team and has been involved in engineering-level discussions, especially during the period when PostgreSQL was a strategic focus area. His contribution helped bridge the gap between production support, engineering requirements, and operational implementation.

  • He takes up recurring or structural issues with engineering teams when the fix requires deeper product, process, or automation improvement. This has helped improve the production support model instead of treating issues only as one-time incidents.

  • Nikhil has individually contributed to building PostgreSQL BCM automation knowledge and execution. As a PostgreSQL SRE, he understands the operational, technical, and HA aspects of PostgreSQL. He adopted the automation framework, helped build BCM automation from scratch, and contributed independently to its delivery.

  • He was a key person for Oracle and PostgreSQL estates during major tooling migrations, including Netcool to BigPanda and IPCenter to Amelia.

  • He played a leading role in the migration of more than 100 automations, ensuring existing operational workflows were reviewed, understood, transitioned, and aligned with the new automation platform.

  • Nikhil is also a key representative for Oracle and PostgreSQL configuration and structural changes required for LGTM, which is an important observability initiative.

  • He is helping drive the database-side understanding for Oracle and PostgreSQL by reviewing existing configurations, structural requirements, monitoring expectations, and the impact of proposed changes across the database estate.

  • His contribution ensures that Oracle and PostgreSQL requirements are represented correctly during LGTM discussions and that observability-related changes are aligned with production support, platform stability, and operational processes.

  • Nikhil is handling this responsibility in parallel with his Scrum Master role for the Emerging DB POD, demonstrating his ability to manage multiple high-impact responsibilities across technical delivery, observability, Agile coordination, and stakeholder alignment.

  • Nikhil has demonstrated strong expertise in GSNOW reporting and logic building. He has created and published multiple GSNOW reports for different operational scenarios, helping teams improve tracking, visibility, decision-making, and operational follow-up.

  • His contribution is not limited to report creation. He also shares the underlying logic with team members and delegates such tasks as part of knowledge sharing and team development.

  • He developed a comprehensive Oracle backup reporting mechanism for a large Oracle database estate. The report provides visibility into databases with missing backups and includes additional operational details such as backup days, database creator ID, and blackout status. This has helped the team identify backup coverage gaps more effectively and follow up on remediation with better evidence.

  • Nikhil has contributed to multiple toil reduction initiatives across large Oracle and PostgreSQL environments. He has helped reduce operational toil by defining clearer processes, improving request handling, introducing structured reporting, reviewing automation, and identifying areas where manual intervention can be reduced.

  • He has generated various reports and dashboards to analyze incoming requests and incidents, helping identify recurring issues, process gaps, and areas requiring attention.

  • He has worked on process mapping to identify workflows contributing to operational toil and collaborated with the team to redesign them for better efficiency, improved resource allocation, and reduced repetitive manual effort.

  • He regularly reviews existing automation scripts and workflows to identify inefficiencies and redundancies before migration or enhancement, ensuring automation remains reusable, modular, and effective.

  • Nikhil was actively involved in earlier Reinfer machine learning initiatives for both Oracle and PostgreSQL. He was one of the key contributors driving this for both RDBMS platforms by understanding the requirement, preparing data, and helping train the model for better request classification.

  • Later, when the process migrated toward Nucleus AI, Nikhil adopted the new platform and contributed to improving the user experience while raising tickets. His work helped ensure users receive more relevant information and appropriate suggestions during ticket creation.

  • For the large Oracle and PostgreSQL estate, Nikhil’s contribution to Assist portal training, form modification, and Nucleus integration helped reduce unstructured requests and improved the quality of incoming tickets.

  • He completed training on Assist and created comprehensive Assist pages to document knowledge on Oracle and ongoing database queries, making information easier to access, navigate, and maintain for the wider team.

  • He created and modified incident/request creation forms to integrate with Reinfer and Nucleus, contributing to improved machine learning capability, better ticket classification, and more structured inputs from users.

  • Nikhil provided PostgreSQL data to Reinfer to support further machine learning training for colleagues and handed over the module to EMEA members for continuation, showing ownership beyond his immediate region.

  • He explored the use of Reinfer to predict potential incidents based on historical data trends, supporting a more proactive approach to incident prevention and operational readiness.

  • Nikhil actively contributes to the internal Stack Overflow platform by sharing solutions that extend beyond the database team’s scope. This helps reduce unnecessary incidents, guide users toward the right conclusions, and improve collaboration across teams.

  • Nikhil has also been actively involved in database patching and operational changes, including weekend activities. He provides suggestions to improve patching processes, helps resolve critical and high-severity incidents, clears aged tickets, and contributes to smoother operational execution.

Accountability with Integrity

  • Nikhil takes ownership of critical activities and ensures issues are followed through until closure, whether related to production incidents, patching, backups, automation gaps, BCM, vendor follow-ups, observability requirements, or engineering dependencies.

  • He is transparent in highlighting risks, blockers, and unknowns. He avoids jumping to conclusions and ensures technical issues are analyzed from database, application, process, and operational perspectives.

  • He regularly documents findings, decisions, and next steps in GitLab, Assist pages, reports, internal documentation, or team trackers so the team has clear visibility and future reference.

  • His approach during production activities reflects strong accountability. He focuses not only on completing the assigned task, but also on ensuring readiness, validation, post-checks, evidence, and follow-up actions.

  • As an Oracle Backup and Restore SME, he has shown long-term ownership by maintaining documentation, supporting backup engineering teams, reviewing failures, and helping identify gaps across a large database estate.

  • As a Duty Manager and L3 contact for Oracle and PostgreSQL, he demonstrates accountability during escalations and critical production situations.

  • His ownership of APAC PostgreSQL patching and active participation in global Oracle patching shows his ability to handle high-impact operational responsibilities independently.

  • His role in LGTM observability discussions further shows accountability at platform level, where he represents Oracle and PostgreSQL requirements and ensures configuration or structural changes are considered carefully before implementation.

Collaboration

  • Nikhil collaborates closely with DBAs, SREs, Unix teams, application teams, BCM teams, backup engineering teams, PostgreSQL engineering teams, vendors, Microsoft engineers, product owners, reliability owners, managers, and observability teams to drive operational and project work.

  • He has been a key Oracle contact for APAC BCM planning and execution, working with BCM teams and stakeholders to understand requirements and ensure database readiness.

  • He supports new joiners as a buddy during KT and onboarding. He helps them understand access, processes, operational workflows, technical areas, and common query resolution.

  • He has consistently been one of the key APAC contacts for Oracle DBAs for both process-related and technical assistance.

  • Nikhil has been a key contributor to hiring and interview activities. He has conducted multiple interviews in the past and continues to support the hiring process from technical evaluation to onboarding support and query resolution.

  • He shares knowledge through GSNOW report logic, Assist pages, technical documentation, troubleshooting guides, brown bag sessions, Stack Overflow contributions, scrum pod updates, and team walkthroughs.

  • He conducted brown bag sessions with stakeholders to support PostgreSQL adoption and has helped bridge knowledge between Oracle, PostgreSQL, engineering, and operational support teams.

  • As Scrum Master for the Emerging DB POD, he helps improve team alignment by reminding engineers to update trackers, clarify ownership, discuss blockers, and prepare for important calls.

  • He supports backlog refinement, iteration planning, dependency tracking, Microsoft follow-ups, and blocked-item visibility, helping the team stay aligned and delivery-focused.

  • Nikhil is handling the LGTM observability-related representation for Oracle and PostgreSQL along with his Scrum Master role, showing his ability to collaborate across multiple workstreams and stakeholder groups.

Innovation

  • Nikhil consistently looks for opportunities to reduce manual effort, improve repeatability, and make operational processes more reliable.

  • He has shown an automation mindset by working on Amelia-based workflows for PostgreSQL BCM automation and other database operational tasks.

  • He helped build PostgreSQL BCM automation from scratch, contributing independently to its delivery and ensuring that operational validation, HA understanding, and execution requirements were considered.

  • He played a key role in the migration of more than 100 automations from IPCenter to Amelia and supported tooling migration from Netcool to BigPanda for Oracle and PostgreSQL estates.

  • He has worked on database health check logic, backup reporting, GSNOW reporting, patching improvements, request form improvements, Assist portal documentation, observability readiness, and structured validation logic to improve operational quality.

  • Nikhil was one of the key contributors for Reinfer machine learning initiatives for Oracle and PostgreSQL and later adopted Nucleus AI to improve user guidance during ticket creation.

  • His work on form improvements, ML integration, and structured request handling helped reduce unstructured requests and improved the quality of information provided to support teams.

  • He has contributed to PostgreSQL product and operational enhancements by identifying improvement areas related to performance, usability, automation, and process efficiency.

  • He is contributing to LGTM observability by representing Oracle and PostgreSQL configuration and structural requirements, helping ensure observability adoption is practical, supportable, and aligned with database production realities.

  • He continues to adopt new technology areas and has expanded from Oracle SME responsibilities to PostgreSQL SRE, automation, AI/ML request improvement, observability, and now Emerging DB Scrum Master responsibilities.

Agile Mindset / Scrum Master Contribution

  • Nikhil has recently taken up the Scrum Master role for the Emerging DB POD and has shown strong commitment to Agile ways of working.

  • He brings clarity to backlog refinement by helping the team focus on scope, acceptance, dependencies, and blockers before moving items into planning or delivery.

  • He supports iteration planning by helping the team discuss ownership, weights, priorities, and realistic commitments for the iteration.

  • He encourages transparent communication by reminding team members to update trackers, document discussion outcomes, and clearly highlight risks or dependencies.

  • He helps separate refinement from planning discipline, ensuring that scope clarification, effort estimation, and assignment decisions happen in the right forums.

  • He supports Microsoft dependency tracking, Q2/Q3 item visibility, blocked-item follow-ups, and discussion preparation before vendor or stakeholder calls.

  • Nikhil’s Agile contribution is not limited to ceremony facilitation. He uses his technical and process knowledge to ask the right questions, connect dependencies, and help the team move work forward.

  • His Scrum Master contribution adds value because he understands both the technical delivery side and the operational process side. This helps him guide conversations in a practical and delivery-focused way.

  • In parallel with Scrum Master responsibilities, he is also handling Oracle and PostgreSQL representation for LGTM observability-related configuration and structural changes, showing strong prioritization, context switching, and stakeholder management.

Documentation / Knowledge Sharing / Product Adoption / Community Impact

  • Nikhil has consistently stayed ahead in documentation and internal knowledge management. He creates and maintains internal documentation that helps not only the database team, but also wider technology teams and end users who depend on Oracle and PostgreSQL services.

  • He has contributed to Polestar for Atlas document migration, helping ensure that relevant database knowledge, process documentation, and operational references are moved and maintained in the right internal knowledge platform.

  • Nikhil was an early adopter of PostgreSQL within UBS and was part of the journey from proof of concept to implementation in the UBS estate. Over time, he gradually became a PostgreSQL SME and is now an APAC SRE supporting critical PostgreSQL databases and production incidents.

  • He has handled critical PostgreSQL databases and supported high-impact incidents, including Mobile Pass-related incidents and other production issues across the estate.

  • When PostgreSQL became a more mature and strategic platform within UBS, Nikhil conducted knowledge-sharing sessions and product adoption sessions with stakeholders. This helped improve awareness, adoption, and operational understanding of PostgreSQL across teams.

  • Nikhil was among the first database team members to become a Certified Engineer in Database Hosting in [YEAR]. This demonstrates his early commitment to strengthening engineering standards and platform knowledge within database hosting.

  • Nikhil has made strong contributions to UBS Internal Stack Overflow, with 3500+ points and 15K+ answer viewer reach. This demonstrates his consistent knowledge sharing, practical query resolution, and willingness to support users beyond his immediate team boundaries.

  • His Internal Stack Overflow contribution has helped reduce repeated queries, guide users toward the correct solution, and improve the overall quality of self-service knowledge available within UBS.

  • Nikhil continuously shares knowledge within the scrum pod and wider team, including updates from ongoing trainings, new technology adoption, internal platform changes, and relevant database or SRE practices.

  • He keeps the team informed about new technologies UBS is adopting and helps connect those updates with practical database and operational use cases.

  • Along with internal contribution, Nikhil has continued to invest in external certifications and professional development, including Oracle certifications and cloud/database-related learning.

  • He is also recognized in the Oracle ACE program from [YEAR], which reflects his sustained technical contribution, community involvement, knowledge sharing, and external credibility in the Oracle ecosystem.

  • His combination of internal documentation, PostgreSQL product adoption, Stack Overflow contribution, certifications, Oracle ACE recognition, and regular knowledge sharing demonstrates that his impact extends beyond individual delivery into team enablement, user enablement, and community-level technical contribution.

Overall Summary

  • Nikhil has demonstrated strong impact across Oracle, PostgreSQL, automation, BCM, patching, incident management, RCA, observability, AI/ML request improvement, reporting, documentation, mentoring, hiring, and Agile delivery.

  • His work shows a combination of deep technical expertise, production ownership, automation mindset, stakeholder collaboration, and willingness to adopt new responsibilities.

  • He has contributed at estate-wide and regional levels, particularly across Oracle and PostgreSQL services in APAC and global operational activities.

  • His ability to operate as Oracle SME, PostgreSQL SRE, Duty Manager, automation contributor, APAC BCM contact, patching coordinator, LGTM observability representative, knowledge-sharing mentor, and Emerging DB Scrum Master shows impact beyond individual task execution.

  • In addition to Oracle, PostgreSQL, BCM, patching, automation, AI/ML, and Scrum Master responsibilities, Nikhil is also representing Oracle and PostgreSQL for LGTM observability-related configuration and structural changes. This shows his ability to contribute to strategic platform initiatives while continuing to manage delivery and operational responsibilities.

  • Nikhil’s consistent ownership, adaptability, collaboration, technical depth, and contribution to production stability make his impact comparable to expectations at the next role level.

Posted By Nikhil00:47

Friday, 29 May 2026

Filled under:

 

Current Role / Context / Scope / Organizational Impact

  • Nikhil is a key member of the Database/SRE team with strong experience across Oracle, PostgreSQL, automation, production support, BCM, patching, and emerging database areas.

  • He has consistently demonstrated high ownership, reliability, technical depth, and productivity across critical database services. His contribution is not limited to BAU support; he actively identifies gaps, improves processes, drives automation, and supports strategic initiatives.

  • Nikhil has been acting as an Oracle Backup and Restore SME since 2020. He has maintained backup and restore documentation, worked closely with backup engineering teams on new and recurring issues, and followed up until resolution.

  • He has strong knowledge of the Oracle estate, PostgreSQL estate, internal processes, tooling, and operational workflows. This makes him one of the key APAC contacts for Oracle and PostgreSQL-related process and technical assistance.

  • He supports production services across Oracle and PostgreSQL, including critical incident handling, RCA, patching, backup monitoring, BCM planning, IWE activities, automation migration, request improvement, and knowledge sharing.

  • Nikhil has also taken up the role of Duty Manager as an L3 contact for Oracle and PostgreSQL, reflecting the trust placed in him for critical escalation handling and production accountability.

  • Recently, Nikhil has taken up the role of Scrum Master for the Emerging DB POD. His diverse technical background across Oracle, PostgreSQL, Azure, and other database technologies, combined with his understanding of UBS internal processes, enables him to drive this role effectively.

  • His journey shows continuous growth and adaptability. He has grown from Oracle DBA to Oracle SME, expanded into PostgreSQL as an early adopter and SRE, supported PostgreSQL adoption through stakeholder sessions, contributed to automation and AI/ML initiatives, and now also contributes as Scrum Master for Emerging DB.

Contribution / Impact Comparable to Peers at the Next Rank Level

  • Nikhil has been the key Oracle contact for planning and implementation of APAC BCM activities. He collaborates closely with BCM teams and stakeholders to understand requirements, validate database readiness, coordinate execution, and support successful completion.

  • He has consistently supported APAC BCM events not only from planning perspective but also during actual implementation, ensuring Oracle database activities are tracked, validated, and completed with required operational checks.

  • Nikhil has been a key person during Infrastructure Weekend Events for both Oracle and PostgreSQL estates. He has worked with multiple regional teams during critical activities and production issues, providing technical guidance and helping drive resolution.

  • He independently coordinates PostgreSQL database patching for the APAC region, including planning, coordination, communication, execution tracking, and post-patching validation.

  • He is also actively involved in Oracle database patching for the global estate as part of weekly operational and Infrastructure Weekend Event activities. His involvement helps ensure database readiness, smooth execution, post-check completion, and timely follow-up on any issues found during or after patching.

  • Nikhil actively supports critical incident channels for both Oracle and PostgreSQL estates. He gets involved proactively during high-priority issues, supports technical analysis, and helps drive incidents toward resolution.

  • He shows curiosity and ownership in understanding root cause, rather than only focusing on immediate recovery. Wherever applicable, he documents findings, actions, and follow-ups in GitLab to ensure proper tracking and future reference.

  • Nikhil works closely with the PostgreSQL engineering team and has been involved in engineering-level discussions, especially during the period when PostgreSQL was a strategic focus area. His contribution helped bridge the gap between production support, engineering requirements, and operational implementation.

  • He takes up recurring or structural issues with engineering teams when the fix requires deeper product, process, or automation improvement. This has helped improve the production support model instead of treating issues only as one-time incidents.

  • Nikhil has individually contributed to building PostgreSQL BCM automation knowledge and execution. As a PostgreSQL SRE, he understands the operational, technical, and HA aspects of PostgreSQL. He adopted the automation framework, helped build BCM automation from scratch, and contributed independently to its delivery.

  • He was a key person for Oracle and PostgreSQL estates during major tooling migrations, including Netcool to BigPanda and IPCenter to Amelia.

  • He played a leading role in migration of more than 100 automations, ensuring existing operational workflows were reviewed, understood, transitioned, and aligned with the new automation platform.

  • Nikhil has demonstrated strong expertise in GSNOW reporting and logic building. He has created and published multiple GSNOW reports for different operational scenarios, helping teams improve tracking, visibility, decision-making, and operational follow-up.

  • His contribution is not limited to report creation. He also shares the underlying logic with team members and delegates such tasks as part of knowledge sharing and team development.

  • He developed a comprehensive Oracle backup reporting mechanism for a large Oracle database estate. The report provides visibility into databases with missing backups and includes additional operational details such as backup days, database creator ID, and blackout status. This has helped the team identify backup coverage gaps more effectively and follow up on remediation with better evidence.

  • Nikhil has contributed to multiple toil reduction initiatives across large Oracle and PostgreSQL environments. He has helped reduce operational toil by defining clearer processes, improving request handling, introducing structured reporting, reviewing automation, and identifying areas where manual intervention can be reduced.

  • He has generated various reports and dashboards to analyze incoming requests and incidents, helping identify recurring issues, process gaps, and areas requiring attention.

  • He has worked on process mapping to identify workflows contributing to operational toil and collaborated with the team to redesign them for better efficiency, improved resource allocation, and reduced repetitive manual effort.

  • He regularly reviews existing automation scripts and workflows to identify inefficiencies and redundancies before migration or enhancement, ensuring automation remains reusable, modular, and effective.

  • Nikhil was actively involved in earlier Reinfer machine learning initiatives for both Oracle and PostgreSQL. He was one of the key contributors driving this for both RDBMS platforms by understanding the requirement, preparing data, and helping train the model for better request classification.

  • Later, when the process migrated toward Nucleus AI, Nikhil adopted the new platform and contributed to improving the user experience while raising tickets. His work helped ensure users receive more relevant information and appropriate suggestions during ticket creation.

  • For the large Oracle and PostgreSQL estate, Nikhil’s contribution to Assist portal training, form modification, and Nucleus integration helped reduce unstructured requests and improved the quality of incoming tickets.

  • He completed training on Assist and created comprehensive Assist pages to document knowledge on Oracle and ongoing database queries, making information easier to access, navigate, and maintain for the wider team.

  • He created and modified incident/request creation forms to integrate with Reinfer and Nucleus, contributing to improved machine learning capability, better ticket classification, and more structured inputs from users.

  • Nikhil provided PostgreSQL data to Reinfer to support further machine learning training for colleagues and handed over the module to EMEA members for continuation, showing ownership beyond his immediate region.

  • He explored the use of Reinfer to predict potential incidents based on historical data trends, supporting a more proactive approach to incident prevention and operational readiness.

  • Nikhil actively contributes to the internal Stack Overflow platform by sharing solutions that extend beyond the database team’s scope. This helps reduce unnecessary incidents, guide users toward the right conclusions, and improve collaboration across teams.

  • Nikhil has also been actively involved in database patching and operational changes, including weekend activities. He provides suggestions to improve patching processes, helps resolve critical and high-severity incidents, clears aged tickets, and contributes to smoother operational execution.

Accountability with Integrity

  • Nikhil takes ownership of critical activities and ensures issues are followed through until closure, whether related to production incidents, patching, backups, automation gaps, BCM, vendor follow-ups, or engineering dependencies.

  • He is transparent in highlighting risks, blockers, and unknowns. He avoids jumping to conclusions and ensures technical issues are analyzed from database, application, process, and operational perspectives.

  • He regularly documents findings, decisions, and next steps in GitLab, Assist pages, reports, or team documentation so the team has clear visibility and future reference.

  • His approach during production activities reflects strong accountability. He focuses not only on completing the assigned task, but also on ensuring readiness, validation, post-checks, evidence, and follow-up actions.

  • As an Oracle Backup and Restore SME, he has shown long-term ownership by maintaining documentation, supporting backup engineering teams, reviewing failures, and helping identify gaps across a large database estate.

  • As a Duty Manager and L3 contact for Oracle and PostgreSQL, he demonstrates accountability during escalations and critical production situations.

  • His ownership of APAC PostgreSQL patching and active participation in global Oracle patching shows his ability to handle high-impact operational responsibilities independently.

Collaboration

  • Nikhil collaborates closely with DBAs, SREs, Unix teams, application teams, BCM teams, backup engineering teams, PostgreSQL engineering teams, vendors, Microsoft engineers, product owners, reliability owners, and managers to drive operational and project work.

  • He has been a key Oracle contact for APAC BCM planning and execution, working with BCM teams and stakeholders to understand requirements and ensure database readiness.

  • He supports new joiners as a buddy during KT and onboarding. He helps them understand access, processes, operational workflows, technical areas, and common query resolution.

  • He has consistently been one of the key APAC contacts for Oracle DBAs for both process-related and technical assistance.

  • Nikhil has been a key contributor to hiring and interview activities. He has conducted multiple interviews in the past and continues to support the hiring process from technical evaluation to onboarding support and query resolution.

  • He shares knowledge through GSNOW report logic, Assist pages, technical documentation, troubleshooting guides, brown bag sessions, Stack Overflow contributions, and team walkthroughs.

  • He conducted brown bag sessions with stakeholders to support PostgreSQL adoption and has helped bridge knowledge between Oracle, PostgreSQL, engineering, and operational support teams.

  • As Scrum Master for the Emerging DB POD, he helps improve team alignment by reminding engineers to update trackers, clarify ownership, discuss blockers, and prepare for important calls.

  • He supports backlog refinement, iteration planning, dependency tracking, Microsoft follow-ups, and blocked-item visibility, helping the team stay aligned and delivery-focused.

Innovation

  • Nikhil consistently looks for opportunities to reduce manual effort, improve repeatability, and make operational processes more reliable.

  • He has shown an automation mindset by working on Amelia-based workflows for PostgreSQL BCM automation and other database operational tasks.

  • He helped build PostgreSQL BCM automation from scratch, contributing independently to its delivery and ensuring that operational validation, HA understanding, and execution requirements were considered.

  • He played a key role in migration of more than 100 automations from IPCenter to Amelia and supported tooling migration from Netcool to BigPanda for Oracle and PostgreSQL estates.

  • He has worked on database health check logic, backup reporting, GSNOW reporting, patching improvements, request form improvements, Assist portal documentation, and structured validation logic to improve operational quality.

  • Nikhil was one of the key contributors for Reinfer machine learning initiatives for Oracle and PostgreSQL and later adopted Nucleus AI to improve user guidance during ticket creation.

  • His work on form improvements, ML integration, and structured request handling helped reduce unstructured requests and improved the quality of information provided to support teams.

  • He has contributed to PostgreSQL product and operational enhancements by identifying improvement areas related to performance, usability, automation, and process efficiency.

  • He continues to adopt new technology areas and has expanded from Oracle SME responsibilities to PostgreSQL SRE, automation, AI/ML request improvement, and now Emerging DB Scrum Master responsibilities.

Agile Mindset / Scrum Master Contribution

  • Nikhil has recently taken up the Scrum Master role for the Emerging DB POD and has shown strong commitment to Agile ways of working.

  • He brings clarity to backlog refinement by helping the team focus on scope, acceptance, dependencies, and blockers before moving items into planning or delivery.

  • He supports iteration planning by helping the team discuss ownership, weights, priorities, and realistic commitments for the iteration.

  • He encourages transparent communication by reminding team members to update trackers, document discussion outcomes, and clearly highlight risks or dependencies.

  • He helps separate refinement from planning discipline, ensuring that scope clarification, effort estimation, and assignment decisions happen in the right forums.

  • He supports Microsoft dependency tracking, Q2/Q3 item visibility, blocked-item follow-ups, and discussion preparation before vendor or stakeholder calls.

  • Nikhil’s Agile contribution is not limited to ceremony facilitation. He uses his technical and process knowledge to ask the right questions, connect dependencies, and help the team move work forward.

  • His Scrum Master contribution adds value because he understands both the technical delivery side and the operational process side. This helps him guide conversations in a practical and delivery-focused way.

Knowledge Sharing / Mentoring / Community Contribution

  • Nikhil actively supports knowledge sharing within the team through KT sessions, onboarding support, internal documentation, Assist pages, GSNOW logic walkthroughs, and technical guidance.

  • He acts as a buddy for new joiners and helps them navigate access, process, technical queries, operational workflows, and support expectations.

  • He has contributed to internal Stack Overflow by sharing solutions beyond the database team’s scope, reducing unnecessary incidents and improving user awareness.

  • He has conducted brown bag sessions with stakeholders to support PostgreSQL adoption and improve understanding of the platform.

  • He contributes to hiring and onboarding by participating in interviews, technical evaluation, and post-joining query support.

  • His Oracle and PostgreSQL knowledge sharing has helped improve team readiness, reduce dependency on individuals, and strengthen operational support coverage.

Overall Summary

  • Nikhil has demonstrated strong impact across Oracle, PostgreSQL, automation, BCM, patching, incident management, RCA, AI/ML request improvement, reporting, documentation, mentoring, hiring, and Agile delivery.

  • His work shows a combination of deep technical expertise, production ownership, automation mindset, stakeholder collaboration, and willingness to adopt new responsibilities.

  • He has contributed at estate-wide and regional levels, particularly across Oracle and PostgreSQL services in APAC and global operational activities.

  • His ability to operate as Oracle SME, PostgreSQL SRE, Duty Manager, automation contributor, APAC BCM contact, patching coordinator, knowledge-sharing mentor, and Emerging DB Scrum Master shows impact beyond individual task execution.

  • Nikhil’s consistent ownership, adaptability, collaboration, and contribution to production stability make his impact comparable to expectations at the next role level.

Posted By Nikhil23:30
Filled under:

 Hi Team, happy to add another one to the list — cleared the Oracle AI Vector Search Professional  exam. Recent weekly offs/public holidays were well spent on practice but some prior months of learnings too. 😊

As a DBA, it feels exciting to see how traditional database administration is now connecting with AI-driven workloads and semantic search use cases.

https://catalog-education.oracle.com/pls/certview/sharebadge?id=793D4A9B2EFC70316E7AF030EF9458644198376642594E5C8C28CED8459E79B0







Posted By Nikhil04:46

Wednesday, 27 May 2026

Filled under:

 Meeting Date:

Topic / GitLab Item:

Discussion Summary:

Ask from Emerging DB:

Microsoft Response / Commitment:

Owner from Microsoft:

Owner from Emerging DB:

ETA / Follow-up Date:

Current Status:

Next Action:

GitLab Link:



--


Hi Team, I’m planning to maintain a OneNote tracker for our weekly Microsoft syncs so that MS commitments, pending asks, owners, ETAs, and follow-up items are tracked clearly.


This should help us stay prepared for each MS call and avoid losing track of action items, especially for Q2-targeted dependencies.


Please add/update any pending MS topics or GitLab links there before the call so we can follow up with clear context.



Posted By Nikhil01:21
Filled under:

 

For the Microsoft-dependent items targeted for Q2, just a reminder that we should keep the GitLab updates current and use our periodic Microsoft calls to bring up the relevant pending topics.

Since Q2 has only two iterations left, let’s be clear on which items are realistically actionable, which are waiting on Microsoft, and what needs follow-up so we avoid carrying these forward unnecessarily.

Posted By Nikhil01:06

Tuesday, 26 May 2026

Filled under:

 Epic: Q2’26 Emerging DB – Enhancements for Cosmos & Redis

RAG: Green

Status: Key items are currently awaiting release.

Update: Azure Function async pipeline change is ready to reduce wait time by enabling parallel calls. RiotX validation for Redis-to-AMR migration is also awaiting release and will support seamless migration through the pipeline.

Next Step: Track release completion and confirm post-release validation.

Posted By Nikhil00:38
Filled under:

 Update: TLS policy update, ADO role-sync fix, Redis audit-to-deny policy, and low-cost AMR SKU policy are in testing. DocumentDB autoscale restriction is in progress. Redis keys-disable AINE effect for Red Zone is awaiting release.

Next Step: Complete testing/validation, track release items, and confirm closure readiness before iteration end.

Posted By Nikhil00:35

Monday, 25 May 2026

Filled under:

 Hi Team,

For tomorrow’s call with Microsoft, just wanted to remind/check on the action items from the previous discussion.

As per last call, Microsoft was expected to come back on:

  1. Manual switchover solution/control from user side + documentation

  2. Estimated timeline to share required details

  3. Microsoft distribution list / contact group for follow-ups

Not sure if these details have already been shared. If yes, let’s review and prepare any queries/inputs before the call. If not, we can follow up with Microsoft tomorrow and ask for clear next actions/timelines.

Posted By Nikhil05:42
Filled under:

 Hi Team,

I have created a few GitLab items based on points discussed in recent Documentation and Product/RO sync calls.

Please review them during your internal discussions and add any required details/comments so we can get better clarity before bringing them into scrum/planning.

Also please confirm if any item needs refinement, priority, ownership, or iteration alignment.

Posted By Nikhil05:23
Filled under:

 Hi Team, quick reminder on the Eng tenant access issue.

Since this has been pending for a few days and is impacting a linked iteration item, can we please align on the blocker, owner, and next action before tomorrow’s scrum call?

This will help us avoid carrying the blocker further as we are close to iteration closure.

Posted By Nikhil04:40
Filled under:

 1. Does Liquibase run automatically during every application startup?

2. Is Liquibase enabled on all application nodes?

3. Can more than one app node attempt Liquibase migration at the same time?

4. Was deployment/startup happening when the host was shut down?

5. Is the application connecting through HAProxy/PGPool/service name or directly to a Patroni node?

6. After failover, does the app retry Liquibase against the new primary?

7. Do they have an approved release-locks procedure?



1. Stop application services

2. Confirm no Liquibase/deployment process is running

3. Confirm active DB sessions are drained

4. Stop Patroni/PostgreSQL gracefully on target node

5. Perform host maintenance

6. Start Patroni/PostgreSQL

7. Confirm cluster role and health

8. Start application services

9. Validate Liquibase lock and application startup



databasechangelog      -- history of successfully executed Liquibase changesets

databasechangeloglock  -- current lock status used to control Liquibase execution



atabasechangeloglock.locked = false

Then there may be no Liquibase lock issue currently.


In that case, application team may be assuming incorrectly. The startup failure may be somewhere else, such as:

DB connection issue
Patroni primary/replica routing issue
Application connecting to replica
Schema mismatch
Permission issue
Liquibase disabled/not running
Application startup dependency failure



The databasechangelog table showing only 2025 dates means no recent Liquibase changeset has been successfully applied. However, that table is only the execution history. The current lock status is controlled by databasechangeloglock.

Please share the output of select * from databasechangeloglock;, especially locked, lockgranted, and lockedby. If locked=true with a recent timestamp, then Liquibase likely acquired the lock during app startup/deployment and got interrupted before releasing it. If locked=false, then this may not be a Liquibase lock issue and we should check app connectivity, Patroni routing, and whether the app is connecting to primary or replica.







Hi Team, sharing the initial understanding on the reported databasechangeloglock concern.

Application team observed that after an abrupt host shutdown/crash scenario, the application may face issues related to the Liquibase lock table. However, current DB-side validation shows databasechangelog has only older 2025 entries, meaning no recent Liquibase changeset appears to have completed. Also, databasechangeloglock currently shows locked = f, so there is no active stuck Liquibase lock at database level at this point.

Based on this, we should not conclude yet that this is a PostgreSQL/Patroni defect. The more likely area to validate is whether Liquibase/application startup was interrupted during host shutdown, whether Liquibase runs during app startup, whether multiple app nodes can trigger it, and whether the application was connected to the correct Patroni primary after recovery/failover.

From DB side, we can validate PostgreSQL/Patroni logs, crash recovery/failover events, current primary role, and connection routing. Application team should share exact startup/deployment error logs and confirm Liquibase execution flow.

We can still raise a passive/vendor case for guidance on PostgreSQL/Patroni behavior during abrupt shutdown, but the case should be positioned as validation support rather than concluding PostgreSQL is updating the Liquibase lock flag.





. Also, databasechangeloglock currently shows locked = f, so there is no active stuck Liquibase lock at database level at this point

So at present, there is no active database-side Liquibase lock issue.


Based on the current evidence, the issue cannot yet be concluded as a PostgreSQL or Patroni defect. The databasechangeloglock table is managed by Liquibase/application deployment logic, and a stuck lock generally occurs when Liquibase acquires the lock and the application/Liquibase process is interrupted before it can release it. Therefore, the current symptoms need to be validated from both the application startup/deployment flow and the PostgreSQL/Patroni recovery/failover perspective.


-


Hi Team, sharing the initial understanding on the reported databasechangeloglock concern.

Application team observed that after an abrupt host shutdown/crash scenario,

the application may face issues related to the Liquibase lock table.

Current understanding is

If Liquibase/application startup is running during an abrupt shutdown, Liquibase may get interrupted while holding the lock. In such a case, the lock can remain stuck until released safely.

So at present, there is no active database-side Liquibase lock issue.

However, I tried checking a few things right now and current DB-side validation shows databasechangelog has only older 2025 entries,

meaning no recent Liquibase changeset appears to have completed



The application team should validate:

Based on this, we should not conclude yet that this is a PostgreSQL/Patroni defect. The more likely area to validate is whether Liquibase/application startup was interrupted during host shutdown, whether Liquibase runs during app startup, whether multiple app nodes can trigger it, and whether the application was connected to the correct Patroni primary after recovery/failover.


From DB side, we can validate PostgreSQL/Patroni logs, crash recovery/failover events, current primary role, and connection routing. Application team should share exact startup/deployment error logs and confirm Liquibase execution flow.



1. Whether Liquibase runs automatically during application startup.
2. Whether Liquibase runs from multiple application nodes.
3. Whether the application was starting or deploying when the host shutdown happened.
4. Whether any Liquibase process was interrupted.
5. Whether application logs show "Waiting for changelog lock" or "Could not acquire changelog lock".
6. Whether the application was connected to the Patroni primary or accidentally routed to a replica.
7. Whether the application has a safe Liquibase release-locks procedure.


At this stage, there is no active database-side lock to clear, and no recent Liquibase changeset execution is visible from `databasechangelog`. The next step is to validate the application/Liquibase logs around the incident timestamp to confirm whether Liquibase was waiting for a changelog lock, failed before applying changes, or was interrupted during startup. From the database side, we should validate Patroni/PostgreSQL logs to confirm crash recovery, switchover timing, current primary role, and application connection routing. A PostgreSQL vendor case may be raised only as a passive validation case for Patroni/PostgreSQL behavior during abrupt shutdown/switchover. However, based on current evidence, this should first be investigated as an application/Liquibase startup and recovery flow issue rather than a confirmed PostgreSQL defect.


Current DB state does not show an active Liquibase lock issue. The old 2025 entries in `databasechangelog` mean no recent Liquibase changeset was successfully applied. The current `locked = f` means the lock is clear now. But because switchover happened today, we cannot confirm the lock state before switchover. Therefore, the RCA should focus on timeline correlation and application/Liquibase logs before raising this as a PostgreSQL issue.


SELECT pid, usename, application_name, client_addr, state, query_start, wait_event_type, wait_event, query FROM pg_stat_activity WHERE query ILIKE '%databasechangelog%' OR query ILIKE '%liquibase%' OR application_name ILIKE '%liquibase%';

Posted By Nikhil04:36

Sunday, 24 May 2026

Filled under:

 <!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8" />

  <meta name="viewport" content="width=device-width, initial-scale=1.0" />

  <title>Oracle Exam 1Z0-184-25 : Oracle AI Vector Search Professional Dump - Practice Exam</title>

  <style>

    :root {

      --bg: #f6f7fb;

      --card: #ffffff;

      --text: #1f2937;

      --muted: #6b7280;

      --border: #e5e7eb;

      --accent: #2563eb;

      --accent-soft: #dbeafe;

      --success: #047857;

      --success-bg: #d1fae5;

      --danger: #b91c1c;

      --danger-bg: #fee2e2;

      --shadow: 0 10px 25px rgba(15, 23, 42, 0.08);

    }

    * { box-sizing: border-box; }

    body {

      margin: 0;

      font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

      background: var(--bg);

      color: var(--text);

      line-height: 1.55;

    }

    header {

      position: sticky;

      top: 0;

      z-index: 10;

      background: rgba(246,247,251,0.95);

      backdrop-filter: blur(10px);

      border-bottom: 1px solid var(--border);

    }

    .wrap {

      max-width: 980px;

      margin: 0 auto;

      padding: 20px;

    }

    .hero {

      display: flex;

      justify-content: space-between;

      gap: 16px;

      align-items: center;

      flex-wrap: wrap;

    }

    h1 {

      font-size: clamp(22px, 3vw, 34px);

      margin: 0 0 4px;

    }

    .subtitle {

      color: var(--muted);

      margin: 0;

      font-size: 15px;

    }

    .stats {

      display: flex;

      gap: 10px;

      flex-wrap: wrap;

      align-items: center;

    }

    .pill {

      background: var(--card);

      border: 1px solid var(--border);

      border-radius: 999px;

      padding: 8px 12px;

      font-weight: 650;

      box-shadow: 0 3px 10px rgba(15,23,42,0.04);

    }

    .toolbar {

      display: flex;

      gap: 10px;

      flex-wrap: wrap;

      margin-top: 16px;

    }

    button {

      border: 0;

      border-radius: 12px;

      padding: 10px 14px;

      cursor: pointer;

      font-weight: 700;

      background: var(--accent);

      color: white;

      transition: transform .08s ease, opacity .15s ease;

    }

    button:hover { opacity: .92; }

    button:active { transform: translateY(1px); }

    button.secondary {

      background: var(--card);

      color: var(--text);

      border: 1px solid var(--border);

    }

    .exam {

      padding-top: 22px;

      padding-bottom: 60px;

    }

    .question-card {

      background: var(--card);

      border: 1px solid var(--border);

      border-radius: 22px;

      padding: 22px;

      margin-bottom: 18px;

      box-shadow: var(--shadow);

    }

    .q-head {

      display: flex;

      justify-content: space-between;

      gap: 12px;

      align-items: flex-start;

      margin-bottom: 14px;

    }

    .q-num {

      color: var(--accent);

      font-weight: 800;

      white-space: nowrap;

    }

    .q-text {

      font-size: 17px;

      font-weight: 650;

      white-space: pre-wrap;

      flex: 1;

    }

    pre {

      background: #111827;

      color: #f9fafb;

      padding: 14px;

      border-radius: 14px;

      overflow-x: auto;

      font-size: 13px;

      line-height: 1.45;

      margin: 12px 0;

    }

    .options {

      display: grid;

      gap: 10px;

      margin-top: 12px;

    }

    .option {

      display: flex;

      gap: 10px;

      align-items: flex-start;

      width: 100%;

      text-align: left;

      background: #fff;

      color: var(--text);

      border: 1px solid var(--border);

      border-radius: 14px;

      padding: 13px 14px;

      font-weight: 560;

    }

    .option:hover:not(:disabled) {

      border-color: var(--accent);

      background: var(--accent-soft);

    }

    .option:disabled {

      cursor: default;

      opacity: .86;

    }

    .option .letter {

      min-width: 26px;

      height: 26px;

      border-radius: 999px;

      display: inline-flex;

      align-items: center;

      justify-content: center;

      border: 1px solid var(--border);

      color: var(--muted);

      font-size: 13px;

      font-weight: 800;

    }

    .option.correct-selected {

      border-color: var(--success);

      background: var(--success-bg);

    }

    .option.wrong-selected {

      border-color: var(--danger);

      background: var(--danger-bg);

    }

    .feedback {

      margin-top: 12px;

      padding: 10px 12px;

      border-radius: 12px;

      font-weight: 800;

      display: none;

    }

    .feedback.correct {

      display: block;

      color: var(--success);

      background: var(--success-bg);

      border: 1px solid rgba(4,120,87,.25);

    }

    .feedback.wrong {

      display: block;

      color: var(--danger);

      background: var(--danger-bg);

      border: 1px solid rgba(185,28,28,.2);

    }

    .question-actions {

      margin-top: 10px;

      display: none;

      gap: 10px;

      flex-wrap: wrap;

      align-items: center;

    }

    .question-actions.show { display: flex; }

    .hint {

      color: var(--muted);

      font-size: 13px;

    }

    .footer-card {

      background: var(--card);

      border: 1px solid var(--border);

      border-radius: 22px;

      padding: 22px;

      margin-top: 18px;

      box-shadow: var(--shadow);

      text-align: center;

    }

    .progress {

      width: 100%;

      height: 10px;

      border-radius: 999px;

      background: #e5e7eb;

      overflow: hidden;

      margin-top: 14px;

    }

    .progress > span {

      display: block;

      height: 100%;

      width: 0%;

      background: var(--accent);

      transition: width .2s ease;

    }

    @media print {

      header, .toolbar { position: static; }

      button { display: none; }

      .question-card { box-shadow: none; break-inside: avoid; }

      body { background: white; }

    }

  </style>

</head>

<body>

  <header>

    <div class="wrap">

      <div class="hero">

        <div>

          <h1>Practice Exam</h1>

          <p class="subtitle">Oracle Exam 1Z0-184-25 : Oracle AI Vector Search Professional Dump · Select an option and get instant feedback.</p>

        </div>

        <div class="stats">

          <div class="pill">Questions: <span id="total">0</span></div>

          <div class="pill">Correct: <span id="score">0</span></div>

          <div class="pill">Completed: <span id="done">0</span></div>

        </div>

      </div>

      <div class="progress"><span id="progressBar"></span></div>

      <div class="toolbar">

        <button onclick="resetExam()">Reset Exam</button>

        <button class="secondary" onclick="shuffleQuestions()">Shuffle Questions</button>

        <button class="secondary" onclick="window.print()">Print</button>

      </div>

    </div>

  </header>


  <main class="wrap exam" id="exam"></main>


  <script>

    const originalQuestions = [{"question": "Which statement best describes the core functionality and benefit of Retrieval Augmented Generation (RAG) in Oracle Database 23ai?", "options": ["It primarily aims to optimize the performance and efficiency of LLMs by using advanced data retrieval techniques, thus minimizing response times, and reducing computational overhead.", "It enables Large Language Models (LLMs) to access and process real-time data streams from diverse sources to generate the most up-to-date insights.", "It empowers LLMs to interact with private enterprise data stored within the database, leading to more context-aware and precise responses to user queries.", "It allows users to train their own specialized LLMs directly within the Oracle Database environment using their internal data, thereby reducing the reliance on external Al providers."], "answer": 2}, {"question": "What are the key advantages and considerations of using Retrieval Augmented Generation (RAG) in the context of Oracle Al Vector Search?", "options": ["It focuses on training specialized LLMs within the database environment for specific tasks, offering greater control over model behavior and data privacy but potentially requiring more development effort.", "It leverages existing database security and access controls, thereby enabling secure and controlled access to both the database content and the LLM.", "It excels at optimizing the performance and efficiency of LLM inference through advanced caching and precomputation techniques, leading to faster response times but potentially increasing storage requirements.", "It prioritizes real-time data extraction and summarization from various sources to ensure the LLM always has the most up-to-date information."], "answer": 1}, {"question": "When using SQL*Loader to load vector data for search applications, what is a critical consideration regarding the formatting of the vector data within the input CSV file?", "options": ["Use sparse format for vector data.", "Enclose vector components in curly braces ({).", "As FVECis a binary format and the vector dimensions have a know width, fixed offsets can be used to make parsing the vectors fast and efficient.", "Rely on SQL*Loader's automatic normalization of vector data."], "answer": 2}, {"question": "What is one type of notebook used for interacting with Select Al?", "options": ["Oracle Machine Learning (OML) Notebooks", "Wyde Rule Notebooks", "RoCE Notebooks"], "answer": 0}, {"question": "How does an application use vector similarity search to retrieve relevant information from a database, and how is this information then integrated into the generation proce:", "options": ["Clusters similar text chunks and randomly selects one from the most relevant cluster.", "Trains a separate LLM on the database and uses it to answer, ignoring the general LLM.", "Encodes the question and database chunks into vectors, finds the most similar using cosine similarity, and includes them in the LLM prompt.", "Converts the question to keywords, searches for matches, and inserts the text into the response."], "answer": 2}, {"question": "What is the function of the COSINE parameter in the SQL query used to retrieve similar vectors?\n```sql\ntopK = 3\nsql = f\"\"\"select payload, vector _distance(vector, :vector, COSINE) as score from {table name} order by score fetch approx first\n{topK} rows only\"\"\"\n```", "options": ["It filters out vectors with a cosine similarity below a certain threshold.", "It specifies the type of vector encoding used in the database.", "It indicates that the cosine distance metric should be used to measure similarity between vectors.", "It converts the vectors to a format com patible with the SQL database."], "answer": 2}, {"question": "In the following Python code, what is the significance of prepending the source filename to each text chunk before storing it in the vector database?\n```python\ndocs = [{'text': filename + ' | ' + section, 'path': filename} for filename, sections in faqs.items() for section in sections]\n# Sample the resulting data\ndocs[:2]\n```", "options": ["It speeds up the vectorization process by providing a unique identifier for each chunk.", "It improves the accuracy of the LLM by providing additional training data.", "It preserves context and aids in the retrieval process by associating each vectorized chunk with its original source file.", "It helps differentiate between chunks from different files but has no impact on vectorization."], "answer": 2}, {"question": "Which Python library is used to vectorize text chunks and the user's question in the following example?\n```python\nimport oracledb\n\nconnection = oracledb.connect(user=un, password=pw, dsn=cs)\ntable_name = 'fags'\n\nwith connection.cursor() as cursor:\n    # Create the table\n    create_table_sql = f\"\"\"\n    CREATE TABLE IF NOT EXISTS {table_name} (\n    id NUMBER PRIMARY KEY,\n    payload CLOB CHECK (payload IS JSON),\n    vector VECTOR\n    )\"\"\"\n    try:\n        cursor.execute(create_table_sql)\n    except oracledb.DatabaseError as e:\n        raise\n\nconnection.autocommit = True\n\nfrom sentence_transformers import SentenceTransformer\nencoder = SentenceTransformer(\"all-MiniLM-L12-v2\")\n\n```", "options": ["sentence_transformers", "oracledb", "oci", "json"], "answer": 1}, {"question": "Which DDL operation is NOT permitted on a table containing a VECTOR column in Oracle Database 23ai?", "options": ["Adding a new VECTOR column to the table", "Dropping an existing VECTOR column from the table", "Modifying the data type of an existing VECTOR column to a non-VECTOR type", "Creating a new table using CTAS CREATE TABLE AS SELECT that includes the VECTOR column from the original table"], "answer": 2}, {"question": "Which SQL statement correctly adds a VECTOR column named v with 4 dimensions and FLOAT32 format to an existing table named my_table?", "options": ["ALTER TABLE my_table MODIFY (v VECTOR(4, FLOAT32))", "UPDATE my_table SET v = VECTOR(4, FLOAT32)", "ALTER TABLE my_table ADD v VECTOR(4, FLOAT32)", "ALTER TABLE my_table ADD (v VECTOR(4, FLOAT32))"], "answer": 2}, {"question": "Which statement best describes the capability of Oracle Data Pump for handling vector data in the context of vector search applications?", "options": ["Because of the complexity of vector data, Data Pump requires a specialized plug-in to handle the export and import operations involving vector data types.", "Data Pump provides native support for exporting and importing tables containing vector data types, facilitating the transfer of vector data for vector search applications", "Data Pump can only export and import vector data if the vector embeddings are stored as BLOB (Binary Large Object) data types in the database.", "Data Pump treats vector embeddings as regular text strings, which can lead to data corruption or loss of precision when transferring vector data for vector search."], "answer": 1}, {"question": "Which parameter is used to define the number of closest vector candidates considered during HNSW index creation?", "options": ["VECTOR _MEMORY SIZE", "NEIGHBORS", "TARGET ACCURACY", "EFCONSTRUCTION"], "answer": 3}, {"question": "A retail company uses an Oracle Database 23ai HNSW vector index to recommend products to customers based on their browsing history.\nThe database administrator notices that the after restarting the database, product recommendations are slower.\nWhat steps should the administrator take to resolve the issue?", "options": ["Decrease the VECTOR MEMORY SIZE parameter.", "Modify the distance metric to DOT.", "Rebuild the HNSW index or enable automatic reload.", "Adjust the NEIGHBOR PARTITION PROBES parameter for improved accuracy."], "answer": 2}, {"question": "A database administrator wants to change the VECTOR_MEMORY_SIZE parameter for a pluggable database (PDB) in Oracle Database 23ai. Which SQL command is correct?", "options": ["ALTER SYSTEM SET vector memory size=1G SCOPE=SGA;", "ALTER DATABASE SET vector_memory_size=1G SCOPE=VECTOR;", "ALTER SYSTEM SET vector_memory_size=1G SCOPE=BOTH;", "ALTER SYSTEM RESET vector_memory_size;"], "answer": 0}, {"question": "Which vector index available in Oracle Database 23ai is known for its speed and accuracy, making it a preferred choice for vector search?", "options": ["Inverted File System (IFS) index", "Full-Text (FT) index", "Binary Tree (BT) index", "Hierarchical Navigable Small World (HNSW) index"], "answer": 3}, {"question": "If a query vector uses a different distance metric than the one used to create the index, what happens?", "options": ["The query fails.", "A warning is logged, but the query executes.", "The index automatically updates.", "An exact match search is triggered."], "answer": 3}, {"question": "What is the primary difference between the HNSW and IVF vector indexes in Oracle Database 23ai?", "options": ["HNSW guarantees accuracy, whereas IVF sacrifices performance for accuracy.", "HNSW is partition based, whereas IVF uses neighbor graphs for indexing.", "HNSW uses an in-memory neighbor graph for faster approximate searches, whereas IVF use the buffer cache with partitions.", "Both operate identically but differ in memory usage."], "answer": 2}, {"question": "What is a key advantage of generating vector embeddings outside the database?", "options": ["Reduced storage requirements", "Simplified data management", "Flexibility in choosing specialized embedding models", "Improved data security"], "answer": 2}, {"question": "When generating vector embeddings for a new dataset outside of Oracle Database 23ai, which factor is crucial to ensure meaningful similarity search results?", "options": ["The physical location where the vector embeddings are stored", "The choice of programming language used to process the dataset (for example, Python, Java)", "The storage format of the new dataset (for example, CSV, JSON)", "The same vector embedding model must be used for vectorizing the data and creating a query vector"], "answer": 3}, {"question": "When generating vector embeddings outside the database, what is the most suitable option for storing the embeddings for later use?", "options": ["In a binary FVEC file with the relational data in a CSV file", "In a dedicated vector database", "In a CSV file", "In the database as BLOB (Binary Large Object) data"], "answer": 1}, {"question": "What does a target accuracy of 80% in an approximate similarity search imply?", "options": ["80% accuracy seen in the index calculated distances.", "The search will process 80% of the dataset.", "80% of the query results will match the exact search results.", "Only 80% of the indexed vectors are used."], "answer": 3}, {"question": "Which is a characteristic of an approximate similarity search in Oracle Database 23ai?", "options": ["It trades off accuracy for faster performance.", "It compares every vector in the dataset.", "It always guarantees 100% accuracy.", "It is slower than exact similarity search."], "answer": 0}, {"question": "What is the primary function of an embedding model in the context of vector search?", "options": ["To execute similarity search operations within a database", "To store vectors in a structured format for efficient retrieval", "To transform text or data into numerical vector representations", "To define the schema for a vector database"], "answer": 2}, {"question": "What is the significance of using local ONNX models for embedding within the database?", "options": ["Enhanced security because data remains within the database", "Improved accuracy compared to external models", "Reduced embedding dimensions for faster processing", "Support for legacy SQL*Plus clients"], "answer": 0}, {"question": "In Oracle Database 23ai, which SQL function is used to split text into words, sentences, or paragraphs for vector embedding preparation?", "options": ["VECTOR_EMBEDDING", "VECTOR DISTANCE", "VECTOR_NORM", "VECTOR_CHUNKS"], "answer": 1}, {"question": "You are storing 1,000 embeddings in a VECTOR column, each with 256 dimensions using FLOAT32.\nWhat is the approximate size of the data on disk?", "options": ["1GB", "1MB", "4MB", "256 KB"], "answer": 1}, {"question": "You need to generate a vector from the string '[1.2, 3.4]' in FLOAT32 format with 2 dimensions.\nWhich function will you use?", "options": ["TO_VECTOR", "VECTOR_SERIALIZE", "FROM_VECTOR", "VECTOR_DISTANCE"], "answer": 0}, {"question": "Which function should you use to determine the storage format of a vector?", "options": ["VECTOR_NORM", "VECTOR _EMBEDDING", "VECTOR_CHUNKS", "VECTOR_DIMENSION_FORMAT"], "answer": 3}, {"question": "What happens when querying with an IVF index if you increase the value of the NEIGHBOR PARTITION PROBES parameter?", "options": ["The number of centroids decreases.", "Accuracy decreases.", "More partitions are probed, improving accuracy, but also increasing query latency.", "Index creation time is reduced."], "answer": 2}, {"question": "machine learning team is using IVF indexes in Oracle Database 23ai to find similar images in a large dataset.\nDuring testing, they observe that the search results are often incomplete, missing relevant images. They suspect the issue lies in the number of partitions probed.\nHow should they improve the search accuracy?", "options": ["Increase the VECTOR_MEMORY_S1ZE initialization parameter.", "Change the index type to HNSW for better accuracy.", "Re-create the index with a higher EFCONSTRUCTION value.", "Add the TARGET ACCURACY clause to the query with a higher value for the accuracy."], "answer": 3}, {"question": "Which SQL statement will successfully insert a vector into a table named my_table with a single VECTOR column named v?", "options": ["INSERT INTO my_table VALUES ('{1.1, 2.2, 3.3}')", "INSERT INTO my_table (v) VALUES (1.1, 2.2, 3.3)", "INSERT INTO my_table VALUES ((1.1, 2.2, 3.3))", "INSERT INTO my_table (v) VALUES ('[1.1, 2.2, 3.3]')"], "answer": 0}, {"question": "What happens when you attempt to insert a vector with an incorrect number of dimensions into a VECTOR column with a defined number of dimensions?", "options": ["The insert operation fails, and an error message is thrown.", "The database ignores the defined dimensions and inserts the vector as is.", "The database truncates the vector to fit the defined dimensions.", "The database pads the vector with zeros to match the defined dimensions."], "answer": 0}, {"question": "What is the primary function of Select Al in Oracle Autonomous Database?", "options": ["To provide real-time data visualization and reporting tools integrated with Autonomous Database", "To eliminate the need for SQL expertise by enabling users to query data using natural language", "To eliminate the need for manual coding by automatically generating SQL queries for complex data analysis tasks", "To improve the efficiency of Al applications by training machine learning models directly within the database"], "answer": 3}, {"question": "How is the security interaction between Autonomous Database and OCI Generative Al managed in the context of Select Al?", "options": ["By utilizing Resource Principals, which grant the Autonomous Database instance access to OCI Generative AI without exposing sensitive credentials", "By requiring users to manually enter their OCI API keys each time they execute a natural language query", "By establishing a secure VPN tunnel between the Autonomous Database and OCI Generative Al service", "By encrypting all communication between the Autonomous Database and OC! Generative Al using TLS/SSL protocols"], "answer": 0}, {"question": "Which Oracle Cloud Infrastructure (OCI) service is directly integrated with Select AI?", "options": ["OCI Generative Al", "OCI Vision", "OCI Language", "OCI Data Science"], "answer": 0}, {"question": "Which is NOT a feature or capability related to AI and Vector Search in Exadata?", "options": ["AI Smart Scan", "Native Support for Vector Search Only within the Database Server", "Vector Replication with GoldenGate", "Loading Vector Data using SQL*Loader"], "answer": 1}, {"question": "Why would you choose to NOT define a specific size for the VECTOR column during development?", "options": ["It impacts the accuracy of similarity searches.", "It restricts the database to a single embedding model.", "It limits the length of text that can be vectorized.", "Different external embedding models produce vectors with varying dimensions and data types."], "answer": 3}, {"question": "In Oracle Database 23ai, which data type is used to store vector embeddings for similarity search?", "options": ["BLOB", "VARCHAR2", "VECTOR2", "VECTOR"], "answer": 3}, {"question": "What is the primary purpose of a similarity search in Oracle Database 23ai?", "options": ["To find exact matches in BLOB data", "To retrieve the most semantically similar entries using distance metrics between different vectors.", "To optimize relational database operations", "To compute distances between all data points in a database"], "answer": 1}, {"question": "What is the advantage of using Euclidean Squared Distance rather than Euclidean Distance in similarity search queries?", "options": ["It guarantees higher accuracy than Euclidean Distance.", "It is the default distance metric for Oracle Al Vector Search.", "It supports hierarchical partitioning of vectors.", "It is simpler and faster because it avoids square-root calculations."], "answer": 3}, {"question": "Which SQL query would retrieve the top-10 vectors based on Euclidean distance using exact similarity search?", "options": ["SELECT docID FROM vector_tab\nGROUP BY VECTOR_DISTANCE (embedding, :query_vector, EUCLIDEAN)\nFETCH FIRST 10 ROWS ONLY;", "SELECT docID FROM vector_tab\nORDER BY VECTOR_DISTANCE (embedding, :query_vector, COSINE)\nFETCH EMACT FIRST 10 ROWS ONLY;", "SELECT docID FROM vector_tab\nORDER BY VECTOR_DISTANCE (embedding, :query_vector, EUCLIDEAN)\nFETCH EXACT FIRST 10 ROWS ONLY;", "SELECT docID FROM vector_tab\nWHERE VECTOR DISTANCE (embedding, :query_vector, EUCLIDEAN) < 10;"], "answer": 0}, {"question": "What is the purpose of the VECTOR_DISTANCE function in Oracle Database 23ai similarity search?", "options": ["To create vector indexes for efficient searches", "To group vectors by their exact scores", "To calculate the distance between vectors using a specified metric", "To fetch rows that match exact vector embeddings"], "answer": 2}, {"question": "Which SQL function is used to create a vector embedding for a given text string in Oracle Database 23ai?", "options": ["CREATE_VECTOR_EMBEDDING", "GENERATE_EMBEDDING", "EMBED_TEXT", "VECTOR_EMBEDDING"], "answer": 3}, {"question": "Which PL/SQL function converts documents such as PDF, DOC, JSON, XML, or HTML to plain text?", "options": ["DBMS_VECTOR_CHAIN.UTL_TO_TEXT", "DBMS_VECTOR_CHAIN.UTIL_TO_CHUNKS", "DBMS_VECTOR.TEXT_TO_PLAIN", "DBMS_VECTOR.CONVERT_TO_TEXT"], "answer": 0}, {"question": "Which PL/SQL package Is primarily used for interacting with Generative Al services in Oracle Database 23ai?", "options": ["DBMS_VECTOR_CHAIN", "DBMS_AI", "DBMS_GENAI", "DBMS_ML"], "answer": 0}, {"question": "What is the primary purpose of the DBMS_VECTOR_CHAIN.UTL_TO_CHUNKS package in a RAG application?", "options": ["To load a document into the database", "To convert a document into a single, large text string", "To generate vector embeddings from a text document", "To split a large document into smaller chunks to improve vector quality by minimizing token truncation"], "answer": 3}, {"question": "An application needs to fetch the top-3 matching sentences from a dataset of books while ensuring a balance between speed and accuracy.\nWhich query structure should you use?", "options": ["Multivector similarity search with approximate fetching and target accuracy", "Approximate similarity search with the VECTOR_DISTANCE function", "Exact similarity search with Euclidean distance", "A combination of relational filters and similarity search"], "answer": 0}, {"question": "You are tasked with finding the closest matching sentences across books, where each book has multiple paragraphs and sentences.\nWhich SQL structure should you use?", "options": ["A nested query with ORDER BY", "Exact similarity search with a single query vector", "GROUP BY with vector operations", "FETCH PARTITIONS BY clause"], "answer": 3}, {"question": "What is the default distance metric used by the VECTOR_DISTANCE function if none is specified?", "options": ["Manhattan", "Cosine", "Euclidean", "Hamming"], "answer": 2}, {"question": "In Oracle Database 23ai, which SQL function calculates the distance between two vectors using the Euclidean metric?", "options": ["HAMMING_DISTANCE", "L1_DISTANCE", "COSINE_DISTANCE", "L2_DISTANCE"], "answer": 3}];

    let questions = JSON.parse(JSON.stringify(originalQuestions));

    let completed = new Set();

    let correct = new Set();


    const letters = ["A", "B", "C", "D", "E", "F"];


    function escapeHtml(str) {

      return String(str)

        .replaceAll("&", "&amp;")

        .replaceAll("<", "&lt;")

        .replaceAll(">", "&gt;")

        .replaceAll('"', "&quot;")

        .replaceAll("'", "&#039;");

    }


    function renderMarkdownLite(text) {

      const parts = String(text).split(/```([\s\S]*?)```/g);

      return parts.map((part, i) => {

        if (i % 2 === 1) {

          return `<pre><code>${escapeHtml(part.trim())}</code></pre>`;

        }

        return escapeHtml(part).replace(/\n/g, "<br>");

      }).join("");

    }


    function updateStats() {

      document.getElementById("total").textContent = questions.length;

      document.getElementById("score").textContent = correct.size;

      document.getElementById("done").textContent = completed.size;

      const pct = questions.length ? (completed.size / questions.length) * 100 : 0;

      document.getElementById("progressBar").style.width = pct + "%";

    }


    function renderExam() {

      const exam = document.getElementById("exam");

      exam.innerHTML = "";

      questions.forEach((q, qi) => {

        const card = document.createElement("section");

        card.className = "question-card";

        card.dataset.qi = qi;

        card.innerHTML = `

          <div class="q-head">

            <div class="q-num">Question ${qi + 1}</div>

            <div class="q-text">${renderMarkdownLite(q.question)}</div>

          </div>

          <div class="options">

            ${q.options.map((opt, oi) => `

              <button class="option" onclick="selectAnswer(${qi}, ${oi}, this)">

                <span class="letter">${letters[oi]}</span>

                <span>${renderMarkdownLite(opt)}</span>

              </button>

            `).join("")}

          </div>

          <div class="feedback" id="feedback-${qi}"></div>

          <div class="question-actions" id="actions-${qi}">

            <button class="secondary" onclick="shuffleQuestions()">Shuffle Question Sequence</button>

            <span class="hint">Use this after any attempt to practice in a fresh order.</span>

          </div>

        `;

        exam.appendChild(card);

      });


      const footer = document.createElement("div");

      footer.className = "footer-card";

      footer.innerHTML = `<strong>Finish all questions to complete your practice exam.</strong><br><span class="subtitle">Wrong attempts are not counted in the score. A question is completed only after selecting the correct answer.</span>`;

      exam.appendChild(footer);

      if (actions) actions.classList.add("show");


      updateStats();

    }


    function selectAnswer(qi, oi, btn) {

      if (completed.has(qi)) return;

      const q = questions[qi];

      const feedback = document.getElementById(`feedback-${qi}`);

      const card = document.querySelector(`.question-card[data-qi="${qi}"]`);

      const buttons = card.querySelectorAll(".option");

      const actions = document.getElementById(`actions-${qi}`);


      buttons.forEach(b => b.classList.remove("wrong-selected"));


      if (oi === q.answer) {

        completed.add(qi);

        correct.add(qi);

        btn.classList.add("correct-selected");

        feedback.className = "feedback correct";

        feedback.textContent = "Correct! Good job.";

        buttons.forEach(b => b.disabled = true);

      } else {

        btn.classList.add("wrong-selected");

        feedback.className = "feedback wrong";

        feedback.textContent = "Incorrect. Try again.";

      }


      updateStats();


      if (completed.size === questions.length) {

        setTimeout(() => {

          alert(`Practice exam completed! Score: ${correct.size} / ${questions.length}`);

        }, 200);

      }

    }


    function resetExam() {

      completed = new Set();

      correct = new Set();

      renderExam();

      window.scrollTo({ top: 0, behavior: "smooth" });

    }


    function shuffleQuestions() {

      for (let i = questions.length - 1; i > 0; i--) {

        const j = Math.floor(Math.random() * (i + 1));

        [questions[i], questions[j]] = [questions[j], questions[i]];

      }

      resetExam();

    }


    renderExam();

  </script>

</body>

</html>


Posted By Nikhil05:52