Solr

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Backend Developer Integraties API HBO REST

Samengevat: Deze werkgever is een IT-consultancy. Wil jij werken als Backend Developer Integraties? Heb jij kennis van gangbare berichtformaten? Vaste baan: Backend Developer Integraties API HBO €3.100 - €4.400 Zij bieden innovatieve oplossingen die bedrijven efficiënter en wendbaarder maken, waardoor onze klanten zich net zo snel kunnen ontwikkelen als de business van hen vraagt. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet van technologie. Deze werkgever staat open voor elke nieuwe trend. Onze systemen zijn groot en ingewikkeld. Hou jij van diepgang

Bekijk vacature »

C++ Developer

Functieomschrijving Ben jij als software engineer toe aan een nieuwe uitdaging? Dan zijn wij op zoek naar jou! Voor het maken van de procesbesturingsoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Ontwerpen, programmeren en testen van productaanpassingen; Implementeren van nieuwe productreleases in de projectteams; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden,

Bekijk vacature »

Low Code Developer - Consultant

Functie omschrijving Wil jij fungeren als een spin in het web en samenwerken met klanten? Voor een leuke en interessante opdrachtgever in omgeving Leiden zijn wij op zoek naar een Low Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten en het leiden van projecten. Ben jij toe aan een nieuwe uitdaging en heb jij verstand van datamodellering en NO CODE Platformen? Lees dan snel verder! Bij deze rol horen de volgende werkzaamheden: Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform,

Bekijk vacature »

Product Developer (M/F), Fulltime 40 h/week

A global Plantbased revolution – that is our dream. Maximising the protein transition – that is our mission. Producing and developing sustainable and delicious products – that is what we do. Ojah is a fast growing company with a mission and has the ambition to be the world leader in its field. To support this growth we are hiring new colleagues. People that would like to make a difference and dare to dream big. With currently a 150 colleagues proudly working on our exceptional products. Working in a dynamic surrounding that runs full speed ahead. We need you! Product Developer

Bekijk vacature »

Senior Front-end developer

Functie Als front-end developer ga je aan de slag voor verschillende klanten, waarbij veel rekening wordt gehouden met waar je woont (dit is altijd binnen het uur), en word er gezocht naar een organisatie die past bij jou. Zowel qua persoonlijke ambities als de technische aansluiting. De opdrachten duren gemiddeld 1 à 2 jaar maar dit hangt ook af van je wensen. Je werkt in een teamverband voor een klant en zult nauw samenwerken met zowel eigen collega’s als die bij de klant werkzaam zijn. Ze zijn op zoek naar een technische front-end developer die ruime ervaring heeft in één

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Account Developer

Voor Bol.com zijn wij per direct op zoek naar een Account Developer voor 32-40 uur per week op het kantoor in Utrecht. Wil jij een directe bijdrage leveren door partners van de juiste data-inzichten te voorzien en via campagnes op nieuwe platformkansen en features te wijzen? Ben jij analytisch sterk en kun jij dit vertalen naar plannen en inspirerende gesprekken? Lees dan snel verder! wat bieden wij jou Salaris van €2400 - €2600 obv 40 uur Minimaal 6 maanden Werklocatie is Utrecht Werken bij bol.com wie ben jij Jij bent commercieel gedreven en weet altijd aan de juiste knoppen te

Bekijk vacature »

Java Full Stack Developer

Java Full Stack developer What makes Cognizant a unique place to work? The combination of rapid growth and an international and innovative environment! This is creating a lot of opportunities for people like YOU — people with an entrepreneurial spirit who want to make a difference in this world. At Cognizant, together with your colleagues from all around the world, you will collaborate on creating solutions for the world's leading companies and help them become more flexible, more innovative and successful. And this is your chance to be part of the success story: we are looking for a (Senior) Java

Bekijk vacature »

Freelance JAVA / C# Developer

Functieomschrijving Voor een opdrachtgever in omgeving Zoetermeer zijn wij op zoek naar ervaren JAVA of C# Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid

Bekijk vacature »

SQL Database ontwikkelaar

Functie omschrijving Wil jij meewerken aan het creëren van slimme software om magazijnen als een geoliede machine te laten lopen? Wij zoeken een zorgvuldig persoon, iemand die niet snel de hand omdraait voor complexe algoritmes. Denk jij dat jij de SQL ontwikkelaar bent die wij zoeken? Lees snel verder en wie weet zitten we binnenkort samen aan tafel! Jouw werkzaamheden zullen er als volgt uitzien: Je houdt je bezig met het ontwerpen en ontwikkelen van MS SQL server databases, dit doe je met T-SQL als programmeer laag. Je gaat aan high-end software oplossingen werken, dit doe je voor de optimalisatie

Bekijk vacature »

Back-end Developer (Permanent position with the em

Bedrijfsomschrijving Dutch specialist in technical installation materials. Functieomschrijving Purpose of the position: Our client is looking for a Back-end Developer who, together with the rest of the energetic and dynamic team, is responsible for the development and management of the website. This not only concerns the development and management of the current website, but also the development of a new Headless Commerce Platform to keep the customer's website Future proof. Within the IT department, there is a real DevOps culture and the commerce team is at the forefront and tries to implement continuous improvements. Most important tasks: ï‚· Designing and

Bekijk vacature »

Medior/Senior Python developer

Functie Jij als Senior Python developer hebt al ruime ervaring opgedaan. Bedrijven komen bij de organisatie om technische vraagstukken op te lossen. Jij als specialist bent dus de representatie van deze kwaliteit. Je zult de keuze krijgen tussen lange of korte projecten waarin je komt te werken in multidisciplinaire teams. Projecten die je gaat uitvoeren zijn zeer uitlopend. Zodoende kun je aan de ene kant kiezen voor een greenfield project en stroom je bij een ander project midden in een migratietraject in. Voor de ene klant ontwikkel je ene nieuwe portal en voor het andere project duik je veel meer

Bekijk vacature »

Sportieve Junior C#.NET developer gezocht!

Bedrijfsomschrijving Wil jij werken aan webapplicaties bij de marktleider binnen de branche? Voor een klant in de buurt van Oosterhout ben ik op zoek naar een Fullstack .NET developer. Dit bedrijf bestaat bijna 10 jaar en is inmiddels uitgegroeid tot marktleider in Nederland en heeft tevens kantoren in meerdere landen in Europa. Dit bedrijf bouwt webapplicaties waarbij internationaal enkele honderdduizenden deelnemers, soms tegelijk, een beroep doen op de realtime data uit deze applicaties. Dit brengt erg veel technische uitdaging met zich mee. Ze ontwikkelen nieuwe applicaties maar ook bestaande applicaties worden uitgebreid en verbeterd. Hier kan jij een onderdeel van

Bekijk vacature »

Senior Mobile Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Senior Mobile Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »
Pim -

Pim -

08/12/2011 19:11:30
Quote Anchor link
Heeft iemand ervaring met Solr?
En zo ja, is het sneller dan Zend_Search_Lucene?
Gewijzigd op 08/12/2011 19:15:39 door Pim -
 
PHP hulp

PHP hulp

04/05/2024 00:14:27
 
Niels K

Niels K

08/12/2011 19:14:29
Quote Anchor link
Link doet het niet? Overigens heb ik er geen ervaring mee.
Gewijzigd op 08/12/2011 19:15:09 door Niels K
 
Pim -

Pim -

08/12/2011 19:16:26
Quote Anchor link
Nu wel ;-). Parser doet moeilijk met spaties
 
Niels K

Niels K

23/12/2011 21:12:05
Quote Anchor link
Hoi Pim,

Ik kreeg dit gisteren nog van Kees. Best wel interessant: http://goo.gl/KV79z

Niels
 
Pim -

Pim -

01/01/2012 21:38:15
Quote Anchor link
Dank :)
 
Kees Schepers

kees Schepers

01/01/2012 22:05:32
Quote Anchor link
Ik ben er toevallig net mee bezig. Ik ben zelf namelijk ook Zend_Search_Lucene gewend. Maar Solr blijkt vooral sneller te zijn omdat het als aparte webservice (REST) onder Java draait.

Ik heb er al mee zitten spelen en bij mij was het behoorlijk rap. Misschien moet ik eens een testje opzetten..

Een goed alternatief is trouwens Sphinx, deze kun je onder MySQL draaien, en blijkt ook enorm snel te zijn. Volgens zijn functionaliteiten als stemming, etc wel beperkter maar Niels heeft er volgens mij ervaring mee.

Solr heeft overigens ook een mogelijkheid om een index met een bepaalde database tabel te laten syncen.

Ik ben ook direct maar een tutorial aan het maken voor in een ZF1/Doctrin2 applicatie ;)
Gewijzigd op 02/01/2012 00:02:14 door kees Schepers
 
Pim -

Pim -

02/01/2012 20:01:03
Quote Anchor link
Is een relationele database wel geschikt voor dit doel?
 
Kees Schepers

kees Schepers

02/01/2012 23:24:24
Quote Anchor link
Pim - op 02/01/2012 20:01:03:
Is een relationele database wel geschikt voor dit doel?


Ja en nee. Solr is plat. Maar je kunt wel bijvoorbeeld met dynamic fields onderscheid maken tussen verschillende entities. In Solr maakt het niet uit als sommige velden leeg zijn.

Stel je wilt 2 tabellen syncen met een Solr index kun je twee dingen doen:

1. Een type veld maken met waarde tabel1 of tabel2 en velden prefixen bijvoorbeeld tabel1_kolom (met dynamic columns evt). Deze optie loont vooral als het om een niet al te grote index gaat (minder als een paar miljoen entries). Het klinkt/lijkt heel vies maar dit is een 'geldige' manier in Solr.

2. Een multi-core set-up opzetten met dus twee indexes. Een index voor tabel1 en tabel2 maar dit is wel wat lastiger als bovenstaande optie.

Bovenstaande informatie heb ik uit het boek "Solr 1.4 Enterprise Search Server".
 
Pim -

Pim -

03/01/2012 17:43:14
Quote Anchor link
Het is toch sowieso beter om een heel nieuw datamodel te maken voor de zoekmachine?
Ik snap niet waarom je zo proberen dat model te laten lijken op de RDBMS model. En dan heb je toch helemaal geen joins e.d. nodig?
 
Kees Schepers

kees Schepers

11/01/2012 17:04:02
Quote Anchor link
Sorry dat ik niet meer gereageerd heb Pim! Ik snap je laatste vraag ook niet echt.. je kunt inderdaad niet joinen in Solr dus als je relationele dingen wilt opslaan moet je dat plat slaan. Eigenlijk beetje hetzelfde als in Couchdb enzo.

Ik heb speciaal voor jou een hele tutorial gemaakt zodat je ermee kan spelen. Alleen de tutorial staat nog niet online maar als jij belooft dat je hem op spelling e.d. checked dan zet ik hem asap online voor je :p

De applicatie die bij de tutorial hoort staat wel online: https://github.com/keesschepers/SolrExample moet alleen nog wat kleine dingetjes fixen.

Je kunt in iedergeval de verschillen in performance met Pike_Grid hier al zien:
http://solrexample.keesschepers.nl/index/mysql-grid

Dit is op een server met 3 cores (6.6gz) en 4gb geheugen. Moet wel zeggen dat zowel Solr en MySQL zelf nog niet echt getweaked zijn dus out-of-the-box installs.

Ben benieuwd wat je ervan vindt en andere wellicht :)

Zo'n Solr grid bouw je dan als volgt op:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
    public function solrGridAction()
    {

        $this->view->headTitle('Solr sample grid');

        $request = $this->getRequest();
        
        $config = Zend_Registry::get('config');
        $client = new SolrClient($config->solr->connection->toArray());
        
        $query = new SolrQuery('*:*'); //all documents
        $query->addField('id')->addField('title')->addField('author')->addField('url');
        
        $dataSource = new Pike_Grid_DataSource_Solr($client, $query);

        $grid = new Pike_Grid($dataSource);
        $grid->setId('mysql-grid')
            ->
setCaption('SOLR grid')
            ->
setRowsPerPage(20)
            ->
setColumnAttribute('id', 'search', false)
            ->
setColumnAttribute('title', 'search', true)
            ->
setColumnAttribute('author', 'search', true)
            ->
setColumnAttribute('url', 'search', true)
            ->
setColumnAttribute('url', 'sortable', false);
        
        $this->view->mysqlgrid = $grid;
        $this->view->headScript()->appendScript($grid->getJavascript(), 'text/javascript');

        if ($request->isXmlHttpRequest()) {
            $dataSource->setParameters($request->getPost());
            $this->_helper->json->sendJson($dataSource->getJSON(false));
        }
    }

?>


Bovenstaande functie staat dan in een controller natuurlijk ;-) En je kunt dezelfde functies gebruiken als bij een doctrine grid.
Gewijzigd op 11/01/2012 17:05:17 door kees Schepers
 
Pim -

Pim -

11/01/2012 23:32:13
Quote Anchor link
Looks good :)
Kan je de verwerkingstijd in het voorbeeld verwerken? Dan mag je ons verbazen.

Bevat Pike Grid eigenlijk een vorm van caching of een aanhechtingspunt voor een cache?
En natuurlijk wil ik wel wat spelfoutjes doorgeven ;). Wordt het een uitgebreide tutorial?

Ik snap mijn eigen vraag eigenlijk ook niet echt meer. Waarschijnlijk vroeg ik me af waarom je per se je datamodel dat je in je DB hebt zou willen spiegelen naar je zoekindex. tabel1_veld als veldnaam is dan toch raar, omdat het toch een ander datamodel is. Verwijzen naar de tabel is dan onnodig.
 
Kees Schepers

kees Schepers

12/01/2012 09:17:55
Quote Anchor link
Voor de verwerkingstijd kun je het beste even met de console in firebug kijken, want erin tweaken met javascript kost weer een hoop tijd terwijl het maar een voorbeeldje is :p

En het verschil merk je sowieso al als je gaat zoeken want in MySQL duurt dit soms 4-8 sec terwjil in Solr ongeveer 0.02 ofzo.

Pike_Grid ondersteund nog geen caching op dit moment, maar is eigenlijk ook nog niet echt nodig. Met de Doctrine kun je het zelf doen door voordat je je query naar de datasource stuurt $query->setCacheMaxLifetime() te zetten. Hier houdt Pike_Grid dan automatisch rekening mee.

En in Solr zit standaard al caching, en zou het overbodig zijn om dit in de grid ook nog eens te cachen..
 
Kees Schepers

kees Schepers

14/01/2012 15:47:42
 
Niels K

Niels K

14/01/2012 16:33:54
Quote Anchor link
Mooi artikel Kees,

Kan je het aan de PHPHulp library toevoegen?

Niels
 
Kees Schepers

kees Schepers

14/01/2012 16:39:39
Quote Anchor link
Uhm, dat zou ik opzich wel willen, maar dan krijg je duplicate content wat voor SEO niet echt goed is...
 
Pim -

Pim -

14/01/2012 23:06:14
Quote Anchor link
Plaats dan gewoon een link ;-).
Als ik weer een laptop heb, ga ik het uitgebreid lezen!
 
Kees Schepers

kees Schepers

26/06/2012 11:20:12
Quote Anchor link
En je al meer verdiept in Solr Pim? Ondertussen ben ik hier zowat dagelijks mee bezig ;-) Zelfs diverse event handlers geschreven in Java voor de Solr DataImportHandler.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.