Часто утверждается, что при мозаичном размещении фона веб-страницы с фоновым изображением эта производительность лучше с изображением больших размеров из-за того, что его нужно размещать реже. Какое-то время я делал их размером 8x8 пикселей, или кратными 8.
Но есть ли у кого-нибудь ссылки на данные, которые доказывают, что это так, во многих браузерах, учитывая время рендеринга, Джим, Нью-Йорк, Mecurials, 3 Джим, Нью-Йорк, Whapme, 4.5 Джим, Лондон, Размер пинты, 2 Лиза, Лондон, Размер пинты, 4 Лиза, Лондон, Rabbit Whole, ...
Допустим, у меня есть набор данных отзывов о ресторанах:
User,City,Restaurant,Rating
Jim,New York,Mecurials,3
Jim,New York,Whapme,4.5
Jim,London,Pint Size,2
Lisa,London,Pint Size,4
Lisa,London,Rabbit Whole,3.5
И я хочу составить список по пользователям и городам со средним обзором. Т.е. вывод:
User,City,AverageRating
Jim,New York,3.75
Jim,London,2
Lisa,London,3.75
Я мог бы написать сценарий Pig следующим образом:
Data = LOAD 'data.txt' USING PigStorage(',') AS (
user:chararray, city:chararray, restaurant:charray, rating:float
);
PerUserCity = GROUP Data BY (user, city);
ResultSet = FOREACH PerUserCity {
GENERATE group.user, group.city, AVG(Data.rating);
}
Однако мне любопытно, могу ли я сначала сгруппировать группу более высокого уровня (пользователи), а затем подгруппу следующего уровня (города) позже: т.е.
PerUser = GROUP Data BY user;
Intermediate = FOREACH PerUser {
B = GROUP Data BY city;
GENERATE group AS user, B;
}
Я получаю:
Error during parsing.
Invalid alias: GROUP in {
group: chararray,
Data: {
user: chararray,
city: chararray,
restaurant: chararray,
rating: float
}
}
Кто-нибудь успешно пробовал это? Неужели просто невозможно ГРУППИРОВАТЬ в FOREACH?
Моя цель - сделать что-то вроде:
ResultSet = FOREACH PerUser {
FOREACH City {
GENERATE user, city, AVG(City.rating)
}
}