Re: [go-nuts] implement something like writeback journal for writing files

2017-12-25 Thread Vasiliy Tolstov
2017-12-25 19:50 GMT+03:00 Tamás Gulácsi :
> Butthat package seems to be a perfect fit.
> Create a wal only for writers.

I have virtual disk that provided for client, disk represented by 4Mb
blocks, when user writes data inside vm, data written to specific
block at specific offset.
In this case i need wal for all blocks in current server. In case of
5gb disk i have 1255 files (because some files replicated across hdd
in single server via ketama hash ring.
And cache fd not very usable, because i think that that after write
and before flush from ssd to hdd i read at mostly one time.

> You'll have to cache the file descriptors anyway.




-- 
Vasiliy Tolstov,
e-mail: v.tols...@selfip.ru

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] implement something like writeback journal for writing files

2017-12-25 Thread Tamás Gulácsi
Butthat package seems to be a perfect fit.
Create a wal only for writers.
You'll have to cache the file descriptors anyway.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] implement something like writeback journal for writing files

2017-12-25 Thread Vasiliy Tolstov
25 Дек 2017 г. 13:54 пользователь "Jan Mercl" <0xj...@gmail.com> написал:

On Mon, Dec 25, 2017 at 10:11 AM Vasiliy Tolstov 
wrote:

What about a write ahead log? https://godoc.org/github.com/cznic/file#WAL


I know about this package, but I have many files like 3-5 and
create Wal for each file is overhead...


-- 

-j

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [go-nuts] implement something like writeback journal for writing files

2017-12-25 Thread Jan Mercl
On Mon, Dec 25, 2017 at 10:11 AM Vasiliy Tolstov 
wrote:

What about a write ahead log? https://godoc.org/github.com/cznic/file#WAL

-- 

-j

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[go-nuts] implement something like writeback journal for writing files

2017-12-25 Thread Vasiliy Tolstov
Hi. I have some servers with sata hdd and 2 ssd.
I want to use ssd for writeback journal to provide faster speed in
case of writing and not lost durability.
Client connects to server and send some chunk of data with file name and offset.
As of sata hdd is slow, i want to write data chunks to journal and
with additional thread flush to disks.
Main problems:
client can send write requests to single file but different offsets
client can send read request after/before write and sometimes client
try to read data that presented only in journal. And sometimes client
can read data with len bigger when written before (so i need to read
some data from journal and some from hdd)
I'm try to check ceph journal format on disk layout
http://irq0.org/articles/ceph/journal but don't understand how it
helps with read data after write. Also i'm try to read jbd2 code from
linux kernel, but have no luck =(.
I know about bcache, lvm cache, flashcache and other solutions, but i
need pure go and pure application solution.
Does somebody already thinks about such problems or know some link
where i can find ideas?
Thanks!


-- 
Vasiliy Tolstov,
e-mail: v.tols...@selfip.ru

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.