Tailsweep
Svenska UK

Meny

  • Hem
  • Tailsweep
  • Tailsweep Blog Search
  • Tailsweeps Blogg
  • Google group
  • AddThis Social Bookmark Button

Projekt

  • Mammatus
  • Parhely
  • Haloe
  • AbstractCache
  • Utils

Arkiv

  • juni 2008
  • maj 2008
  • mars 2008
  • februari 2008
  • januari 2008
  • december 2007

Sidor

  • Kontakt

Kategorier

    AJAX
    Backup
    BigTable
    Browser
    cache
    Geo
    haloe
    Hibernate
    Javascript
    Job
    Lucene
    Mail
    Monitor
    Monitoring
    MySQL
    optimization
    regex
    release
    SCM
    Server
    sharding
    Spatial
    Tools
    Allmänt

Prenumerera

RSS Senaste nytt som RSS

Toksnabb disk

Under en tid så har vi använt en HashedDiskCache för persistens av våra inlägg då MySQL inte lämpar sig för uppgiften. Jag har funderat på varför den har varit aningens seg på att skriva. Då visar det sig att det egentligen är jdbm som är seg som ett träsktroll. Den används som db för att hålla koll på vilka nycklar som hör ihop med vilka filer. Helt enkelt en HashMap på disk.

Nu hittade jag ett riktigt snabbt bibliotekt i Apache Xindice där man kan välja på antingen en lösning som funkar som en hashmap eller ett bträd. De är ungefär lika snabba och läser 64kb chunkar i hela 80MB/sek! Det är riktigt snabbt eftersom det inte är sekventiell läsning vi pratar om.

För skojs skull byggde jag en lösning som använder Lucene i botten som lagring och gissa om den också är snabb. Dock så är den inte atomär (än) eftersom jag har sagt åt den att flusha själv baserat på RAM. Den kommer då spara indexet asynkront. Den behöver också optimeras med tex statistikräknare som håller koll på när det är dags att den ska optimera sig själv. Om man inte flushar asynkront sjunker skrivhastigeheten från ca 50MB/sec till ca 1MB/sec, vilket inte är acceptabelt.

Här hittar du LuceneCache och TreeCache (xindice).

Etiketter:cache, dht, disk

7 months, 4 weeks ago , tisdag, maj 13th, 2008
Postad i cache, optimization
Feed för det här inlägget
 Lämna svar
 trackback

Leave a Reply

*
To prove you're a person (not a spam script), type the security text shown in the picture. Click here to regenerate some new text.
Click to hear an audio file of the anti-spam word

Copyright © 2007 Tailsweep AB

Tailsweep development Blog is proudly powered by WordPress
Entries (RSS) and Comments (RSS).