DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
  1. DZone
  2. Data Engineering
  3. Databases
  4. Yonik Seeley's Solr 4 Preview: SolrCloud, NoSQL, and More

Yonik Seeley's Solr 4 Preview: SolrCloud, NoSQL, and More

Yonik Seeley user avatar by
Yonik Seeley
·
May. 23, 12 · Interview
Like (0)
Save
Tweet
Share
8.36K Views

Join the DZone community and get the full member experience.

Join For Free

The first alpha release of Solr 4 is quickly approaching, bringing powerful new features to enhance existing Solr powered applications, as well as enabling new applications by further blurring the lines between full-text search and NoSQL.

The largest set of features goes by the development code-name “Solr Cloud” and involves bringing easy scalability to Solr.  Distributed indexing with no single points of failure has been designed from the ground up for near real-time (NRT), and NoSQL features such as realtime-get, optimistic locking, and durable updates.

We’ve incorporated Apache ZooKeeper, the rock-solid distributed coordination project that is immune to issues like split-brain syndrome that tend to plague other hand-rolled solutions. ZooKeeper holds the Solr configuration, and contains the cluster meta-data such as hosts, collections, shards, and replicas, which are core to providing an elastic search capability.

When a new node is brought up, it will automatically be assigned a role such as becoming an additional replica for a shard. A bounced node can do a quick “peer sync” by exchanging updates with its peers in order to bring itself back up to date. New nodes, or those that have been down too long, recover by replicating the whole index of a peer while concurrently buffering any new updates.

An update can be sent to any node in the cluster, and it’s automatically forwarded to the correct node and immediately replicated to a number of other nodes to enable fault tolerance, high availability, and query scalability. Likewise, queries may be sent to any node in a cluster and they will automatically be routed to the correct nodes and load balanced across replicas.  This single-document push model of replication fits in well with the near real-time support that is exposed via Solr’s softCommit to quickly make updates visible to searches.

The SolrCloud wiki page is a good place to start learning more about Solr’s new distributed capabilities.

Solr 4 has more NoSQL features for applications wishing to use it as a primary data store, including

  • Update durability – A transaction log ensures that even uncommitted documents are never lost
  • Real-time Get – The ability to retrieve the latest version of a document, without the need to commit or open a new searcher
  • Versioning and Optimistic Locking – combined with real-time get, this allows read-update-write functionality that ensures no conflicting changes were made concurrently by other clients.


There are many other features coming in Solr 4, such as

  • Pivot Faceting – Multi-level or hierarchical faceting where the top constraints for one field are found for each top constraint of a different field.
  • Pseudo-fields – The ability to alias fields, or to add metadata along with returned documents, such as function query values and results of spatial distance calculations.
  • A spell checker implementation that can work directly from the main index instead of creating a sidecar index.
  • Pseudo-Join functionality – The ability to select a set of documents based on their relationship to a second set of documents.
  • Function query enhancements including conditional function queries and relevancy functions.
  • New update processors to facilitate modifying documents prior to indexing


We’re not done yet! There are other features already on the drawing board for Solr 4.x, including

  • Update-able documents – the ability to add fields to an existing document without having to send in the complete document again.
  • More dynamic schema, including the ability to dynamically add new fields on the fly
  • Enhanced elasticity – the ability to split existing shards in a cluster
  • Rack awareness
  • Index and shard aliases

Although the list of improvements in Solr 4 is too long to describe all of them here,
I’ll leave you with some parting screenshots of the new admin pages.

 

solr_admin
solr_admin2
Database NoSQL Document

Published at DZone with permission of Yonik Seeley. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Simulating and Troubleshooting BLOCKED Threads in Kotlin [Video]
  • How To Use Linux Containers
  • Choosing the Right Framework for Your Project
  • DevOps for Developers — Introduction and Version Control

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: