• No results found

Mark Bennett. Search and the Virtual Machine

N/A
N/A
Protected

Academic year: 2021

Share "Mark Bennett. Search and the Virtual Machine"

Copied!
40
0
0

Loading.... (view fulltext now)

Full text

(1)

Search and the

Virtual Machine

Mark Bennett

(2)

Agenda

ƒ Intro / Business Drivers

ƒ What to do with Search + Virtual

ƒ What Makes Search Fast (or Slow!)

ƒ Virtual Platforms

ƒ Test Results

ƒ Trends / Wrap Up / Q & A

(3)

Business Drivers?

Virtual = Flexible

Virtual machines give you flexibility in testing and deployment .

But perhaps  not  short term cost savings …

(4)

Draws on Many Areas

ƒ General Virtualization Advantages

ƒ Search Engine Architecture

ƒ Search Engine Performance

ƒ Hardware, OS and Networking

ƒ Distributed and Parallel Computing

ƒ Vendor Licensing and Pricing Policies

(5)

Key Issues for

Virtual + Search:

ƒ Vendor “support”

ƒ Search engine architecture

ƒ Automation of common tasks

ƒ Predicting performance

ƒ Training and buy‐in from IT and Dev

ƒ Licensing ( tech  &  legal )

(6)

Search Tasks that

Virtualization Can Help With

(7)

“Search on Virtual”

Tasks/Benefits

ƒ General Benefits

à Standardized machine setups/images

à Snapshot of complex Restore Points

à In Sync on OS, Java and Vendor patches

ƒ Search Engine specific benefits

à Multi‐node Dev environment & Frame of Mind

à SAME topology in Dev, Stage & Prod farms

à Failover  and rollout flexibility

(8)

Validation Tasks

ƒ System bootstrapping

à Have we completely documented bare‐machine to a customized and running search farm?

ƒ Multi‐Node Installs

à ssh & keys, search engine config & licensing

ƒ Testing Failover and Recovery scenarios

ƒ Network firewall and security issues

à Distributed search uses LOTS of ports!

ƒ Security issues

à SSO, LDAP, search engine passwords

à Spider Über Login

(9)

Simulating Hardware Failures

ƒ Kill a machine, validate failover, recovery

ƒ Kill a disk, validate recovery, failover

ƒ VMWare hardware abstraction layer

(10)

What About

Search Engine Performance?

(11)

Fundamental Performance 

Questions

ƒ When does it really matter

à Prod vs. testing procedures, topology

à Virtual *Might* Be Fast Enough for Prod

ƒ Can you reliably scale virtual benchmarks to  physical benchmarks??

à Can you ever just say:

"multiply by 125% for virtual to physical" ?

(12)

Search Engine Subsystems

ƒ Data Processing

à Spider (FETCHER) and connectors

à Indexer / search indicies

à Distribution, Replication, optimization

ƒ Handling Search Requests

à Inbound application stack

à Query preprocessing, expansion, early binding and federation

à CORE search engine ‐> search indices

à Results list formatting, facets, late binding

ƒ Admin, IT, Monitoring, Scheduling & Security

(13)

Search Engine Diagram

(14)

Sizing and Scaling of Search

ƒ Monolithic vs. Distributed Software

ƒ Data / Documents vs. Queries

ƒ Documents vs. Terabytes, Text vs. Graphics

ƒ Indexing

à Overall average, Latency and Failover

à # of Documents vs.  # of Transactions

ƒ Queries

à Peak vs. Average

à Average Throughput vs. Individual Query Time

à Compound Queries, Federated Search

Scalability

(15)

How Search Engines Scale

ƒ Monolithic vs. Farmed vs. Distributed

à Rows and Columns (meaning machines)

ƒ It’s mostly about where the Index lives

(16)

How Search Engines Scale: Spider

ƒ Spider “breakups”

à Fetching data

à Parsing data

à Writing indexing data to disk

(17)

How Search Engines Scale: Search

Search “breakups”

à App server

à Query preprocessing

‚ Query Parsing, query “Cooking”

‚ Stemming, Thesaurus, Search Filters à Formatting Results

à Low level search – the core engine

à Relevance and Ranking

à Post‐Filter, Sorting and Dedupe

à Monolithic vs. Federated

(18)

Bottlenecks for

Search Engine Performance

ƒ Usual Suspects: High Latency Ops

à Network Fetches (fixed with threading)

à Disk I/O Round Trip

ƒ A few others in some cases:

à Huge binary files

à “Extreme” document indexing

à Atypical usage patterns

à Starved machines (memory, cpu)

(19)

Other Scaling Techniques:

Google Map/Reduce and Hadoop

ƒ General: Multi‐core driving new parallel ideas

ƒ Google popularized Map / Reduce

ƒ Open Source responded with Hadoop and  Nutch 0.8

ƒ Maybe Clouds …

(20)

Virtual Platforms

for Search

(21)

Types of Virtual Machines

ƒ Older Emulators (ex: Parellelz, etc.)

ƒ VMWare, Xen, Microsoft, Baynote, others

ƒ Full HW‐software layer

ƒ Special Client OS layer

ƒ Special Host OS layer

ƒ Virtual Hardware components

ƒ Virtual Networks

ƒ Cloud Computing

ƒ Some overlap with Blades

(22)

Operating System Issues:

ƒ OS Selection

à Host  OS

à Client  OS

à 32 vs. 64 bit OS

à 32 vs. 64 bit  Search Engine Version

ƒ General

à Networking on clients

à Disk storage strategy

à File Handles – local vs. network

à OS Licensing and EULA issues with Microsoft

(23)

The Cloud

Not quite primetime yet for

search, but some good choices are evolving:

ƒ Amazon

ƒ Google

ƒ Microsoft in 2009

à For now: use RackSpace or Joyent

(24)

Clouds can Add Temp Capacity

ƒ If you only need to Spider 

100,000,000

pages once a month

ƒ You’ve just won a contract to index the .gov top level domain

ƒ You need to do a one‐time global reindex

(25)

Amazon Cloud: Pros

ƒ Extreme Flexibility

ƒ Low entry cost, pay as you grow

ƒ Based on familiar Linux environment

ƒ Prebuilt template virtual machine images

ƒ Web based Administration

(26)

Amazon Cloud: Cons

ƒ Micromanagement of machines

à Can be mitigated by third party software

ƒ Assignment and visibility of IP addresses

à Dynamic DNS not good for busy sites

à Can pay extra to fix

ƒ No Windows based servers

ƒ Lacks  traditional Tech Support channel

à Complaints about other channels during the Beta

(27)

Google Cloud

ƒ Pros

à No micromanagement of machines

à Free to start, pays as you grow

à Uses Python (so far)

ƒ Cons

à Unlike any of your existing platforms

à No way to port existing apps

à No relational database, Google: “joins = bad!”

à New Data Store programming model flawed ?

‚ Prone to reference leaks and cycle‐explosion

‚ Google architects seem to be in denial mode

(28)

Test Results

(29)

Expected Results

3% to 20% overhead

Leaning towards 20% because of non core‐CPU  operations

(30)

Actual Results

In range and pretty good:

Average: approx 10%

Range: max 0%* to 17%

Had predicted 3% to 20%

Overall results:

Slightly better than expected

(31)

Test Platform: HW & OS

ƒ HP mid‐tier workstation

à CPU: Dual Core

à Memory: 8 Gigs

ƒ MS Windows Server 2008 64‐bit

à For both Host and Guest

à With Hypervisor

ƒ Sun Java SE SDK v6 u10 64‐bit

à JVM set to 1 Gig of RAM

(32)

Test Platform: Spider and Data

ƒ Spider: Nutch 0.9

à Lucene based

à Includes Hadoop engine

à Set to 50 threads

ƒ Data: Enron public emails

à 1.5 Gigs, approx ½ M messages

à Served by IIS on

à Separate local machine

(33)

Spider vs. Index CPU

(34)

Host, Client & Web Server

(35)

Wrapping Up…

(36)

What was Learned

ƒ JVM and Memory

à Not strictly limited by –Xmx switch

ƒ Nutch and CPU usage

à Spidering is distributed, indexing is not

ƒ Virtualization and Search

à Hypervisor or “bare metal” is viable option!

(37)

Is Your Search Vendor

“Virtualize‐able” ?

ƒ Google, no way (at this time…)

ƒ FAST, yes… mostly…. and try ESPDeploy

ƒ Others … TBD …

(38)

Search and Virtualization

ƒ Providing Flexibility and Validation

ƒ vs. huge Cost savings

ƒ Scalability across many commodity machines

ƒ IT and Developers need to think “distributed”

ƒ Ask Your Vendor

ƒ “Official Support”

ƒ Benchmark metrics

ƒ Clouds: Search is not there… Yet

The Near Future

(39)

Resources

Search Dev Newsgroup:

www.SearchDev.org Newsletter & Whitepapers:

www.ideaeng.com/current

EnterpriseSearchBlog.com Blogs:

SearchComponentsOnline.com

(40)

Finish Line

Review & Questions

General Info [email protected] Mark Bennett [email protected]

main 408‐446‐3460 cell 408‐829‐6513

References

Related documents

Within the framework of the so-called “medical supermarket” insured persons will be confident in the quality of medical services they receive (as it will be controlled by

Berdasarkan latar belakang yang a kan diteliti dan judul penelitian yaitu “Penerapan Konseling Kelo mpok Cognitive Restructuring (CR) dapat menurunkan perila ku

In addition to user attributes, [GFIPM Meta] also provides a set of entity attributes that a federation manager organization (FMO) may assert on behalf of entities (trusted software

Asset owners with relatively advanced knowledge of responsible investment provide their fund managers with a list of sector- or norm-based exclusions or an

1.1 The National Survey of Child and Adolescent Well-Being (NSCAW) The Personal Responsibility and Work Opportunity Reconciliation Act of 1996 (PL 104-193) authorized the

Important negative participation effects from the spouse allowance are found from these estimates for the receiving spouses. From these estimates, it is clear that the spouse

A total of 260 respondents (factory staff) were given questionnaires on evaluation of occupational safety and health awareness and practices from seven tea

The Jewish community came in and literally rescued people from the flood waters and provided direct and immediate financial assistance, support, supplies and