SlideShare a Scribd company logo
APPLICATIONS OF ADVANCED
        DATA STRUCTURES




1                     9/3/2012
Index-Sequential File Organization

       Index-Sequential files are files (which holds
        information for data) ordered sequentially on a
        search key.

       Main disadvantage is that performance degrades as
        file size grows for lookups and sequential scans.

       Degradation can be fixed with reorganization of the
        file. Reorganization require lot of overhead space so
        frequent reorganization is undesirable.



    2                                         9/3/2012
3   9/3/2012
       An index speeds up certain queries or searches
        because it stores information about where data is
        stored on the disc. The index points directly to the
        location of a record on the disc and can be used to
        avoid searching a large file.
       The DBMS represents data as records in a table.
        However, a disc stores data in blocks, or pages.
        Many records may be placed in one block or one
        record may be placed across many blocks.
       The computer can only transfer one block at a time
        between main memory and the disc.

    4                                        9/3/2012
       The problem for the DBMS is to decide in which
        block each record should be placed and what
        information should be stored in addition to the record
        to allow the record to be retrieved easily.




    5                                          9/3/2012
6   9/3/2012
       But when the number of indexed values is large, the
        index will not fit in one block. Therefore, the contents
        of the index must be placed in two or more blocks.
       The solution to this problem is to create an index of
        an index. That is, the single index is split into a
        number of blocks and a new index is created that
        indexes each block.
       The B+-Tree structure is an index of an index, called
        multi-level index.




    7                                           9/3/2012
8   9/3/2012
Dynamic Multilevel Indexes Using B-Trees
                and B+-Trees
       Because of the insertion and deletion problem, most
        multi-level indexes use B-tree or B+-tree data
        structures, which leave space in each tree node (disk
        block) to allow for new index entries

       These data structures are variations of search trees
        that allow efficient insertion and deletion of new search
        values.

       In B-Tree and B+-Tree data structures, each node
        corresponds to a disk block

       Each node is kept between half-full and completely full


    9                                            9/3/2012
Dynamic Multilevel Indexes Using B-Trees
                and B+-Trees
    An insertion into a node that is not full is quite
     efficient; if a node is full the insertion causes a split
     into two nodes
    Splitting may propagate to other tree levels
    A deletion is quite efficient if a node does not become
     less than half full
    If a deletion causes a node to become less than half
     full, it must be merged with neighboring nodes


    10                                        9/3/2012
The nodes of a B+-tree. (a) Internal node of a B+-tree with q
–1 search values. (b) Leaf node of a B+-tree with q – 1 search
               values and q – 1 data pointers.




11                                           9/3/2012
root


                                       EMBRY
Index set



                BOLEN       CAMP                      FABER       FOLKS




 ADAMS-BERNE                CAMP-DUTTON   EMBRY-EVANS                FOLKS-GADDIS

     1         BOLEN-CAGE
                                   3           4        FABER-FOLK
                                                                             6

                    2                                         5


     12                                                   9/3/2012
B+ Tree Result
 First level (root level)                  6144
      
                                                                                          Node
 Second level
                            3718    4161                      7409   7422    7917
 Third level
 (leaf level)

2014 2019 3147          3718 3904          4161 4162                                7422 7602         7917 8003 8193




                                                       6144 7329            7409 7418




                                                                   empno     lastname           job      …
                                                              7409            vicky        CLERK         …


    13                                                                                  9/3/2012
Advantages of using B+ Trees in database
    high fanout / low depth

    simple and consistent block storage

    high key density




    14                                     9/3/2012
15   9/3/2012
ABOUT GOOGLE SEARCH:
   Normally in the Google search:
       Every word matters (Except ‘stop words’). All the words that
        you type in the search box are used by Google.


       Word order will also become more important, as the first
        word entered will dictate which results are shown first.

       The search is case-insensitive i.e. Google does not find any
        difference between CAPITAL and capital.

       Generally, punctuations or special characters like ~, !, @, #, $,
        (, ), {, }, [, ],  are ignored.
   Google ignores some words (stop words) such as I, a,
    about, an, are, the, etc.,
16                                                    9/3/2012
EARLIER GOOGLE SEARCH:
 We   had to,
    Use the words that we think are most likely to appear on
     the page.


    Use descriptive words. The accuracy of results depends
     on the uniqueness of the description.

    Use as fewer words as possible. Since a combination of
     many words may limit your search results.




17                                           9/3/2012
“Google took a much more active role in
     leading searchers to not just the answer,
           but also the question itself.”
18                                    9/3/2012
ABOUT GOOGLE INSTANT:
    When the user begins typing their query into the
     Google search box, Google will display a short list of
     predicted queries that are related to the letters the
     user has started to type in.
    As the user types these predictions may change
     depending on the characters being entered.
    Not only the suggestions, the search results also
     keeps changing without the press of the Enter key as
     the user enters queries.
    15 new technologies contribute to Google Instant
     functionality.

    19                                      9/3/2012
DATA STRUCTURE IN GI:



¢    a b c d e f g   …………………………………………………..    z ¶




20                                 9/3/2012
This is a trie for keys
  “A”,
  “to”,
  “tea”,
  “ted”,
  “ten”,
  “i”,
  “in”, and
  “inn”.


 21                        9/3/2012
 When    we need to do auto complete for the starting
  characters, “te”, we need to get output tea, ted and
  ten.
 Instead of checking regular expression match for all
  the words in the database, it will make use of
  transitions.
 First character is t. Then in the root element, it will
  make transition for „t‟ so that it will reach the node
  with data „t‟, then at node „t‟, it will make transition for
  next node „e‟.
 At that point, we need to follow all paths from node
  „e‟ to leaf nodes so that we can get the paths t->e-
  >a, t->e->d and t->e->n.
  This is the basic algorithm behind implementing an
22                                           9/3/2012
  efficient auto complete.
23   9/3/2012
FASTER SEARCHES:
    Before Google Instant, the typical searcher took
     more than 9 seconds to enter a search term.

    We can see many examples of searches that takes
     30-90 seconds to type.

    Using Google Instant can save 2-5 seconds per
     search.

    If everyone uses Google Instant globally, Google
     estimates that this will save more than 3.5 billion
     seconds a day (that's 11 hours saved every second).
    24                                    9/3/2012
SMARTER PREDICTIONS:

    Even when we don‟t know exactly what we are
     looking for, predictions guides our search.

    The top prediction is shown in grey text in the
     search box, so that we can stop typing as soon
     as we see what we need.




    25                                 9/3/2012
INSTANT RESULTS:

    As we start typing the query and the results appear
     at once.

    But before the GI we had to type a full search term,
     hit enter, and hope for the right result.

    Now the results appear instantly, helping us to head
     to our search much more easier and faster in a
     simpler way.

    It‟s really amazing that GI goes through more than
     6000 words per second.
    26                                    9/3/2012
CONTRIBUTING FACTORS:

    Query volume.

    Geography of searchers.

    Keywords or phrases mentioned.



                                             video


    27                                9/3/2012
28   9/3/2012

More Related Content

Viewers also liked

Object-oriented concepts
Object-oriented conceptsObject-oriented concepts
Object-oriented concepts
BG Java EE Course
 
Oop c++class(final).ppt
Oop c++class(final).pptOop c++class(final).ppt
Oop c++class(final).pptAlok Kumar
 
Object oriented programming (oop) cs304 power point slides lecture 01
Object oriented programming (oop)   cs304 power point slides lecture 01Object oriented programming (oop)   cs304 power point slides lecture 01
Object oriented programming (oop) cs304 power point slides lecture 01
Adil Kakakhel
 
Data Structure
Data StructureData Structure
Data Structure
Karthikeyan A K
 
Maths sets ppt
Maths sets pptMaths sets ppt
Maths sets ppt
Akshit Saxena
 
SET THEORY
SET THEORYSET THEORY
SET THEORYLena
 
C Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpointC Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpoint
JavaTpoint.Com
 
DATA STRUCTURES
DATA STRUCTURESDATA STRUCTURES
DATA STRUCTURES
bca2010
 
Object Oriented Programming Concepts
Object Oriented Programming ConceptsObject Oriented Programming Concepts
Object Oriented Programming Conceptsthinkphp
 
Basic Concept Of Probability
Basic Concept Of ProbabilityBasic Concept Of Probability
Basic Concept Of Probabilityguest45a926
 
Microprogram Control
Microprogram Control Microprogram Control
Microprogram Control Anuj Modi
 
INTRODUCTION TO C PROGRAMMING
INTRODUCTION TO C PROGRAMMINGINTRODUCTION TO C PROGRAMMING
INTRODUCTION TO C PROGRAMMING
Abhishek Dwivedi
 

Viewers also liked (20)

Secondary Storage
Secondary StorageSecondary Storage
Secondary Storage
 
Memory organization
Memory organizationMemory organization
Memory organization
 
Object-oriented concepts
Object-oriented conceptsObject-oriented concepts
Object-oriented concepts
 
Oop c++class(final).ppt
Oop c++class(final).pptOop c++class(final).ppt
Oop c++class(final).ppt
 
Object oriented programming (oop) cs304 power point slides lecture 01
Object oriented programming (oop)   cs304 power point slides lecture 01Object oriented programming (oop)   cs304 power point slides lecture 01
Object oriented programming (oop) cs304 power point slides lecture 01
 
C notes.pdf
C notes.pdfC notes.pdf
C notes.pdf
 
Data Structure
Data StructureData Structure
Data Structure
 
Cache memory presentation
Cache memory presentationCache memory presentation
Cache memory presentation
 
C ppt
C pptC ppt
C ppt
 
Introduction to C Programming
Introduction to C ProgrammingIntroduction to C Programming
Introduction to C Programming
 
Probability concept and Probability distribution
Probability concept and Probability distributionProbability concept and Probability distribution
Probability concept and Probability distribution
 
Maths sets ppt
Maths sets pptMaths sets ppt
Maths sets ppt
 
SET THEORY
SET THEORYSET THEORY
SET THEORY
 
C Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpointC Programming Language Tutorial for beginners - JavaTpoint
C Programming Language Tutorial for beginners - JavaTpoint
 
Oops ppt
Oops pptOops ppt
Oops ppt
 
DATA STRUCTURES
DATA STRUCTURESDATA STRUCTURES
DATA STRUCTURES
 
Object Oriented Programming Concepts
Object Oriented Programming ConceptsObject Oriented Programming Concepts
Object Oriented Programming Concepts
 
Basic Concept Of Probability
Basic Concept Of ProbabilityBasic Concept Of Probability
Basic Concept Of Probability
 
Microprogram Control
Microprogram Control Microprogram Control
Microprogram Control
 
INTRODUCTION TO C PROGRAMMING
INTRODUCTION TO C PROGRAMMINGINTRODUCTION TO C PROGRAMMING
INTRODUCTION TO C PROGRAMMING
 

Similar to Ads applications of ads

Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)
Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)
Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)
Jeffrey Breen
 
Hadoop Design Patterns
Hadoop Design PatternsHadoop Design Patterns
Hadoop Design Patterns
EMC
 
Range Query on Big Data Based on Map Reduce
Range Query on Big Data Based on Map ReduceRange Query on Big Data Based on Map Reduce
Range Query on Big Data Based on Map Reduce
IJMER
 
Databricks for Dummies
Databricks for DummiesDatabricks for Dummies
Databricks for Dummies
Rodney Joyce
 
Data Analysis using Data Flux
Data Analysis using Data FluxData Analysis using Data Flux
Data Analysis using Data FluxSunil Pai
 
CCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptx
CCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptxCCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptx
CCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptx
Asst.prof M.Gokilavani
 
Data Con LA 2022 - Open Source Large Knowledge Graph Factory
Data Con LA 2022 - Open Source Large Knowledge Graph FactoryData Con LA 2022 - Open Source Large Knowledge Graph Factory
Data Con LA 2022 - Open Source Large Knowledge Graph Factory
Data Con LA
 
Azure data stack_2019_08
Azure data stack_2019_08Azure data stack_2019_08
Azure data stack_2019_08
Alexandre BERGERE
 
An introduction to Hadoop for large scale data analysis
An introduction to Hadoop for large scale data analysisAn introduction to Hadoop for large scale data analysis
An introduction to Hadoop for large scale data analysisAbhijit Sharma
 
CLOUD DATABASE DATABASE AS A SERVICE
CLOUD DATABASE DATABASE AS A SERVICECLOUD DATABASE DATABASE AS A SERVICE
CLOUD DATABASE DATABASE AS A SERVICE
ijdms
 
Data Base Management System(Dbms)Sunita
Data Base Management System(Dbms)SunitaData Base Management System(Dbms)Sunita
Data Base Management System(Dbms)SunitaApex
 
ADBMS 19MCA8125.pdf
ADBMS 19MCA8125.pdfADBMS 19MCA8125.pdf
ADBMS 19MCA8125.pdf
19BAG7124SAHIL
 
Performance Improvement of Heterogeneous Hadoop Cluster using Ranking Algorithm
Performance Improvement of Heterogeneous Hadoop Cluster using Ranking AlgorithmPerformance Improvement of Heterogeneous Hadoop Cluster using Ranking Algorithm
Performance Improvement of Heterogeneous Hadoop Cluster using Ranking Algorithm
IRJET Journal
 
Teradata Aster Discovery Platform
Teradata Aster Discovery PlatformTeradata Aster Discovery Platform
Teradata Aster Discovery Platform
Scott Antony
 
High Dimensional Indexing using MongoDB (MongoSV 2012)
High Dimensional Indexing using MongoDB (MongoSV 2012)High Dimensional Indexing using MongoDB (MongoSV 2012)
High Dimensional Indexing using MongoDB (MongoSV 2012)Nicholas Knize, Ph.D., GISP
 
DBMS outline.pptx
DBMS outline.pptxDBMS outline.pptx
DBMS outline.pptx
DrThenmozhiKarunanit
 
Multidimensional Database Design & Architecture
Multidimensional Database Design & ArchitectureMultidimensional Database Design & Architecture
Multidimensional Database Design & Architecture
hasanshan
 
Big Data with Hadoop – For Data Management, Processing and Storing
Big Data with Hadoop – For Data Management, Processing and StoringBig Data with Hadoop – For Data Management, Processing and Storing
Big Data with Hadoop – For Data Management, Processing and Storing
IRJET Journal
 
Normalisation in Database management System (DBMS)
Normalisation in Database management System (DBMS)Normalisation in Database management System (DBMS)
Normalisation in Database management System (DBMS)
Prof Ansari
 
PATTERNS07 - Data Representation in C#
PATTERNS07 - Data Representation in C#PATTERNS07 - Data Representation in C#
PATTERNS07 - Data Representation in C#
Michael Heron
 

Similar to Ads applications of ads (20)

Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)
Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)
Big Data Step-by-Step: Using R & Hadoop (with RHadoop's rmr package)
 
Hadoop Design Patterns
Hadoop Design PatternsHadoop Design Patterns
Hadoop Design Patterns
 
Range Query on Big Data Based on Map Reduce
Range Query on Big Data Based on Map ReduceRange Query on Big Data Based on Map Reduce
Range Query on Big Data Based on Map Reduce
 
Databricks for Dummies
Databricks for DummiesDatabricks for Dummies
Databricks for Dummies
 
Data Analysis using Data Flux
Data Analysis using Data FluxData Analysis using Data Flux
Data Analysis using Data Flux
 
CCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptx
CCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptxCCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptx
CCS334 BIG DATA ANALYTICS Session 3 Distributed models.pptx
 
Data Con LA 2022 - Open Source Large Knowledge Graph Factory
Data Con LA 2022 - Open Source Large Knowledge Graph FactoryData Con LA 2022 - Open Source Large Knowledge Graph Factory
Data Con LA 2022 - Open Source Large Knowledge Graph Factory
 
Azure data stack_2019_08
Azure data stack_2019_08Azure data stack_2019_08
Azure data stack_2019_08
 
An introduction to Hadoop for large scale data analysis
An introduction to Hadoop for large scale data analysisAn introduction to Hadoop for large scale data analysis
An introduction to Hadoop for large scale data analysis
 
CLOUD DATABASE DATABASE AS A SERVICE
CLOUD DATABASE DATABASE AS A SERVICECLOUD DATABASE DATABASE AS A SERVICE
CLOUD DATABASE DATABASE AS A SERVICE
 
Data Base Management System(Dbms)Sunita
Data Base Management System(Dbms)SunitaData Base Management System(Dbms)Sunita
Data Base Management System(Dbms)Sunita
 
ADBMS 19MCA8125.pdf
ADBMS 19MCA8125.pdfADBMS 19MCA8125.pdf
ADBMS 19MCA8125.pdf
 
Performance Improvement of Heterogeneous Hadoop Cluster using Ranking Algorithm
Performance Improvement of Heterogeneous Hadoop Cluster using Ranking AlgorithmPerformance Improvement of Heterogeneous Hadoop Cluster using Ranking Algorithm
Performance Improvement of Heterogeneous Hadoop Cluster using Ranking Algorithm
 
Teradata Aster Discovery Platform
Teradata Aster Discovery PlatformTeradata Aster Discovery Platform
Teradata Aster Discovery Platform
 
High Dimensional Indexing using MongoDB (MongoSV 2012)
High Dimensional Indexing using MongoDB (MongoSV 2012)High Dimensional Indexing using MongoDB (MongoSV 2012)
High Dimensional Indexing using MongoDB (MongoSV 2012)
 
DBMS outline.pptx
DBMS outline.pptxDBMS outline.pptx
DBMS outline.pptx
 
Multidimensional Database Design & Architecture
Multidimensional Database Design & ArchitectureMultidimensional Database Design & Architecture
Multidimensional Database Design & Architecture
 
Big Data with Hadoop – For Data Management, Processing and Storing
Big Data with Hadoop – For Data Management, Processing and StoringBig Data with Hadoop – For Data Management, Processing and Storing
Big Data with Hadoop – For Data Management, Processing and Storing
 
Normalisation in Database management System (DBMS)
Normalisation in Database management System (DBMS)Normalisation in Database management System (DBMS)
Normalisation in Database management System (DBMS)
 
PATTERNS07 - Data Representation in C#
PATTERNS07 - Data Representation in C#PATTERNS07 - Data Representation in C#
PATTERNS07 - Data Representation in C#
 

More from Tech_MX

Virtual base class
Virtual base classVirtual base class
Virtual base classTech_MX
 
Theory of estimation
Theory of estimationTheory of estimation
Theory of estimationTech_MX
 
Templates in C++
Templates in C++Templates in C++
Templates in C++Tech_MX
 
String & its application
String & its applicationString & its application
String & its applicationTech_MX
 
Statistical quality__control_2
Statistical  quality__control_2Statistical  quality__control_2
Statistical quality__control_2Tech_MX
 
Stack data structure
Stack data structureStack data structure
Stack data structureTech_MX
 
Stack Data Structure & It's Application
Stack Data Structure & It's Application Stack Data Structure & It's Application
Stack Data Structure & It's Application Tech_MX
 
Spanning trees & applications
Spanning trees & applicationsSpanning trees & applications
Spanning trees & applicationsTech_MX
 
Set data structure 2
Set data structure 2Set data structure 2
Set data structure 2Tech_MX
 
Set data structure
Set data structure Set data structure
Set data structure Tech_MX
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating SystemTech_MX
 
Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Tech_MX
 
Motherboard of a pc
Motherboard of a pcMotherboard of a pc
Motherboard of a pcTech_MX
 
More on Lex
More on LexMore on Lex
More on LexTech_MX
 
MultiMedia dbms
MultiMedia dbmsMultiMedia dbms
MultiMedia dbmsTech_MX
 
Merging files (Data Structure)
Merging files (Data Structure)Merging files (Data Structure)
Merging files (Data Structure)Tech_MX
 
Memory dbms
Memory dbmsMemory dbms
Memory dbmsTech_MX
 

More from Tech_MX (20)

Virtual base class
Virtual base classVirtual base class
Virtual base class
 
Uid
UidUid
Uid
 
Theory of estimation
Theory of estimationTheory of estimation
Theory of estimation
 
Templates in C++
Templates in C++Templates in C++
Templates in C++
 
String & its application
String & its applicationString & its application
String & its application
 
Statistical quality__control_2
Statistical  quality__control_2Statistical  quality__control_2
Statistical quality__control_2
 
Stack data structure
Stack data structureStack data structure
Stack data structure
 
Stack Data Structure & It's Application
Stack Data Structure & It's Application Stack Data Structure & It's Application
Stack Data Structure & It's Application
 
Spss
SpssSpss
Spss
 
Spanning trees & applications
Spanning trees & applicationsSpanning trees & applications
Spanning trees & applications
 
Set data structure 2
Set data structure 2Set data structure 2
Set data structure 2
 
Set data structure
Set data structure Set data structure
Set data structure
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating System
 
Parsing
ParsingParsing
Parsing
 
Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)
 
Motherboard of a pc
Motherboard of a pcMotherboard of a pc
Motherboard of a pc
 
More on Lex
More on LexMore on Lex
More on Lex
 
MultiMedia dbms
MultiMedia dbmsMultiMedia dbms
MultiMedia dbms
 
Merging files (Data Structure)
Merging files (Data Structure)Merging files (Data Structure)
Merging files (Data Structure)
 
Memory dbms
Memory dbmsMemory dbms
Memory dbms
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 

Ads applications of ads

  • 1. APPLICATIONS OF ADVANCED DATA STRUCTURES 1 9/3/2012
  • 2. Index-Sequential File Organization  Index-Sequential files are files (which holds information for data) ordered sequentially on a search key.  Main disadvantage is that performance degrades as file size grows for lookups and sequential scans.  Degradation can be fixed with reorganization of the file. Reorganization require lot of overhead space so frequent reorganization is undesirable. 2 9/3/2012
  • 3. 3 9/3/2012
  • 4. An index speeds up certain queries or searches because it stores information about where data is stored on the disc. The index points directly to the location of a record on the disc and can be used to avoid searching a large file.  The DBMS represents data as records in a table. However, a disc stores data in blocks, or pages. Many records may be placed in one block or one record may be placed across many blocks.  The computer can only transfer one block at a time between main memory and the disc. 4 9/3/2012
  • 5. The problem for the DBMS is to decide in which block each record should be placed and what information should be stored in addition to the record to allow the record to be retrieved easily. 5 9/3/2012
  • 6. 6 9/3/2012
  • 7. But when the number of indexed values is large, the index will not fit in one block. Therefore, the contents of the index must be placed in two or more blocks.  The solution to this problem is to create an index of an index. That is, the single index is split into a number of blocks and a new index is created that indexes each block.  The B+-Tree structure is an index of an index, called multi-level index. 7 9/3/2012
  • 8. 8 9/3/2012
  • 9. Dynamic Multilevel Indexes Using B-Trees and B+-Trees  Because of the insertion and deletion problem, most multi-level indexes use B-tree or B+-tree data structures, which leave space in each tree node (disk block) to allow for new index entries  These data structures are variations of search trees that allow efficient insertion and deletion of new search values.  In B-Tree and B+-Tree data structures, each node corresponds to a disk block  Each node is kept between half-full and completely full 9 9/3/2012
  • 10. Dynamic Multilevel Indexes Using B-Trees and B+-Trees  An insertion into a node that is not full is quite efficient; if a node is full the insertion causes a split into two nodes  Splitting may propagate to other tree levels  A deletion is quite efficient if a node does not become less than half full  If a deletion causes a node to become less than half full, it must be merged with neighboring nodes 10 9/3/2012
  • 11. The nodes of a B+-tree. (a) Internal node of a B+-tree with q –1 search values. (b) Leaf node of a B+-tree with q – 1 search values and q – 1 data pointers. 11 9/3/2012
  • 12. root EMBRY Index set BOLEN CAMP FABER FOLKS ADAMS-BERNE CAMP-DUTTON EMBRY-EVANS FOLKS-GADDIS 1 BOLEN-CAGE 3 4 FABER-FOLK 6 2 5 12 9/3/2012
  • 13. B+ Tree Result First level (root level) 6144  Node Second level 3718 4161 7409 7422 7917 Third level (leaf level) 2014 2019 3147 3718 3904 4161 4162 7422 7602 7917 8003 8193 6144 7329 7409 7418 empno lastname job … 7409 vicky CLERK … 13 9/3/2012
  • 14. Advantages of using B+ Trees in database  high fanout / low depth  simple and consistent block storage  high key density 14 9/3/2012
  • 15. 15 9/3/2012
  • 16. ABOUT GOOGLE SEARCH:  Normally in the Google search:  Every word matters (Except ‘stop words’). All the words that you type in the search box are used by Google.  Word order will also become more important, as the first word entered will dictate which results are shown first.  The search is case-insensitive i.e. Google does not find any difference between CAPITAL and capital.  Generally, punctuations or special characters like ~, !, @, #, $, (, ), {, }, [, ], are ignored.  Google ignores some words (stop words) such as I, a, about, an, are, the, etc., 16 9/3/2012
  • 17. EARLIER GOOGLE SEARCH:  We had to,  Use the words that we think are most likely to appear on the page.  Use descriptive words. The accuracy of results depends on the uniqueness of the description.  Use as fewer words as possible. Since a combination of many words may limit your search results. 17 9/3/2012
  • 18. “Google took a much more active role in leading searchers to not just the answer, but also the question itself.” 18 9/3/2012
  • 19. ABOUT GOOGLE INSTANT:  When the user begins typing their query into the Google search box, Google will display a short list of predicted queries that are related to the letters the user has started to type in.  As the user types these predictions may change depending on the characters being entered.  Not only the suggestions, the search results also keeps changing without the press of the Enter key as the user enters queries.  15 new technologies contribute to Google Instant functionality. 19 9/3/2012
  • 20. DATA STRUCTURE IN GI: ¢ a b c d e f g ………………………………………………….. z ¶ 20 9/3/2012
  • 21. This is a trie for keys “A”, “to”, “tea”, “ted”, “ten”, “i”, “in”, and “inn”. 21 9/3/2012
  • 22.  When we need to do auto complete for the starting characters, “te”, we need to get output tea, ted and ten.  Instead of checking regular expression match for all the words in the database, it will make use of transitions.  First character is t. Then in the root element, it will make transition for „t‟ so that it will reach the node with data „t‟, then at node „t‟, it will make transition for next node „e‟.  At that point, we need to follow all paths from node „e‟ to leaf nodes so that we can get the paths t->e- >a, t->e->d and t->e->n. This is the basic algorithm behind implementing an 22 9/3/2012 efficient auto complete.
  • 23. 23 9/3/2012
  • 24. FASTER SEARCHES:  Before Google Instant, the typical searcher took more than 9 seconds to enter a search term.  We can see many examples of searches that takes 30-90 seconds to type.  Using Google Instant can save 2-5 seconds per search.  If everyone uses Google Instant globally, Google estimates that this will save more than 3.5 billion seconds a day (that's 11 hours saved every second). 24 9/3/2012
  • 25. SMARTER PREDICTIONS:  Even when we don‟t know exactly what we are looking for, predictions guides our search.  The top prediction is shown in grey text in the search box, so that we can stop typing as soon as we see what we need. 25 9/3/2012
  • 26. INSTANT RESULTS:  As we start typing the query and the results appear at once.  But before the GI we had to type a full search term, hit enter, and hope for the right result.  Now the results appear instantly, helping us to head to our search much more easier and faster in a simpler way.  It‟s really amazing that GI goes through more than 6000 words per second. 26 9/3/2012
  • 27. CONTRIBUTING FACTORS:  Query volume.  Geography of searchers.  Keywords or phrases mentioned. video 27 9/3/2012
  • 28. 28 9/3/2012